﻿@charset "UTF-8";

@font-face {
    font-family: "NotoSansCJKjp-regular";
    src: url("../font/NotoSansCJKjp-Light.otf") format("opentype"),url("../fonts/NotoSansCJKjp-Light.woff") format("woff");
}

@font-face {
    font-family: "NotoSansCJKjp-bold";
    src: url("../font/NotoSansCJKjp-Bold.otf") format("opentype"),url("../fonts/NotoSansCJKjp-Bold.woff") format("woff");
}

.firstView .ttl,
.flow .formBtn a,
.intro .formBtn a,
.works .formBtn a,
body.is_sp .firstView .ttl {
    overflow: hidden;
}

.firstView .ttl:before,
.flow .formBtn a:before,
.intro .formBtn a:before,
.works .formBtn a:before,
body.is_sp .firstView .ttl:before {
    display: block;
    width: 0;
    height: 100%;
    content: "";
}

.footer .copyright a,
.intro .sample_ttl,
.works .sample_link,
.works .sample_pic button {
    -moz-transition: opacity 0.3s ease 0s;
    -o-transition: opacity 0.3s ease 0s;
    -webkit-transition: opacity 0.3s ease;
    -webkit-transition-delay: 0s;
    transition: opacity 0.3s ease 0s;
}

.footer .copyright a:hover,
.intro .sample_ttl:hover,
.works .sample_link:hover,
.works .sample_pic button:hover {
    opacity: 0.8;
}

body.is_sp .firstView .fb-share-button,
body.is_sp .firstView .hatena,
body.is_sp .firstView .line,
body.is_sp .firstView .tweet,
body.is_sp .footer .fb-share-button,
body.is_sp .footer .hatena,
body.is_sp .footer .line,
body.is_sp .footer .tweet {
    position: relative;
}

body.is_sp .firstView .fb-share-button > iframe,
body.is_sp .firstView .fb-share-button > span,
body.is_sp .firstView .hatena > iframe,
body.is_sp .firstView .hatena > span,
body.is_sp .firstView .line > iframe,
body.is_sp .firstView .line > span,
body.is_sp .firstView .tweet > iframe,
body.is_sp .firstView .tweet > span,
body.is_sp .footer .fb-share-button > iframe,
body.is_sp .footer .fb-share-button > span,
body.is_sp .footer .hatena > iframe,
body.is_sp .footer .hatena > span,
body.is_sp .footer .line > iframe,
body.is_sp .footer .line > span,
body.is_sp .footer .tweet > iframe,
body.is_sp .footer .tweet > span {
    position: absolute;
    top: 0;
    left: 0;
    -moz-transform-origin: 0 0;
    -ms-transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -moz-transform: scale(1.8, 1.8);
    -ms-transform: scale(1.8, 1.8);
    -webkit-transform: scale(1.8, 1.8);
    transform: scale(1.8, 1.8);
}

article,
aside,
audio,
blockquote,
body,
canvas,
caption,
code,
dd,
div,
dl,
dt,
fieldset,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
iframe,
input,
legend,
li,
main,
menu,
nav,
object,
ol,
p,
pre,
section,
span,
table,
tbody,
td,
tfoot,
th,
thead,
ul,
video {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

article,
aside,
figcaption,
figure,
footer,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
main,
menu,
nav,
section {
    display: block;
}

html {
    overflow-y: scroll;
}

body,
html {
    width: 100%;
    min-height: 100%;
}

body {
    color: #000;
    background: #fff;
    font-family: "NotoSansCJKjp-regular","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
    font-size: 13px;
    *font-size: 82%;
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    word-wrap: break-word;
}

a {
    color: inherit;
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%;
    font-weight: normal;
}

p {
    line-height: 1.5;
}

li {
    list-style: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 100%;
    font-family: inherit;
}

caption,
td,
th {
    text-align: left;
    vertical-align: top;
    font-weight: normal;
}

fieldset {
    border: none;
}

input,
label,
select,
textarea {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 100%;
    font-family: inherit;
    vertical-align: middle;
    border: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input:focus,
label:focus,
select:focus,
textarea:focus {
    outline: none;
}

input ::-moz-focus-inner,
label ::-moz-focus-inner,
select ::-moz-focus-inner,
textarea ::-moz-focus-inner {
    border: 0;
}

select {
    background: none;
    border: none;
}

input[type="submit"] {
    cursor: pointer;
}

label {
    cursor: pointer;
}

textarea {
    overflow: auto;
}

legend {
    display: none;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

img {
    border: none;
    box-sizing: border-box;
    vertical-align: middle;
}

object {
    vertical-align: middle;
    outline: none;
}

em {
    font-style: italic;
}

strong {
    font-weight: bold;
}

small {
    font-size: 100%;
}

abbr,
acronym {
    border: none;
    font-variant: normal;
}

q:after,
q:before {
    content: "";
}

address,
caption,
cite,
code,
dfn,
var {
    font-weight: normal;
    font-style: normal;
}

code,
pre {
    font-family: monospace;
}

sup {
    vertical-align: text-top;
}

sub {
    vertical-align: text-bottom;
}

hr {
    display: none;
}

button {
    width: 100%;
    height: 100%;
    line-height: inherit;
    border: none;
    background: none;
    cursor: pointer;
    margin: 0;
    padding: 0;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    font-family: inherit;
    vertical-align: top;
}

button:focus {
    outline: none;
}

button ::-moz-focus-inner {
    border: 0;
}

button::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner {
    padding: 0 !important;
    border: 0 none !important;
}

*:first-child+html body,
*:first-child+html br {
    letter-spacing: 0;
}

@-moz-keyframes show {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }

}

@-webkit-keyframes show {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }

}

@keyframes show {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }

}

