@charset "utf-8";
body {
    overflow-x: hidden;
    width: 100%;
}
.ctsInner {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}
#mainCts p {
    margin: 0 0 0.77em;
}
#mainCts,
#mainCts h1,
#mainCts h2,
#mainCts h3,
#mainCts h4 {
    font-family: 'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    color: #000;
    width: 100%;
    font-size: 1em;
}
#mainCts img {
    border: none;
    padding: 0 !important;
}
#mainCts li {
    list-style: none;
}
/*============================
#ctsMv
============================*/
#ctsMv {
    background: url(../img/bg_mv.jpg) no-repeat;
    background-size: 45.462em;
    background-position: 50% 0%;
    background-position-x: calc(50% - 25.44em);
    max-width: 1200px;
    margin: 0 auto;
}
#ctsMv img {
    width: 100%;
}
#ctsMv .txtArea {
    position: relative;
    width: 50%;
    margin: 0 0 0 51.5%;
    padding: 3.8% 0 1.9%;
}
#ctsMv .txtArea h1 {
    margin: 1.4% 0 0;
}
#ctsMv .txtArea small {
    width: 91.6%;
    text-align: right;
    display: block;
    color: #000;
    font-weight: 500;
    font-size: 1.139em;
    margin: 0.3% 0 0%;
}
#ctsMv .txtArea small.note {
    font-size: 0.78em;
}
#ctsMv .logo span {
    display: block;
    /* vertical-align: top; */
    font-size: 2.9em;
    overflow: hidden;
    text-indent: -1em;
    width: 1.4em;
    height: 0.8em;
    position: relative;
    margin: 1.2% 0 0 11.6%;
}
#ctsMv .logo span:before,
#ctsMv .logo span:after {
    content: "";
    border-left: #000 0.05em solid;
    position: absolute;
    left: 50%;
    top: 13%;
    height: 0.6em;
    transform: rotate(45deg);
}
#ctsMv .logo span:after {
    transform: rotate(-45deg);
}
#ctsMv .xperia {
    display: block;
    /* vertical-align: top; */
    width: 34.3%;
}
#ctsMv .codm {
    display: block;
    /* vertical-align: top; */
    width: 33.8%;
    margin: 1.3% 0 0 0%;
}
#ctsMv .badge1 {
    position: absolute;
    width: 59.4%;
    margin: 6% 3% 0 0;
    right: 0;
    top: 0;
}
#ctsMv .lead {
    width: 89%;
    margin: 3.1% 0 0;
}
#ctsMv .p1 {
    width: 15%;
    margin: -2% 0 -2% -2%;
}
#ctsMv .p2 {
    width: 74.8%;
    margin: -0.5% 0 0 1.3%;
}
#ctsMv .p3,
#ctsMv .p4 {
    width: 88.6%;
    margin-left: 0.3%;
}
#ctsMv .term {
    width: 88.4%;
    margin: 2% 0 2% 0.3%;
}
#ctsMv .txtArea small.note {
    width: 90%;
    margin: -0.8% 0 1.4%;
}
/*============================
#ctsUunfction
============================*/
#ctsFunction {
    background: #000;
}
#ctsFunction .function {
    color: #fff;
    text-align: center;
    position: relative;
    font-size: 2.924em;
    line-height: 1.395;
    font-weight: bold;
    padding: 4.8% 0 0 0%;
    letter-spacing: 0.01em;
    margin: 0 0 5.2% 0;
    white-space: nowrap;
}
#ctsFunction .function .xperia {
    letter-spacing: 0.05em;
}
#ctsFunction .function small {
    color: #fff;
    display: inline-block;
    margin: 0 -16.7em 0 0.8%;
    letter-spacing: 0.08em;
}
#ctsFunction .hex {
    color: #fee000;
    font-size: 1.462em;
    background: url(../img/bg_hex_tl.png) no-repeat;
    background-size: contain;
    margin: 0.9% 0 0 0;
    padding: 3.1% 0 0 14.1%;
    line-height: 1.4;
    letter-spacing: 0.03em;
    height: 3.947em;
    box-sizing: border-box;
}
#ctsFunction .hex3 {
    padding: 6.2% 0 0 13%;
    letter-spacing: 0.01em;
}
#ctsFunction .hex strong {
    font-size: 120%;
}
#ctsFunction .hex .funcSmall {
    font-size: 80%;
}
#ctsFunction .hex3 .funcSmall {
    font-size: 70%;
}
#ctsFunction .funcBox.clearfix {
    margin: 5.3% 0 6%;
}
#ctsFunction .colLeft {
    float: left;
    width: 33.9%;
    margin: 0 2.9% 0 8.6%;
}
#ctsFunction .colRight {
    float: right;
    width: 33.9%;
    margin: 0 9% 0 2.8%;
    clear: both;
}
#ctsFunction .funcText {
    color: #fff;
    font-size: 1.154em;
    line-height: 1.8;
    margin: 0.8em 6.6% 0;
    letter-spacing: 0.03em;
}
#ctsFunction .funcImg {
    width: 45.6%;
}
#ctsFunction .colRight+.funcImg {
    float: right;
}
#ctsFunction .moreFunc {
    color: #fff;
    font-size: 1.693em;
    line-height: 1.273;
    text-align: center;
    margin: 3.3em 0 0.7em;
}
#ctsFunction .moreFunc .xperia {
    letter-spacing: 0.1em;
}
#ctsFunction .moreFunc .funcSmall {
    font-size: 0.7em;
}
#ctsFunction .bannerArea {
    text-align: center;
    padding: 0 0 2.9%;
}
#ctsFunction .bannerArea a {
    width: 37%;
    display: inline-block;
    transition: opacity .3s;
}
#ctsFunction .bannerArea a:hover {
    opacity: .7;
}
#ctsFunction .bannerArea a img {
    width: 100%;
}
/*============================
#ctsUsage
============================*/
#ctsUsage {
    background: #000;
    padding-top: 4.65em;
    padding-bottom: 5.2em;
}
#ctsUsage .hex+span {
    color: #fee000;
    margin: 17.6% 0 0 23.1%;
    display: block;
    font-size: 1.3em;
    letter-spacing: -0.03em;
    font-weight: 500;
    text-shadow: #000 0 0 0.3em;
    transform: scale(0.97, 1);
    transform-origin: 0;
    white-space: nowrap;
}
#ctsUsage li:nth-child(4) .hex+span {
    margin-top: 23.2%;
}
#ctsUsage li:nth-child(5) .hex+span {
    margin-top: 20.2%;
}
#ctsUsage i {
    font-style: normal;
    display: inline-block;
    transform: scale(0.91, 1);
    transform-origin: 0;
}
#ctsUsage .cp {
    padding: 1.3% 0;
    margin: 0 auto;
    font-size: 2.9em;
    text-indent: 0.8em;
    letter-spacing: -0.01em;
    font-weight: 900;
    background: #fee000;
    text-align: center;
    width: 59.3%;
    position: relative;
}
#ctsUsage .cp:before,
#ctsUsage .cp:after {
    content: "";
    position: absolute;
    top: 0;
    left: -0.5em;
    border-top: 0.89em solid transparent;
    border-bottom: 0.89em solid transparent;
    border-right: 0.5em solid #fee000;
}
#ctsUsage .cp:after {
    left: auto;
    right: -0.5em;
    border-right: none;
    border-left: 0.5em solid #fee000;
}
#ctsUsage .example {
    padding: 0;
    text-align: center;
    margin-top: 5.4%;
    margin-bottom: 10%;
}
#ctsUsage .example li {
    display: inline-block;
    vertical-align: top;
    text-align: left;
    width: 30.1%;
    margin: 0 1.4% -6.4%;
    height: 27em;
    background: url(../img/bg_hex.png) no-repeat;
    background-size: contain;
    position: relative;
}
#ctsUsage .example li:nth-child(1) img {
    width: 104.656%;
    margin: 6.5% 0 0 -6.5%;
}
#ctsUsage .example li:nth-child(2) img {
    width: 98.676%;
    margin: 0.6% 0 0 -0.1%;
}
#ctsUsage .example li:nth-child(3) img {
    width: 88.04%;
    margin: 9.5% 0 0 6.8%;
}
#ctsUsage .example li:nth-child(4) img {
    width: 91.03%;
    margin: -2.4% 0 0 6.3%;
}
#ctsUsage .example li:nth-child(5) img {
    width: 109.97%;
    margin: 1.1% 0 0 -5.4%;
}
#ctsUsage .example em {
    font-style: normal;
    font-size: 1.5em;
    line-height: 1.25;
}
#ctsUsage .example em.cut {
    margin: 0 -0.45em 0 -0.5em;
}
#ctsUsage .example em.narrow {
    letter-spacing: -0.07em;
}
#ctsUsage .hex {
    background: url(../img/bg_step.png)no-repeat;
    background-size: contain;
    width: 5.5em;
    height: 6.3em;
    padding-top: 2.5em;
    display: block;
    position: absolute;
    text-align: center;
    font-weight: 700;
    letter-spacing: 0.06em;
    left: -4%;
    top: 16.2%;
    white-space: nowrap;
}
#ctsUsage .playimg {
    text-align: center;
    color: #fff;
}
#ctsUsage .playimg h2 {
    color: #fff;
    font-size: 3em;
    line-height: 1.35;
    font-weight: 700;
    margin: 12.9% 0 2.9% 2%;
}
#ctsUsage .playimg h3 {
    width: 23.5%;
    margin: -8.2% 0 0 38.3%;
    display: block;
}
#ctsUsage .playimg h3 img,
#ctsUsage .playimg h4 img {
    width: 100%;
}
#ctsUsage .playimg h4 {
    width: 15.4%;
    margin: 3.4% 0 0 42.1%;
}
#ctsUsage .playimg p {
    display: inline-block;
    margin: 3.5% auto 1.7%;
    width: 71.8%;
    font-size: 1.45em;
    text-align: justify;
    letter-spacing: 0.05em;
}
#ctsUsage .playimg small {
    display: inline-block;
    margin: 0 auto;
    width: 71.8%;
    text-align: justify;
    font-size: 0.9em;
    letter-spacing: 0.05em;
    color: #b7b7b7;
}
#ctsUsage .img {
    width: 83.2%;
    margin: 0 0 0 0.3%;
}
#ctsUsage .bannerArea {
    margin-top: 4em;
}
#ctsUsage .banner {
    display: inline-block;
    vertical-align: top;
    width: 31%;
    margin: 0 0.73%;
    transition: opacity .3s;
}
#ctsUsage .banner:hover {
    opacity: .7
}
#ctsUsage .banner img {
    width: 100%;
}
/*============================
#ctsDetail
============================*/
#ctsDetail {
    padding: 4.2em 0 0;
    text-align: center;
}
#ctsDetail h3 {
    margin: 0 auto;
    background: #000;
    color: #fee000;
    width: 96%;
    font-size: 1.83em;
    padding: 1.45% 0;
    margin-bottom: 2.6%;
}
#ctsDetail h3 span {
    display: inline-block;
    font-weight: 500;
}
#ctsDetail p {
    font-size: 1.3em;
    line-height: 1.75;
}
#ctsDetail h3+p {
    font-weight: 600;
}
#ctsDetail .flow {
    padding: 0;
    margin: 3.3% 0 0 0;
}
#ctsDetail .flow li {
    display: inline-block;
    vertical-align: top;
    width: 22%;
    height: 24em;
    margin: 0 1.35%;
    background: url(../img/bg_step.png) no-repeat;
    background-size: contain;
    position: relative;
}
#ctsDetail .flow li p {
    line-height: 1.65;
    font-weight: 500;
    font-size: 1.05em;
}
#ctsDetail .flow li:after {
    content: "";
    position: absolute;
    top: 8.2em;
    border-top: 1.6em solid transparent;
    border-bottom: 1.6em solid transparent;
    right: -1.6em;
    border-right: none;
    border-left: 1.9em solid #fee000;
}
#ctsDetail .flow li:last-child:after {
    display: none;
}
#ctsDetail hr {
    border-color: #ccc;
    margin: 0.4% 0 2.2%;
}
#ctsDetail .detail {
    display: block;
    background: #fee000;
    color: #000;
    width: 40.6%;
    text-align: left;
    font-size: 1.2em;
    padding: 1.6em 0 1.66em 1em;
    margin: 3% auto 7.2%;
    position: relative;
    font-weight: 600;
    transition: background .24s;
    text-decoration: none !important;
}
#ctsDetail .detail:after {
    content: "";
    border: #000 1px solid;
    border-left: 0;
    border-bottom: 0;
    width: 0.7em;
    height: 0.7em;
    display: block;
    position: absolute;
    right: 6.5%;
    top: 42.5%;
    transform: rotate(45deg);
}
#ctsDetail .detail:hover {
    background: #ffed64;
}
#ctsDetail .blank {
    width: 0.706em;
    height: 0.6em;
    background: url(../img/blank.png) no-repeat;
    display: inline-block;
    margin: 0 0 0.1em 0.6em;
    background-size: contain;
}
#ctsDetail span.step {
    position: absolute;
    width: 31.37%;
    left: 0;
    top: 0;
    margin: 5.5% 0 0 -5.6%;
}
#ctsDetail span.step img {
    width: 100%;
}
#ctsDetail .smp {
    width: 67.73%;
    margin: 31.7% 0 0.9%;
    position: relative;
}
#ctsDetail .mail {
    width: 38.186%;
    margin: 39.6% 0 44%;
}
#ctsDetail .right {
    text-align: right;
    width: 98.6%;
    display: block;
    margin: 1.5% 0 3.9%;
    font-size: 0.93em;
}
#ctsDetail .app {
    text-align: justify;
    width: 96%;
    margin: 3.9% auto 0%;
}
#ctsDetail .app hr {
    border-color: #ccc;
    margin: 1.6% 0 2.2%;
}
#ctsDetail .app h4 {
    font-weight: 600;
    margin: 1.8% 0 0.8%;
    font-size: 1.2em;
}
#ctsDetail .app p {
    font-size: 1.17em;
    margin-bottom: 0.6%;
}
#ctsDetail .app p.tel {
    font-size: 1.3em;
    font-weight: 600;
    margin: 0.4em 0;
}
#ctsDetail .app p.tel:before {
    content: "";
    background: url(../img/icon_tel.png) no-repeat;
    width: 1.361em;
    height: 1.7em;
    margin: 0 0.4em -0.5em 0.1em;
    background-size: contain;
    display: inline-block;
}
#ctsDetail .app .confirm {
    display: inline-block;
    font-size: 1.17em;
    margin: 1em 0 2em;
}
#ctsDetail .app .confirm:before {
    content: "";
    background: url(../img/icon_mail.png) no-repeat;
    width: 1.973em;
    height: 1.6em;
    margin: 0 0.5em -0.5em 0.1em;
    background-size: contain;
    display: inline-block;
}
#ctsDetail .app li {
    margin-bottom: 0.2%;
    text-indent: -1em;
    padding-left: 1em;
}
#ctsDetail .app .blank {
    background: url(../img/blank_w.png) no-repeat;
    margin: 0 0.4% -0.3em -0.1em;
    background-size: contain;
}
#ctsDetail .app small {
    display: block;
    line-height: 1.6;
    margin-bottom: 0.4%;
    font-size: 1.06em;
    text-indent: -1em;
    padding-left: 1em;
}
#ctsDetail .app ul {
    padding: 0;
    font-size: 1.17em;
    margin-bottom: 1.8%;
    line-height: 1.75;
}
#ctsDetail .num li {
    text-indent: -1em;
    padding-left: 1em;
}
#ctsDetail .inquiry {
    text-align: left;
    width: 96%;
    margin: 2.4% auto 4%;
}
#ctsDetail .inquiry h5 {
    font-weight: 600;
    font-size: 1.15em;
}
#ctsDetail .inquiry a {
    display: block;
    font-size: 1.15em;
    font-weight: 500;
    padding: 0.4em 0;
}
#ctsDetail .inquiry a:after {
    content: "";
    border: #00a8b5 1px solid;
    border-left: 0;
    border-bottom: 0;
    width: 0.55em;
    height: 0.55em;
    position: relative;
    transform: rotate(45deg);
    display: inline-block;
    margin: 0 0 0.1em 0.4em;
}
#ctsDetail .inquiry a:hover:after {
    border-color: #006169;
}
#ctsDetail .inquiry small {
    margin-top: 0.6em;
    display: block;
    font-size: 0.94em;
}
#ctsDetail .copyright {
    display: block;
    margin: 6% auto 0.8%;
    width: 96%;
    font-size: 0.8em;
    text-align: left;
}
#ctsDetail .visible-app{
    width: 96%;
    margin: 0 auto;
    margin-bottom: 3%;
    text-align:center;
}
#footer {
    overflow: hidden;
}
@media (max-width: 1000px) {
    #mainCts {
        font-size: 1.3vw;
        overflow: hidden;
    }
}
@media (min-width: 818px) {
    .forsp {
        display: none !important;
    }
}
@media (max-width: 817px) {
    .forpc {
        display: none !important;
    }
    html,
    body {
        overflow-x: hidden;
    }
    #mainCts {
        font-size: 2.1vw;
    }
    /*============================
	#ctsMv
	============================*/
    #ctsMv {
        background-size: 78%;
        background-position: -16.77em -6em;
    }
    #ctsMv .txtArea {
        width: 90%;
        margin: 0 0 0 5%;
        padding: 6.1% 0 0.8%;
    }
    #ctsMv .hex {
        margin: 0;
    }
    #ctsMv .txtArea h1 {
        margin: 2.7% 0 0;
    }
    #ctsMv .txtArea small {
        width: 79.9%;
        font-weight: 500;
        font-size: 1.63em;
        margin: -1% 21% 1.9% 17%;
        text-align: right;
        letter-spacing: 0.02em;
    }
    #ctsMv .txtArea .bonus {
        letter-spacing: -0.03em;
    }
    #ctsMv .logo span {
        font-size: 3em;
        text-indent: -1em;
        width: 1.7em;
        height: 1.7em;
        display: block;
        margin-left: 66.7%;
        margin-top: -0.4%;
    }
    #ctsMv .logo span:before,
    #ctsMv .logo span:after {
        border-left: #000 0.04em solid;
        left: 50%;
        top: 21.8%;
        height: 0.94em;
    }
    #ctsMv .xperia {
        width: 45%;
        margin-left: 50.7%;
    }
    #ctsMv .codm {
        width: 43.7%;
        margin: -0.5% 0 0 51.2%;
    }
    #ctsMv .badge1 {
        position: relative;
        width: 92.445%;
        margin: 4.5% -5.6% 0 2.1%;
    }
    #ctsMv .lead {
        width: 89.5%;
        margin: 1.8% 0 0 5.4%;
    }
    #ctsMv .p1 {
        width: 15.4%;
        margin: -1.8% 0 0 1.2%;
    }
    #ctsMv .p2 {
        width: 75.9%;
        margin: -3.3% 0 0 1.8%;
    }
    #ctsMv .p3 {
        width: 89.5%;
        margin: 1% 0 0 5.7%;
    }
    #ctsMv .p4 {
        width: 89%;
        margin: -0.3% 0 0.5% 5.3%;
    }
    #ctsMv .term {
        width: 88.9%;
        margin: 0.8% 0 2% 5.5%;
    }
    #ctsMv .txtArea small.note {
        width: 94%;
        margin: -0.9% 0 4.4% 2.7%;
        text-align: right;
        font-size: 1.14em;
        letter-spacing: 0;
    }
    /*============================
#ctsUunfction
============================*/
    #ctsFunction .function {
        padding: 5.4% 4% 0 0;
        font-size: 2.667em;
        margin: 0 0 4.3% 0;
        line-height: 1.381;
    }
    #ctsFunction .function .xperia {
        padding-left: 1em;
        letter-spacing: 0.06em;
    }
    #ctsFunction .function small {
        font-size: 0.33em;
        margin: 1em 0 0;
        display: block;
    }
    #ctsFunction .hex {
        height: 3.764em;
        margin: 0 -0.834%;
        padding: 2.4% 0 0 0;
        font-size: 1.974em;
        text-align: center;
        line-height: 1.3;
        background-image: url(../img/bg_hex_tl_sp.png);
        background-size: 100% 100%;
        width: auto;
    }
    #ctsFunction .hex3 {
        padding: 5.2% 0 0;
    }
    #ctsFunction .hex strong {}
    #ctsFunction .hex .funcSmall {}
    #ctsFunction .hex3 .funcSmall {}
    #ctsFunction .funcBox.clearfix {
        margin: 11.1% auto 10.6%;
    }
    #ctsFunction .funcBox {
        width: 80%;
        margin: 0 auto;
    }
    #ctsFunction .colLeft {
        margin: 0;
        float: none;
        width: 100%;
    }
    #ctsFunction .colRight {
        margin: 0;
        float: none;
        width: 100%;
    }
    #ctsFunction .funcText {
        margin: 0.7em 5.4% 0 6.8%;
        font-size: 1.458em;
        letter-spacing: 0;
        line-height: 1.655;
    }
    #ctsFunction .funcImg {
        width: 100%;
        margin: 3.9% 0 0;
    }
    #ctsFunction .colRight+.funcImg {}
    #ctsFunction .moreFunc {
        margin: 3.3em 0 1.1em;
    }
    #ctsFunction .moreFunc .xperia {
        padding-left: 0.2em;
    }
    #ctsFunction .moreFunc .funcSmall {}
    #ctsFunction .bannerArea {
        padding: 0 0 6.3%;
    }
    #ctsFunction .bannerArea a {
        width: 80%;
    }
    #ctsFunction .bannerArea a img {}
    /*============================
	#ctsUsage
	============================*/
    #ctsUsage {
        padding-top: 3.95em;
        padding-bottom: 1.65em;
    }
    #ctsUsage .hex+span {
        margin: 15.5% 0 0 20.3%;
        font-size: 1.45em;
        letter-spacing: -0.02em;
        text-shadow: #000 0 0 0.3em;
        transform: scale(1);
        transform-origin: 0;
    }
    #ctsUsage li:nth-child(3) .hex+span {
        margin-top: 10.7%;
        line-height: 1.2;
    }
    #ctsUsage li:nth-child(4) .hex+span {
        margin-top: 22.3%;
        margin-left: 18.9%;
    }
    #ctsUsage li:nth-child(5) .hex+span {
        margin-top: 17.2%;
        transform: scale(0.97, 1);
        font-size: 1.4em;
    }
    #ctsUsage i {
        transform: scale(1);
        transform-origin: 0;
    }
    #ctsUsage .cp {
        padding: 1.3% 0;
        font-size: 2.7em;
        text-indent: 0.8em;
        letter-spacing: -0.01em;
        width: 77.3%;
    }
    #ctsUsage .cp:before,
    #ctsUsage .cp:after {
        top: 0;
        left: -0.5em;
        border-top: 0.77em solid transparent;
        border-bottom: 0.77em solid transparent;
        border-right: 0.5em solid #fee000;
    }
    #ctsUsage .cp:after {
        left: auto;
        right: -0.5em;
        border-right: none;
        border-left: 0.5em solid #fee000;
    }
    #ctsUsage .example {
        margin-top: 5.7%;
        margin-bottom: 11%;
    }
    #ctsUsage .example li {
        width: 42.1%;
        margin: 0 2.5% -15.9%;
        height: 27em;
    }
    #ctsUsage .example li:nth-child(3) {
        margin: 0 22.5% -15.9%;
    }
    #ctsUsage .example li:nth-child(1) img {
        width: 104.656%;
        margin: 6.5% 0 0 -6.5%;
    }
    #ctsUsage .example li:nth-child(2) img {
        width: 94.876%;
        margin: 1% 0 0 1.6%;
    }
    #ctsUsage .example li:nth-child(3) img {
        width: 87.94%;
        margin: 5.6% 0 0 6.1%;
    }
    #ctsUsage .example li:nth-child(4) img {
        width: 90.03%;
        margin: -3.4% 0 0 5%;
    }
    #ctsUsage .example li:nth-child(5) img {
        width: 107.57%;
        margin: 1.1% 0 0 -4.4%;
    }
    #ctsUsage .example em {
        font-size: 1.3em;
        line-height: 1.25;
    }
    #ctsUsage .example em.cut {
        margin: 0 -0.45em 0 -0.5em;
    }
    #ctsUsage .example em.narrow {
        letter-spacing: -0.07em;
    }
    #ctsUsage .hex {
        width: 5em;
        height: 5.8em;
        padding-top: 2.2em;
        letter-spacing: 0.0em;
        left: -7%;
        top: 15%;
        font-size: 0.9em;
    }
    #ctsUsage .playimg h2 {
        font-size: 2.9em;
        line-height: 1.35;
        margin: 17.7% 0 2.9% 2%;
    }
    #ctsUsage .playimg h3 {
        width: 39.2%;
        margin: -14.7% 0 0 30.5%;
    }
    #ctsUsage .playimg h4 {
        width: 25.7%;
        margin: 5.8% 0 0 36.7%;
    }
    #ctsUsage .playimg p {
        margin: 5.5% auto 1.7%;
        width: 79.8%;
        font-size: 1.65em;
        letter-spacing: 0.01em;
    }
    #ctsUsage .playimg small {
        width: 79.8%;
        font-size: 0.9em;
        line-height: 1.5;
        letter-spacing: 0.05em;
    }
    #ctsUsage .img {
        width: 111.4%;
        margin: 1% 0 0 -5.5%;
    }
    #ctsUsage .bannerArea {
        padding: 0em;
    }
    #ctsUsage .banner {
        width: 92%;
        margin: 0 0.73% 4.2%;
    }
    /*============================
	#ctsDetail
	============================*/
    #ctsDetail {
        padding: 1.9em 0 0;
    }
    #ctsDetail h3 {
        width: 92%;
        font-size: 2.03em;
        padding: 2.75% 0;
        margin-bottom: 3.9%;
    }
    #ctsDetail p {
        font-size: 1.5em;
        line-height: 1.65;
    }
    #ctsDetail .flow {
        padding: 0;
        margin: -0.8% 0 0 0;
    }
    #ctsDetail .flow li {
        width: 41%;
        height: 24em;
        margin: 0px -2.15%;
    }
    #ctsDetail .flow li:nth-child(2n) {
        margin: 42.2% -2.15% -8.7%;
    }
    #ctsDetail .flow li p {
        position: absolute;
        line-height: 1.45;
        font-weight: 600;
        font-size: 1.85em;
        margin: -83% 0 0 117%;
        white-space: nowrap;
        text-align: left;
    }
    #ctsDetail .flow li:nth-child(2) p {
        margin: -83% 0 0 -101.2%;
        text-align: right;
    }
    #ctsDetail .flow li:nth-child(4) p {
        margin: -83% 0 0 -94.2%;
        text-align: right;
    }
    #ctsDetail .flow li:after {
        display: none;
    }
    #ctsDetail hr {
        border-color: #ccc;
        margin: 5.4% 0 3.9%;
    }
    #ctsDetail .detail {
        width: 80%;
        text-align: left;
        font-size: 1.6em;
        padding: 1.4em 0 1.4em 1em;
        margin: 4.3% auto 8.1%;
        transition: background .24s;
    }
    #ctsDetail .detail:after {
        border: #000 .1em solid;
        border-left: 0;
        border-bottom: 0;
        width: 0.62em;
        height: 0.62em;
        right: 4.4%;
        top: 42.5%;
        transform: rotate(45deg);
    }
    #ctsDetail .blank {
        width: 0.9em;
        height: 0.8em;
        margin: 0 0 0em 0em;
    }
    #ctsDetail span.step {
        width: 31.37%;
        margin: 8.9% 0 0 -10.1%;
    }
    #ctsDetail .flow li:nth-child(2n-1) span.step {
        margin: 8.9% 0 0 78.5%;
    }
    #ctsDetail span.step img {
        width: 100%;
    }
    #ctsDetail .smp {
        width: 67.73%;
        margin: 31.1% 0 0.9%;
    }
    #ctsDetail .mail {
        width: 48.786%;
        margin: 34.6% 0 38.7%;
    }
    #ctsDetail .right {
        width: 82.6%;
        margin: 5.6% auto 9.4%;
        font-size: 1.53em;
        text-align: left;
    }
    #ctsDetail .app {
        width: 92%;
        margin: -1.3% auto;
        font-size: 1.3em;
    }
    #ctsDetail .app hr {
        margin: 2.9% 0 2.2%;
    }
    #ctsDetail .app h4 {
        font-weight: 600;
        margin: 3.5% 0 2%;
        font-size: 1.2em;
    }
    #ctsDetail .app p {
        font-size: 1.17em;
        margin-bottom: 0.6%;
    }
    #ctsDetail .app li {
        margin-bottom: 0.2%;
        text-indent: -1em;
        padding-left: 1em;
    }
    #ctsDetail .app .blank {
        margin: 0 0.2em -0.1em -0.4em;
    }
    #ctsDetail .app small {
        line-height: 1.55;
        margin-bottom: 0.4%;
        font-size: 1em;
    }
    #ctsDetail .app ul {
        padding: 0;
        font-size: 1.17em;
        margin-bottom: 5.6%;
        line-height: 1.6;
    }
    #ctsDetail .num li {
        text-indent: -1em;
        padding-left: 1em;
    }
    #ctsDetail .inquiry {
        width: 92%;
        margin: 3.9% auto 9.5%;
    }
    #ctsDetail .inquiry h5 {
        font-weight: 600;
        font-size: 1.55em;
        margin: 4.1% 0 0.5%;
    }
    #ctsDetail .inquiry a {
        font-size: 1.45em;
        font-weight: 500;
        padding: 0.4em 0;
    }
    #ctsDetail .inquiry a:after {
        border: #00a8b5 1px solid;
        border-left: 0;
        border-bottom: 0;
        width: 0.55em;
        height: 0.55em;
        margin: 0 0 0.1em 0.4em;
    }
    #ctsDetail .inquiry a:hover:after {
        border-color: #006169;
    }
    #ctsDetail .inquiry small {
        margin-top: -0.1em;
        font-size: 1.27em;
    }
    #ctsDetail .copyright {
        margin: 1.9% auto -0.2%;
        width: 92%;
        font-size: 1.1em;
    }
    #ctsDetail .visible-app{
        width: 92%;
        margin: 0 auto;
        margin-bottom: 8%;
    }
}