@-moz-keyframes arrow {
    0% {
        -moz-transform: translateX(-5px);
        transform: translateX(-5px);
    }

    30% {
        -moz-transform: translateX(5px);
        transform: translateX(5px);
    }

    100% {
        -moz-transform: translateX(-5px);
        transform: translateX(-5px);
    }

}

@-webkit-keyframes arrow {
    0% {
        -webkit-transform: translateX(-5px);
        transform: translateX(-5px);
    }

    30% {
        -webkit-transform: translateX(5px);
        transform: translateX(5px);
    }

    100% {
        -webkit-transform: translateX(-5px);
        transform: translateX(-5px);
    }

}

@keyframes arrow {
    0% {
        -moz-transform: translateX(-5px);
        -ms-transform: translateX(-5px);
        -webkit-transform: translateX(-5px);
        transform: translateX(-5px);
    }

    30% {
        -moz-transform: translateX(5px);
        -ms-transform: translateX(5px);
        -webkit-transform: translateX(5px);
        transform: translateX(5px);
    }

    100% {
        -moz-transform: translateX(-5px);
        -ms-transform: translateX(-5px);
        -webkit-transform: translateX(-5px);
        transform: translateX(-5px);
    }

}

.sp {
    display: none;
}

.wrapper {
    min-width: 960px;
}

body.is_sp .wrapper {
    width: 640px;
    min-width: 0;
}

.header {
    position: absolute;
    top: 673px;
    right: 0;
    left: 0;
    min-width: 960px;
    height: 90px;
    background-color: #fff;
}

body.is_sp .header {
    top: 673px;
    min-width: 0;
}

.header.fixed {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 2;
}

.header .menu_container {
    text-align: center;
    line-height: 90px;
}

.header .menu {
    display: inline-block;
    height: 60px;
    line-height: 60px;
    padding: 0 30px;
    margin: 0 30px;
    vertical-align: middle;
    font-size: 24px;
    border-radius: 30px;
}

.header .menu:hover {
    color: #666;
}

.header .menu a {
    display: block;
}

.header .menu.on {
    background-color: #F3F3F3;
}

.header .menu.yellow {
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
    background-color: #F1D100;
}

.header .menu.yellow:hover {
    color: #fff;
}

body.is_sp .header .menu.yellow {
    display: none;
}

body.is_sp .header .menu {
    width: 33%;
    height: 90px;
    line-height: 90px;
    padding: 0;
    margin: 0;
    font-size: 24px;
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
}

body.is_sp .header .menu:hover {
    color: #000;
}

.formBtn_container {
    display: none;
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    height: 160px;
    background-color: rgba(255,255,255,0.9);
}

body.is_sp .formBtn_container[data-position="intro"],
body.is_sp .formBtn_container[data-position="works"],
body.is_sp .formBtn_container[data-position="flow"] {
    display: block;
    -moz-animation: show 0.5s ease 0s;
    -webkit-animation: show 0.5s ease 0s;
    animation: show 0.5s ease 0s;
}

body.is_sp .formBtn_container[data-position="intro"] .formBtn a {
    background-position: 0 0;
}

body.is_sp .formBtn_container[data-position="intro"] .formBtn a:after {
    left: 70px;
}

body.is_sp .formBtn_container[data-position="intro"] .formBtn a:hover {
    background-position: 0 -104px;
}

body.is_sp .formBtn_container[data-position="intro"] .formBtn a:active {
    background-position: 0 -208px;
}

body.is_sp .formBtn_container[data-position="works"] .formBtn a {
    background-position: 0 -312px;
}

body.is_sp .formBtn_container[data-position="works"] .formBtn a:after {
    left: 95px;
}

body.is_sp .formBtn_container[data-position="works"] .formBtn a:hover {
    background-position: 0 -416px;
}

body.is_sp .formBtn_container[data-position="works"] .formBtn a:active {
    background-position: 0 -520px;
}

body.is_sp .formBtn_container[data-position="flow"] .formBtn a {
    background-position: 0 -312px;
}

body.is_sp .formBtn_container[data-position="flow"] .formBtn a:after {
    left: 95px;
}

body.is_sp .formBtn_container[data-position="flow"] .formBtn a:hover {
    background-position: 0 -416px;
}

body.is_sp .formBtn_container[data-position="flow"] .formBtn a:active {
    background-position: 0 -520px;
}

body.is_sp .formBtn_container .formBtn a {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 582px;
    height: 104px;
    background-image: url("../img/sp/common/form_btn.png?1433245695");
    background-size: 100% auto;
    background-position: 0 0;
    margin: auto;
}

body.is_sp .formBtn_container .formBtn a:after {
    position: absolute;
    top: -6px;
    bottom: 0;
    left: 0;
    width: 37px;
    height: 31px;
    margin: auto;
    background: url("../img/sp/common/arrow.png?1433245695") no-repeat center;
    background-size: contain;
    -moz-animation: arrow 1s linear 0s infinite;
    -webkit-animation: arrow 1s linear 0s infinite;
    animation: arrow 1s linear 0s infinite;
    content: "";
}

body.is_sp .formBtn_container .formBtn a:after img {
    width: 100%;
    height: auto;
}

#kayac-lp-footer {
    margin-top: -35px;
}

.firstView {
    position: relative;
    height: 673px;
    padding-top: 1px;
    text-align: center;
    background-color: #000;
    color: #fff;
}

body.is_sp .firstView {
    width: 640px;
    height: 673px;
}

.firstView .bg {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    height: 673px;
}

.firstView .bg:nth-child(1) {
    background: url("../img/firstView/bg_5.jpg?1433245695") no-repeat center;
    background-size: cover;
    opacity: 0;
}

body.is_sp .firstView .bg:nth-child(1) {
    background: url("../img/sp/firstView/bg_5.jpg?1433245695") no-repeat center;
    background-size: cover;
}

.firstView .bg:nth-child(2) {
    background: url("../img/firstView/bg_4.jpg?1433245695") no-repeat center;
    background-size: cover;
    opacity: 0;
}

body.is_sp .firstView .bg:nth-child(2) {
    background: url("../img/sp/firstView/bg_4.jpg?1433245695") no-repeat center;
    background-size: cover;
}

.firstView .bg:nth-child(3) {
    background: url("../img/firstView/bg_3.jpg?1433245695") no-repeat center;
    background-size: cover;
    opacity: 0;
}

body.is_sp .firstView .bg:nth-child(3) {
    background: url("../img/sp/firstView/bg_3.jpg?1433245695") no-repeat center;
    background-size: cover;
}

.firstView .bg:nth-child(4) {
    background: url("../img/firstView/bg_2.jpg?1433245695") no-repeat center;
    background-size: cover;
    opacity: 0;
}

body.is_sp .firstView .bg:nth-child(4) {
    background: url("../img/sp/firstView/bg_2.jpg?1433245695") no-repeat center;
    background-size: cover;
}

.firstView .bg:nth-child(5) {
    background: url("../img/firstView/bg_1.jpg?1433245695") no-repeat center;
    background-size: cover;
    opacity: 0;
}

body.is_sp .firstView .bg:nth-child(5) {
    background: url("../img/sp/firstView/bg_1.jpg?1433245695") no-repeat center;
    background-size: cover;
}

body.is_sp .firstView .bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.firstView .logo {
    position: absolute;
    top: 120px;
    right: 0;
    left: 0;
    width: 381px;
    height: 24px;
    margin: auto;
}

.firstView .logo img {
    width: 100%;
    height: auto;
}

body.is_sp .firstView .logo {
    top: 90px;
    width: 331px;
    height: 21px;
}

body.is_sp .firstView .logo img {
    width: 100%;
    height: auto;
}

.firstView .ttl {
    position: relative;
    width: 606px;
    height: 79px;
    background: url("../img/firstView/ttl.png?1433245695") no-repeat center;
    background-size: contain;
    margin: 170px auto 0;
}

.firstView .ttl img {
    width: 100%;
    height: auto;
}

body.is_sp .firstView .ttl {
    margin-top: 125px;
    width: 537px;
    height: 70px;
    background: url("../img/sp/firstView/ttl.png?1433245695") no-repeat center;
    background-size: contain;
}

body.is_sp .firstView .ttl img {
    width: 100%;
    height: auto;
}

.firstView .subTtl {
    position: relative;
    width: 380px;
    height: 48px;
    line-height: 38px;
    padding-top: 9px;
    margin: 20px auto 0;
    font-size: 15px;
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
    letter-spacing: 2px;
    color: #f1d200;
    opacity: 0;
    background: url("../img/firstView/balloon.png?1433245695") no-repeat center;
    background-size: contain;
}

.firstView .subTtl img {
    width: 100%;
    height: auto;
}

body.is_sp .firstView .subTtl {
    width: 530px;
    height: 73px;
    line-height: 60px;
    padding-top: 14px;
    margin-top: 20px;
    font-size: 24px;
    background: url("../img/sp/firstView/balloon.png?1433245695") no-repeat center;
    background-size: contain;
}

body.is_sp .firstView .subTtl img {
    width: 100%;
    height: auto;
}

.firstView .txt {
    position: relative;
    width: 606px;
    line-height: 2;
    margin: 40px auto 0;
    text-align: left;
    font-size: 24px;
    letter-spacing: 2px;
}

body.is_sp .firstView .txt {
    margin-top: 20px;
    width: 540px;
    font-size: 28px;
}

.firstView .social {
    width: 320px;
    margin: 50px auto 0;
    text-align: center;
    overflow: hidden;
    *zoom: 1;
}

body.is_sp .firstView .social {
    width: auto;
    margin-top: 40px;
    padding: 0 30px;
    overflow: hidden;
    *zoom: 1;
}