/* ラウンジのみ */
#ctsDetail .entry-method a {
  display: inline-block;
  width: 100%;
  height: 70px;
  color: #fff;
  font-size: 20px;
  text-align: center;
  line-height: 70px;
  margin: 10px auto 0;
  background: -moz-linear-gradient(top, #7f89a5, #60657b);
  background: -webkit-linear-gradient(top, #7f89a5, #60657b);
  background: linear-gradient(to bottom, #7f89a5, #60657b);
  border-bottom: 5px solid #444858;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
}
#ctsDetail .entry-method a img {
  width: 30px;
  vertical-align: middle;
  margin-top: -10px;
  margin-right: 10px;
}
@media only screen and (min-width: 768px) {
  #ctsDetail .entry-method {
    width: 300px;
    display: inline-block;
  }
}

/* ------------------------------------------------------------ */
/* ご応募はこちら */
/* ------------------------------------------------------------ */
#ctsDetail .app-xlj .btn-primary {
  background-color: #e53a67;
  border-color: transparent;
  padding: 20px;
}
#ctsDetail .app-xlj .btn-primary:hover {
  background-color: #54A9BD;
}

/* ------------------------------------------------------------ */
/* 送信ボタン */
/* ------------------------------------------------------------ */
/* 送信ボタン */
#ctsDetail input[type="button"] {
  color: #fff;
  font-size: 18px;
  padding: 20px;
  border: none;
  background: #e53a67;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
/* 送信ボタン - マウスオーバー時 */
#ctsDetail input[type="button"]:hover {
  background: #54A9BD;
}
/* 送信ボタン - 押せないとき */
#ctsDetail input[type="button"][disabled] {
  background-color: #ccc;
  cursor: default;
}
#ctsDetail .pointer label:hover,
#ctsDetail .pointer input:hover {
  cursor: pointer;
}

/* ------------------------------------------------------------ */
/* 判定別*/
/* ------------------------------------------------------------ */
#ctsDetail .well {
  text-align: center;
  margin: 20px 0 0;
}
#ctsDetail .well p {
  font-size: 15px;
  line-height: 1.8;
  margin: 0;
}
@media only screen and (min-width: 768px) {
  #ctsDetail .well p {
    font-size: 16px;
  }
}