.firstView .fb-share-button,
.firstView .hatena,
.firstView .tweet {
    float: left;
    margin-left: 5px;
    vertical-align: top;
}

.firstView .line {
    display: none;
}

body.is_sp .firstView .fb-share-button,
body.is_sp .firstView .hatena,
body.is_sp .firstView .line,
body.is_sp .firstView .tweet {
    float: left;
    display: block;
    height: 40px;
    margin-left: 0;
    text-align: left;
}

body.is_sp .firstView .fb-share-button {
    width: 200px;
}

.firstView .tweet.normal {
    display: none;
}

body.is_sp .firstView .tweet {
    width: 220px;
}

body.is_sp .firstView .tweet.normal {
    display: none;
}

body.is_sp .firstView .hatena {
    display: none;
}

body.is_sp .firstView .line {
    width: 140px;
}

body.is_sp .firstView .line.normal {
    display: none;
}

.firstView .social {
    position: relative;
}

.intro {
    position: relative;
    text-align: center;
    margin-top: 90px;
    padding: 1px 0;
    background-color: #F3F3F3;
}

.intro .ttl {
    position: relative;
    line-height: 1.2;
    padding-left: 20px;
    margin-top: 110px;
    font-size: 24px;
}

body.is_sp .intro .ttl {
    line-height: 1.4;
    margin-top: 80px;
    padding-left: 190px;
    text-align: left;
    font-size: 36px;
}

.intro .ttl .strong {
    font-size: 36px;
    margin-left: 30px;
}

body.is_sp .intro .ttl .strong {
    line-height: 1.4;
    margin-left: 0;
    font-size: 42px;
}

.intro .ttl:before {
    position: absolute;
    top: -20px;
    left: 50%;
    width: 90px;
    height: 90px;
    margin-left: -270px;
    background: url("../img/intro/balloon.png?1433245695") no-repeat center;
    background-size: contain;
    content: "";
}

.intro .ttl:before img {
    width: 100%;
    height: auto;
}

body.is_sp .intro .ttl:before {
    top: 0;
    width: 140px;
    height: 140px;
    margin-left: -290px;
    background: url("../img/sp/intro/balloon.png?1433245695") no-repeat center;
    background-size: contain;
}

body.is_sp .intro .ttl:before img {
    width: 100%;
    height: auto;
}

.intro .txt {
    padding: 0 30px;
    margin-top: 30px;
    font-size: 18px;
}

body.is_sp .intro .txt {
    text-align: left;
    font-size: 28px;
    margin-top: 50px;
}

.intro .step {
    width: 483px;
    height: 194px;
    margin: 40px auto 0;
}

.intro .step img {
    width: 100%;
    height: auto;
}

body.is_sp .intro .step {
    width: 547px;
    height: 215px;
    margin-top: 60px;
}

body.is_sp .intro .step img {
    width: 100%;
    height: auto;
}

.intro .price_container {
    *zoom: 1;
    width: 440px;
    margin: 90px auto 0;
    font-size: 20px;
    color: #fff;
}

.intro .price_container:after {
    content: "";
    display: table;
    clear: both;
}

body.is_sp .intro .price_container {
    width: 520px;
    margin-top: 80px;
    font-size: 24px;
}

.intro .price_container .strong {
    font-size: 42px;
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
    margin: 0 5px;
}

body.is_sp .intro .price_container .strong {
    font-size: 42px;
}

.intro .campaign,
.intro .normal {
    float: left;
    width: 220px;
}

body.is_sp .intro .campaign,
body.is_sp .intro .normal {
    width: 260px;
}

.intro .campaign {
    position: relative;
    background-color: #6691A1;
}

.intro .campaign:before {
    position: absolute;
    top: -30px;
    right: 0;
    left: 0;
    height: 30px;
    line-height: 30px;
    font-size: 14px;
    color: #4C5D64;
    background-color: #F1D100;
    content: "キャンペーン中！";
}

body.is_sp .intro .campaign:before {
    top: -40px;
    height: 40px;
    line-height: 40px;
    font-size: 20px;
}

.intro .campaign .price {
    font-size: 24px;
}

.intro .campaign .underline {
    padding-bottom: 5px;
    border-bottom: 2px solid #fff;
}

.intro .campaign .date {
    border-bottom: 1px solid #85A7B3;
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
}

.intro .normal {
    background-color: #4C5D64;
}

.intro .normal .date {
    border-bottom: 1px solid #707E81;
}

.intro .date {
    height: 60px;
    line-height: 60px;
}

body.is_sp .intro .date {
    height: 70px;
    line-height: 70px;
}

.intro .price {
    height: 100px;
    line-height: 100px;
    font-size: 24px;
}

.intro .example_ttl {
    line-height: 1;
    margin-top: 60px;
    font-size: 24px;
}

body.is_sp .intro .example_ttl {
    line-height: 1.5;
    font-size: 36px;
}

.intro .sample_container {
    position: relative;
    width: 900px;
    height: 310px;
    padding: 40px;
    margin: 40px auto 0;
    background-color: #E6E6E6;
    border-radius: 5px;
}

body.is_sp .intro .sample_container {
    width: 580px;
    height: auto;
    margin: 20px auto 100px;
    padding: 20px 20px 230px;
}

.intro .sample_pic {
    position: absolute;
}

.intro .sample_pic.num1 {
    top: 0;
    bottom: 0;
    left: 30px;
    width: 300px;
    height: 221px;
    margin: auto;
}

.intro .sample_pic.num1 img {
    width: 100%;
    height: auto;
}

.intro .sample_pic.num2 {
    top: 110px;
    left: 270px;
    width: 99px;
    height: 186px;
}

.intro .sample_pic.num2 img {
    width: 100%;
    height: auto;
}

body.is_sp .intro .sample_pic.num1 {
    top: 40px;
    right: 0;
    left: 0;
    bottom: auto;
    width: 374px;
    height: 275px;
    margin: auto;
}

body.is_sp .intro .sample_pic.num1 img {
    width: 100%;
    height: auto;
}

body.is_sp .intro .sample_pic.num2 {
    top: 100px;
    left: 410px;
    width: 147px;
    height: 274px;
}

body.is_sp .intro .sample_pic.num2 img {
    width: 100%;
    height: auto;
}

.intro .sample_info {
    padding-left: 345px;
    text-align: left;
}

body.is_sp .intro .sample_info {
    margin-top: 360px;
    padding-left: 0;
}

.intro .sample_ttl {
    line-height: 1;
    font-size: 24px;
}

body.is_sp .intro .sample_ttl {
    line-height: 1.5;
    font-size: 38px;
}

body.is_sp .intro .sample_ttl .sample_ttl_txt {
    padding: 6px;
    background-color: #fff;
}

.intro .sample_award {
    margin-top: 20px;
    font-size: 16px;
    color: #bfa600;
}

body.is_sp .intro .sample_award {
    position: absolute;
    right: 0;
    bottom: 20px;
    left: 0;
    width: 540px;
    margin: auto;
    font-size: 30px;
}

body.is_sp .intro .sample_award .strong {
    padding: 8px;
    color: #fff;
    background-color: #bfa600;
}

body.is_sp .intro .sample_award br {
    line-height: 2;
}

.intro .sample_award .strong {
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
}

.intro .sample_txt {
    margin-top: 20px;
    font-size: 16px;
}

body.is_sp .intro .sample_txt {
    font-size: 30px;
}

.intro .formBtn a {
    position: relative;
    display: block;
    width: 391px;
    height: 74px;
    background-image: url("../img/common/form_btn.png?1433245695");
    background-size: 100% auto;
    background-position: 0 0;
    background-position: 0 0;
    margin: 40px auto 100px;
}

.intro .formBtn a:after {
    position: absolute;
    top: -6px;
    bottom: 0;
    left: 0;
    width: 27px;
    height: 23px;
    margin: auto;
    background: url("../img/common/arrow.png?1433245695") no-repeat center;
    background-size: contain;
    -moz-animation: arrow 1s linear 0s infinite;
    -webkit-animation: arrow 1s linear 0s infinite;
    animation: arrow 1s linear 0s infinite;
    content: "";
}

.intro .formBtn a:after img {
    width: 100%;
    height: auto;
}

.intro .formBtn a:after {
    left: 40px;
}

.intro .formBtn a:hover {
    background-position: 0 -74px;
}

.intro .formBtn a:active {
    background-position: 0 -148px;
}

.intro .border {
    width: 100%;
    height: 230px;
    text-align: center;
    background-color: #000;
    overflow: hidden;
}

.intro .border img {
    -moz-transform: translateY(-300px);
    -ms-transform: translateY(-300px);
    -webkit-transform: translateY(-300px);
    transform: translateY(-300px);
}

body.is_sp .intro .border {
    height: 231px;
}

body.is_sp .intro .border img {
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}

.works {
    position: relative;
    padding: 1px 0;
    background-color: #F3F3F3;
}

.works .ttl {
    margin-top: 80px;
    font-size: 36px;
    text-align: center;
}

body.is_sp .works .ttl {
    font-size: 64px;
}

.works .txt {
    margin-top: 30px;
    font-size: 18px;
    text-align: center;
}

body.is_sp .works .txt {
    margin-top: 60px;
    padding: 0 30px;
    text-align: left;
    font-size: 28px;
}

body.is_sp .works .txt {
    margin-bottom: 60px;
}

.works .sample {
    position: relative;
    width: 900px;
    margin: 40px auto 0;
    overflow: hidden;
    *zoom: 1;
}

body.is_sp .works .sample {
    width: 640px;
    margin-top: 20px;
}

.works .sample:first-child {
    margin-top: 60px;
}

.works .sample_movie_container {
    position: relative;
    width: 900px;
    height: 500px;
    margin-bottom: 20px;
}

.works .sample_movie_container img {
    width: 100%;
    height: auto;
}

body.is_sp .works .sample_movie_container {
    width: 640px;
    height: 360px;
    margin-bottom: 0;
}

body.is_sp .works .sample_movie_container img {
    width: 100%;
    height: auto;
}

.works .sample_pic {
    position: relative;
}

.works .sample_pic button {
    position: relative;
}

.works .sample_pic:before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #ccc;
    content: "";
}

body.is_sp .works .sample_pic {
    pointer-events: none;
}

.works .sample_movie,
.works .sample_pic {
    position: absolute;
    top: 0;
    left: 0;
    width: 900px;
    height: 500px;
}

.works .sample_movie img,
.works .sample_pic img {
    width: 100%;
    height: auto;
}

body.is_sp .works .sample_movie,
body.is_sp .works .sample_pic {
    width: 640px;
    height: 360px;
}

body.is_sp .works .sample_movie img,
body.is_sp .works .sample_pic img {
    width: 100%;
    height: auto;
}

.works .sample_ttl_container {
    float: left;
}

body.is_sp .works .sample_ttl_container {
    float: none;
}

.works .sample_ttl {
    line-height: 1.2;
    font-size: 16px;
    letter-spacing: 3px;
}

body.is_sp .works .sample_ttl {
    padding: 40px 30px 0;
    font-size: 28px;
    letter-spacing: 5px;
}

.works .sample_ttl .strong {
    font-size: 32px;
}

body.is_sp .works .sample_ttl .strong {
    font-size: 54px;
}

body.is_sp .works .sample_ttl .strong.tenbin {
    font-size: 52px;
    letter-spacing: 0;
}

body.is_sp .works .sample_ttl_txt {
    background-color: #fff;
    padding: 5px;
}

body.is_sp .works .sample_ttl_txt.strong {
    display: inline-block;
    margin-top: 10px;
}

.works .sample_info {
    float: right;
    width: 400px;
}

body.is_sp .works .sample_info {
    float: none;
    width: 100%;
    padding: 40px 30px;
}

.works .sample_txt {
    font-size: 16px;
    letter-spacing: 1px;
}

body.is_sp .works .sample_txt {
    font-size: 28px;
}

.works .sample_award {
    width: 400px;
    margin-top: 10px;
    font-size: 16px;
    color: #bfa600;
}

body.is_sp .works .sample_award {
    width: auto;
    margin-top: 40px;
    font-size: 32px;
}

.works .sample_award br {
    line-height: 2;
}

.works .sample_award .strong {
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
}

body.is_sp .works .sample_award .strong {
    padding: 10px;
    color: #fff;
    background-color: #bfa600;
}

.works .sample_link {
    position: relative;
    width: 120px;
    height: 30px;
    line-height: 30px;
    margin-top: 20px;
    padding-right: 10px;
    text-align: center;
    font-size: 14px;
    color: #fff;
    background-color: #4C5D64;
}

body.is_sp .works .sample_link {
    width: 300px;
    height: 70px;
    line-height: 70px;
    margin: 40px auto 0;
    font-size: 28px;
}

.works .sample_link:after {
    position: absolute;
    top: 0;
    right: 10px;
    bottom: 0;
    line-height: 30px;
    font-size: 10px;
    content: ">";
}

body.is_sp .works .sample_link:after {
    line-height: 70px;
    right: 20px;
    font-size: 24px;
}

.works .sample_link a {
    display: block;
}

.works .formBtn a {
    position: relative;
    display: block;
    width: 391px;
    height: 74px;
    background-image: url("../img/common/form_btn.png?1433245695");
    background-size: 100% auto;
    background-position: 0 0;
    background-position: 0 -222px;
    margin: 40px auto 100px;
}

.works .formBtn a:after {
    position: absolute;
    top: -6px;
    bottom: 0;
    left: 0;
    width: 27px;
    height: 23px;
    margin: auto;
    background: url("../img/common/arrow.png?1433245695") no-repeat center;
    background-size: contain;
    -moz-animation: arrow 1s linear 0s infinite;
    -webkit-animation: arrow 1s linear 0s infinite;
    animation: arrow 1s linear 0s infinite;
    content: "";
}

.works .formBtn a:after img {
    width: 100%;
    height: auto;
}

.works .formBtn a:after {
    left: 90px;
}

.works .formBtn a:hover {
    background-position: 0 -296px;
}

.works .formBtn a:active {
    background-position: 0 -370px;
}

.flow {
    position: relative;
    background-color: #242B2E;
    color: #fff;
    padding: 1px 0;
}

.flow:before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 3px;
    margin-left: -420px;
    background-color: #4D5557;
    content: "";
}

body.is_sp .flow:before {
    margin-left: -270px;
}

.flow .ttl {
    margin-top: 80px;
    text-align: center;
    font-size: 32px;
}

body.is_sp .flow .ttl {
    font-size: 64px;
}

.flow .subTtl {
    margin-top: 10px;
    text-align: center;
    font-size: 14px;
}

body.is_sp .flow .subTtl {
    font-size: 26px;
}

.flow .step {
    position: relative;
    width: 860px;
    margin: 40px auto 0;
    padding-left: 80px;
    *zoom: 1;
}

.flow .step:after {
    content: "";
    display: table;
    clear: both;
}

body.is_sp .flow .step {
    width: 495px;
    margin: 60px auto 80px;
    padding-top: 1px;
    padding-left: 40px;
}

.flow .step:first-child {
    margin-top: 70px;
}

.flow .step:nth-of-type(1):before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -19px;
    width: 54px;
    height: 54px;
    line-height: 51px;
    margin: auto;
    text-align: center;
    font-size: 28px;
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
    border: 3px solid #4D5557;
    border-radius: 50%;
    background-color: #242B2E;
    content: "1";
}

body.is_sp .flow .step:nth-of-type(1):before {
    top: -5px;
    left: -56px;
    bottom: auto;
    width: 64px;
    height: 64px;
    line-height: 61px;
    font-size: 32px;
}

.flow .step:nth-of-type(2):before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -19px;
    width: 54px;
    height: 54px;
    line-height: 51px;
    margin: auto;
    text-align: center;
    font-size: 28px;
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
    border: 3px solid #4D5557;
    border-radius: 50%;
    background-color: #242B2E;
    content: "2";
}

body.is_sp .flow .step:nth-of-type(2):before {
    top: -5px;
    left: -56px;
    bottom: auto;
    width: 64px;
    height: 64px;
    line-height: 61px;
    font-size: 32px;
}

.flow .step:nth-of-type(3):before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -19px;
    width: 54px;
    height: 54px;
    line-height: 51px;
    margin: auto;
    text-align: center;
    font-size: 28px;
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
    border: 3px solid #4D5557;
    border-radius: 50%;
    background-color: #242B2E;
    content: "3";
}

body.is_sp .flow .step:nth-of-type(3):before {
    top: -5px;
    left: -56px;
    bottom: auto;
    width: 64px;
    height: 64px;
    line-height: 61px;
    font-size: 32px;
}

.flow .step:nth-of-type(4):before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -19px;
    width: 54px;
    height: 54px;
    line-height: 51px;
    margin: auto;
    text-align: center;
    font-size: 28px;
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
    border: 3px solid #4D5557;
    border-radius: 50%;
    background-color: #242B2E;
    content: "4";
}

body.is_sp .flow .step:nth-of-type(4):before {
    top: -5px;
    left: -56px;
    bottom: auto;
    width: 64px;
    height: 64px;
    line-height: 61px;
    font-size: 32px;
}

.flow .step:nth-of-type(5):before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: -19px;
    width: 54px;
    height: 54px;
    line-height: 51px;
    margin: auto;
    text-align: center;
    font-size: 28px;
    font-family: "NotoSansCJKjp-bold","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
    border: 3px solid #4D5557;
    border-radius: 50%;
    background-color: #242B2E;
    content: "5";
}

body.is_sp .flow .step:nth-of-type(5):before {
    top: -5px;
    left: -56px;
    bottom: auto;
    width: 64px;
    height: 64px;
    line-height: 61px;
    font-size: 32px;
}

.flow .notice {
    width: 500px;
    height: 203px;
    padding: 1px 0;
    margin: 40px auto;
    font-size: 26px;
    background: url("../img/flow/border.png?1433245695") no-repeat center;
    background-size: contain;
}

.flow .notice img {
    width: 100%;
    height: auto;
}

.flow .notice .notice_txt {
    display: block;
    width: 400px;
    margin: 40px auto 0;
}

.flow .notice .weak {
    display: block;
    margin-top: 10px;
    font-size: 18px;
}

body.is_sp .flow .notice {
    width: 495px;
    height: 410px;
    line-height: 1.5;
    padding-top: 15px;
    font-size: 32px;
    background: url("../img/sp/flow/border.png?1433245695") no-repeat center;
    background-size: contain;
    -moz-transform: translateX(40px);
    -ms-transform: translateX(40px);
    -webkit-transform: translateX(40px);
    transform: translateX(40px);
}

body.is_sp .flow .notice img {
    width: 100%;
    height: auto;
}

body.is_sp .flow .notice .notice_txt {
    margin-top: 20px;
    text-align: center;
}

body.is_sp .flow .notice .notice_txt .weak {
    margin-top: 30px;
    font-size: 28px;
    text-align: left;
}

.flow .step_pic {
    float: left;
    width: 240px;
    height: 150px;
}

.flow .step_pic img {
    width: 100%;
    height: auto;
}

body.is_sp .flow .step_pic {
    float: none;
    width: 495px;
    height: 200px;
    margin-top: 90px;
}

body.is_sp .flow .step_pic img {
    width: 100%;
    height: auto;
}

.flow .step_info {
    float: left;
    width: 510px;
    margin-left: 30px;
}

body.is_sp .flow .step_info {
    float: none;
    width: 495px;
    margin-left: 0;
}

.flow .step_ttl {
    line-height: 1;
    font-size: 24px;
}

body.is_sp .flow .step_ttl {
    position: absolute;
    top: 0;
    left: 40px;
    font-size: 48px;
}

.flow .step_txt {
    margin-top: 20px;
    font-size: 16px;
    letter-spacing: 1px;
}

.flow .step_txt a {
    text-decoration: underline;
}

body.is_sp .flow .step_txt {
    margin-top: 30px;
    font-size: 28px;
}

.flow .step_link {
    margin-top: 20px;
    font-size: 15px;
    color: #f1d200;
    text-decoration: underline;
}

body.is_sp .flow .step_link {
    font-size: 28px;
}

.flow .border {
    position: relative;
    width: 100%;
    height: 230px;
    padding: 1px 0;
    text-align: center;
    background-color: #000;
    overflow: hidden;
}

.flow .border img {
    -moz-transform: translateY(-300px);
    -ms-transform: translateY(-300px);
    -webkit-transform: translateY(-300px);
    transform: translateY(-300px);
}

body.is_sp .flow .border {
    height: 231px;
}

body.is_sp .flow .border img {
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
}

.flow .formBtn a {
    position: relative;
    display: block;
    width: 391px;
    height: 74px;
    background-image: url("../img/common/form_btn.png?1433245695");
    background-size: 100% auto;
    background-position: 0 0;
    background-position: 0 -222px;
    margin: 40px auto 100px;
}

.flow .formBtn a:after {
    position: absolute;
    top: -6px;
    bottom: 0;
    left: 0;
    width: 27px;
    height: 23px;
    margin: auto;
    background: url("../img/common/arrow.png?1433245695") no-repeat center;
    background-size: contain;
    -moz-animation: arrow 1s linear 0s infinite;
    -webkit-animation: arrow 1s linear 0s infinite;
    animation: arrow 1s linear 0s infinite;
    content: "";
}

.flow .formBtn a:after img {
    width: 100%;
    height: auto;
}

.flow .formBtn a:after {
    left: 95px;
}

.flow .formBtn a:hover {
    background-position: 0 -296px;
}

.flow .formBtn a:active {
    background-position: 0 -370px;
}

.form {
    position: relative;
    background-color: #F3F3F3;
    padding: 1px 0;
}

.form .ttl {
    margin-top: 80px;
    text-align: center;
    font-size: 36px;
}

body.is_sp .form .ttl {
    font-size: 64px;
}

.form .txt {
    margin-top: 10px;
    text-align: center;
    font-size: 16px;
}

body.is_sp .form .txt {
    font-size: 32px;
}

.form .rule {
    width: 600px;
    height: 200px;
    padding: 20px 50px;
    margin: 60px auto 0;
    font-size: 15px;
    color: #fff;
    background-color: #242B2E;
    border-radius: 6px;
    overflow-y: auto;
}

body.is_sp .form .rule {
    padding: 40px 50px;
    font-size: 24px;
}

.form .rule a {
    text-decoration: underline;
}

.form .rule_ttl {
    line-height: 1;
    margin-bottom: 20px;
    text-align: center;
    font-size: 20px;
}

body.is_sp .form .rule_ttl {
    font-size: 32px;
}

.form .rule_list_ttl {
    margin-top: 1em;
}

.form .rule_list_ttl:before {
    margin-right: 0.5em;
    content: "■";
}

.form .rule_list li {
    margin-left: 1.5em;
    list-style-type: disc;
}

.form .rule_date {
    margin-top: 20px;
}

.form .inline_container {
    width: 600px;
    margin: 40px auto 115px;
}

.form .inline {
    width: 600px;
    height: 1240px;
    border: none;
    border-radius: 6px;
}

body.is_sp .form .inline {
    height: 1450px;
}

.footer {
    position: relative;
    height: 170px;
    padding: 1px 0;
    background-color: #222;
    color: #fff;
}

body.is_sp .footer {
    height: 340px;
}

.footer .social {
    width: 320px;
    margin: 50px auto 0;
    text-align: center;
    overflow: hidden;
    *zoom: 1;
}

body.is_sp .footer .social {
    width: auto;
    margin-top: 40px;
    padding: 0 30px;
    overflow: hidden;
    *zoom: 1;
}

.footer .fb-share-button,
.footer .hatena,
.footer .tweet {
    float: left;
    margin-left: 5px;
    vertical-align: top;
}

.footer .line {
    display: none;
}

body.is_sp .footer .fb-share-button,
body.is_sp .footer .hatena,
body.is_sp .footer .line,
body.is_sp .footer .tweet {
    float: left;
    display: block;
    height: 40px;
    margin-left: 0;
    text-align: left;
}

body.is_sp .footer .fb-share-button {
    width: 200px;
}

.footer .tweet.normal {
    display: none;
}

body.is_sp .footer .tweet {
    width: 220px;
}

body.is_sp .footer .tweet.normal {
    display: none;
}

body.is_sp .footer .hatena {
    display: none;
}

body.is_sp .footer .line {
    width: 140px;
}

body.is_sp .footer .line.normal {
    display: none;
}

.footer .social {
    margin-top: 40px;
}

body.is_sp .footer .social {
    margin-top: 80px;
}

.footer .logo {
    display: inline-block;
    width: 228px;
    height: 14px;
    margin-left: 30px;
    vertical-align: top;
}

.footer .logo img {
    width: 100%;
    height: auto;
}

body.is_sp .footer .logo {
    display: block;
    margin: 100px auto 0;
    width: 456px;
    height: 30px;
}

body.is_sp .footer .logo img {
    width: 100%;
    height: auto;
}

.footer .copyright {
    line-height: 1;
    margin-top: 40px;
    text-align: center;
}

body.is_sp .footer .copyright {
    font-size: 24px;
}
