@charset "utf-8";
/* ------------------------------------------------------------
     base
------------------------------------------------------------ */
.contact div.contectTel,
header#header div#headerContact div#headerTel {
    text-shadow: #fff 1px 1px 1px,#fff -1px 1px 0,#fff 1px -1px 1px,#fff -1px -1px 1px,0 0 4px rgba(0,88,168,.5);
}
body {
    background: url(/img/pc/back.jpg)repeat-x;
    font-size: 16px;
    line-height: 160%;
}
#container {
    background: url(/img/pc/main.png)center top no-repeat;
}
p {
    line-height: 1.6em;
}
ul {
    list-style: none;
}
em {
    font-style: normal;
}

.contact {
    background: url(/img/pc/content.png)left top -5240px no-repeat;
    height: 445px;
    margin: 0 auto 60px;
    position: relative;
    width: 960px;
}
.contact h2 {
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    left: 345px;
    position: absolute;
    top: 20px;
}
.contact ul {
    color: #fff;
    font-weight: bold;
    left: 380px;
    position: absolute;
    text-align: center;
    text-shadow: 0 0 6px #0058a8;
    top: 110px;
}
.contact li {
    float: left;
    margin-right: 10px;
    width: 136px;
}
.contact li .title {
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 30px;
    margin-bottom: 20px;
}
.contact div.contectTel {
    color: #af0722;
    font-size: 83px;
    font-weight: bold;
    left: 250px;
    letter-spacing: -.08em;
    position: absolute;
    top: 235px;
}
.contact div.contactMail {
    left: 160px;
    position: absolute;
    top: 295px;
}
.contact div.contactMail a {
    background: url(/img/pc/button.png)left top -120px;
    display: block;
    height: 80px;
    text-indent: -999em;
    width: 640px;
}
/* ------------------------------------------------------------
     header footer
------------------------------------------------------------ */
header#header {
    height: 75px;
    margin: 0 auto 5px;
    position: relative;
    width: 940px;
}
header#header h1 {
    font-weight: bold;
    left: 165px;
    line-height: 120%;
    position: absolute;
    top: 20px;
}
header#header h1 span {
    font-size: 12px;
}
header#header div#siteId {
    height: 36px;
    left: 0;
    position: absolute;
    top: 20px;
    width: 151px;
}
header#header div#siteId a {
    background: url(/img/pc/button.png)left top;
    display: block;
    height: 36px;
    text-indent: -999em;
    width: 151px;
}
header#header div#headerContact {
    background: url(/img/pc/button.png)left -180px top;
    height: 60px;
    position: absolute;
    right: 0;
    top: 15px;
    width: 460px;
}
header#header div#headerContact div#headerTel {
    color: #af0722;
    font-size: 34px;
    font-weight: bold;
    left: 80px;
    letter-spacing: -.08em;
    position: absolute;
    top: 25px;
}
header#header div#headerContact div#headerMail {
    position: absolute;
    right: 0;
    top: 0;
}
header#header div#headerContact div#headerMail a {
    background: url(/img/pc/button.png)left top -60px;
    display: block;
    height: 60px;
    text-indent: -999em;
    width: 140px;
}
footer#footer {
    background: #000;
}
footer#footer div#footerContainer {
    color: #fff;
    font-size: 10px;
    font-weight: bold;
    margin: 0 auto;
    padding: 7px 0 0;
    width: 940px;
}
footer#footer div#privacy {
    float: left;
    margin-right: 20px;
}
footer#footer div#privacy a {
    color: #fff;
}
footer#footer div#tax {
    float: left;
}
footer#footer div#copy {
    float: right;
}

header.articleHead h1 {
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    text-shadow: #fff 1px 1px 1px,#fff -1px 1px 0,#fff 1px -1px 1px,#fff -1px -1px 1px,1px 0 3px rgba(0,43,81,.5);
}
header.articleHead h1 span {
    font-size: 60px;
}
/* ------------------------------------------------------------
     main
------------------------------------------------------------ */
#main {
    margin: 35px auto 0;
    position: relative;
    text-shadow: #fff 1px 1px 1px,#fff -1px 1px 0,#fff 1px -1px 1px,#fff -1px -1px 1px,0 0 4px rgba(0,88,168,.5);
    width: 940px;
}
#main h1 {
    font-size: 30px;
    font-weight: bold;
    line-height: 100%;
    margin-bottom: 30px;
}
#main #productName {
    color: #cf0000;
    font-size: 40px;
    top: 10px;
}
#main h1 span {
    color: #c00;
    font-size: 36px;
    letter-spacing: -.05em;
}
#main h1 .strong {
    color: #0058a6;
}
#main h2 {
    color: #0058a8;
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 100px;
    font-weight: bold;
    line-height: 100%;
    margin-bottom: 30px;
    position: relative;
    z-index: 1000;
}
#main h2 span {
    color: #c00;
}
#main .point {
    font-size: 30px;
    font-weight: bold;
    line-height: 100%;
}
#main .point span {
    color: #c00;
    font-size: 60px;
    letter-spacing: -.06em;
}
#main .point1 {
    margin-bottom: 20px;
}
#main .notation {
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 40px;
}
#main .discount {
    position: absolute;
    right: 0;
    top: 140px;
}
#main #headerLineup {
    font-weight: bold;
    height: 310px;
    width: 940px;
}
#main #headerLineup .item {
    background: url(/img/pc/content.png)left top;
    height: 100px;
    padding-top: 120px;
    position: relative;
}
#main div#headerLineup .item li {
    float: left;
    font-size: 18px;
    margin-right: 35px;
    text-align: center;
    text-shadow: #fff 1px 1px 1px,#fff -1px 1px 0,#fff 1px -1px 1px,#fff -1px -1px 1px,1px 0 3px rgba(0,43,81,.5);
    width: 160px;
}
#main div#headerLineup .item li:last-child {
    margin: 0;
}
#main div#headerLineup .item li .title {
    color: #0058a8;
}
#main div#headerLineup .item li .title span {
    font-size: 30px;
}
#main #headerLineup .point {
    text-align: center;
}
#numberOne {
    margin: 55px auto 180px;
    position: relative;
    width: 940px;
}
#numberOne div {
    text-align: center;
}
#numberOne .articleHead {
    box-sizing: border-box;
    padding: 5px 30px 20px;
    position: relative;
    text-shadow: none;
}
#numberOne .articleHead .point {
    color: #fff;
    font-size: 23px;
    font-weight: bold;
    margin-bottom: 40px;
    padding-top: 7px;
    width: 425px;
}
#numberOne .articleHead h1 {
    color: #000;
    font-size: 40px;
    font-weight: bold;
    margin: 0;
    text-align: left;
}
#numberOne .articleHead h1 span {
    color: #0058a8;
    font-size: 70px;
    line-height: 100%;
    text-shadow: #fff 1px 1px 1px,#fff -1px 1px 0,#fff 1px -1px 1px,#fff -1px -1px 1px,0 0 4px rgba(0,88,168,.5);
}
#numberOne ul#numberOnePoint {
    background: url(/img/pc/content.png)left top -310px;
    height: 270px;
    margin: 0 auto;
    position: relative;
    width: 890px;
}
#numberOne ul#numberOnePoint li {
    color: #fff;
    font-weight: bold;
    position: absolute;
    text-shadow: 0 0 6px #0058a8;
    top: 150px;
    width: 280px;
}
#numberOne ul#numberOnePoint .item1 {
    left: 5px;
}
#numberOne ul#numberOnePoint .item2 {
    left: 305px;
}
#numberOne ul#numberOnePoint .item3 {
    left: 605px;
}
#numberOne ul#numberOnePoint li .title {
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 50px;
    letter-spacing: -.05em;
}
#numberOne ul#numberOnePoint li .addition {
    font-size: 20px;
    margin-top: 35px;
}
#numberOne #discount {
    margin: 30px auto;
    width: 800px;
}
#numberOne .push {
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    margin: 68px auto 0;
    text-align: center;
    width: 400px;
}
#numberOne .push span {
    font-size: 30px;
}
/* ------------------------------------------------------------
     trouble
------------------------------------------------------------ */
#trouble {
    background: url(/img/pc/content.png)left top -580px no-repeat;
    height: 2450px;
    margin: 0 auto 50px;
    position: relative;
    width: 960px;
}
#trouble .articleHead {
    font-weight: bold;
    margin-bottom: 55px;
    padding-top: 65px;
    position: relative;
    text-align: center;
}
#trouble .addition {
    color: #fff;
    font-size: 34px;
    margin-bottom: 40px;
}
#trouble .articleTitle {
    font-size: 40px;
    font-weight: bold;
    line-height: 100%;
}
#trouble .articleTitle em {
    font-size: 80px;
    line-height: 100%;
}
#trouble .articleTitle span {
    color: #c00;
}
#trouble .articleHead .point {
    color: #fff;
    font-size: 12px;
    line-height: 140%;
    position: absolute;
    right: 10px;
    top: 20px;
    width: 180px;
}
#trouble .articleHead .point em {
    display: block;
    font-size: 24px;
    margin-bottom: 10px;
}
#trouble .articleHead .point em span {
    display: block;
    font-size: 40px;
    line-height: 120%;
}
#trouble .episode {
    font-size: 18px;
    margin: 0 0 60px 70px;
    width: 550px;
}
#trouble .episode.last {
    margin-bottom: 45px;
}
#trouble .episode .title {
    font-size: 40px;
    font-weight: bold;
    line-height: 100%;
    padding: 20px 0 20px 90px;
    text-shadow: #fff 1px 1px 1px,#fff -1px 1px 0,#fff 1px -1px 1px,#fff -1px -1px 1px,0 0 3px rgba(0,88,168,.5);
}
#trouble .episode .title span {
    color: #0058a6;
    display: block;
    font-size: 30px;
    line-height: 100%;
    margin-bottom: 15px;
}
#trouble .troubleList {
    font-size: 24px;
    font-weight: bold;
    margin: 0 0 60px 70px;
}
#trouble .troubleList li {
    line-height: 100%;
    margin: 0 0 36px 50px;
}
#trouble .troubleList li:last-child {
    margin-bottom: 65px;
}
#trouble .troubleList .title {
    color: #fff;
    font-size: 30px;
    margin: 55px 0 50px 0;
}
#trouble .conclusion {
    font-weight: bold;
    margin-bottom: 80px;
    padding-top: 15px;
    text-shadow: #fff 1px 1px 1px,#fff -1px 1px 0,#fff 1px -1px 1px,#fff -1px -1px 1px,0 0 3px rgba(0,88,168,.5);
}
#trouble .conclusion .check {
    color: #fff;
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-size: 30px;
    line-height: 100%;
    margin-bottom: 75px;
    text-align: center;
    text-shadow: 0 0 4px rgba(0,88,168,.5);
}
#trouble .conclusion .check span {
    font-size: 40px;
}
#trouble .conclusion .point {
    font-size: 30px;
    margin: 0 0 30px 40px;
}
#trouble .conclusion .title {
    font-size: 40px;
    margin: 0 0 0 40px;
}
#trouble .conclusion .title em {
    font-size: 86px;
}
#trouble .conclusion .title .type1 {
    color: #0058a5;
}
#trouble .conclusion .title .type2 {
    color: #c00;
}
#trouble .explanation {
    font-size: 18px;
    margin: 0 70px;
    padding-top: 15px;
    position: relative;
}
#trouble .explanation .title {
    font-size: 23px;
    font-weight: bold;
    margin: 0 0 30px 95px;
}
#trouble .explanation .title em {
    color: #0058a5;
}
#trouble .explanation .title span {
    font-size: 30px;
    line-height: 100%;
}
#trouble .explanation .point {
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    left: -50px;
    line-height: 120%;
    position: absolute;
    text-align: center;
    top: -35px;
    width: 135px;
}
/* ------------------------------------------------------------
     reason
------------------------------------------------------------ */
#reason {
    background: url(/img/pc/content.png) left top -3030px;
    height: 2210px;
    margin: 0 auto 50px;
    position: relative;
    width: 960px;
}
#reason .articleHead {
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    margin: 0 0 45px 40px;
    padding-top: 60px;
    width: 660px;
}
#reason .articleHead .addition {
    color: #fff;
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    text-shadow: 1px 0 3px rgba(0,43,81,.3);
}
#reason .articleHead .articleTitle {
    font-size: 80px;
    font-weight: bold;
}
#reason .articleHead .articleTitle span {
    color: #c00;
    font-size: 160px;
    line-height: 100%;
    margin-top: 10px;
}
#reason .reason {
    margin: 0 70px;
}
#reason .reason .title {
    font-weight: bold;
    line-height: 100%;
    text-shadow: #fff 1px 1px 1px,#fff -1px 1px 0,#fff 1px -1px 1px,#fff -1px -1px 1px,0 0 3px rgba(0,43,81,.3);
}
#reason .reason .title span {
    color: #0058a5;
    display: block;
}
#reason .reason h2.title {
    font-size: 40px;
    margin: 0 0 0 90px;
}
#reason .reason h2.title span {
    font-size: 30px;
    margin-bottom: 10px;
}
#reason .reason ul .title {
    font-size: 18px;
    text-align: center;
}
#reason .reason ul .title span {
    font-size: 24px;
    line-height: 100%;
    margin-top: 10px;
}
#reason .reason1 {
    margin-bottom: 100px;
}
#reason .reason1 .content {
    margin-top: 170px;
}
#reason .reason1 .content li {
    float: left;
    margin-right: 20px;
    width: 190px;
}
#reason .reason1 .content li:last-child {
    margin: 0;
}
#reason .reason1 .content li .title {
    margin-bottom: 20px;
}
#reason .reason2 {
    margin-bottom: 120px;
}
#reason .reason2 .content {
    margin-top: 45px;
}
#reason .reason2 .content li {
    float: left;
    margin-right: 60px;
    width: 220px;
}
#reason .reason2 .content li:first-child {
    margin-left: 20px;
}
#reason .reason2 .content li:last-child {
    margin: 0;
}
#reason .reason2 .content li .title {
    margin-bottom: 170px;
}
#reason .reason3 {
    margin-bottom: 80px;
}
#reason .reason3 .content {
    margin: 40px 0 0 50px;
}
#reason .reason3 .content li {
    margin-bottom: 55px;
}
#reason .reason3 .content li span {
    font-size: 24px;
    font-weight: bold;
}
#reason .point {
    margin: 0 auto;
    width: 820px;
}
#reason .point .title {
    font-weight: bold;
    line-height: 100%;
    text-align: center;
}
#reason .point h2.title {
    color: #0058a5;
    font-size: 30px;
    text-shadow: #fff 1px 1px 1px,#fff -1px 1px 0,#fff 1px -1px 1px,#fff -1px -1px 1px,0 0 3px rgba(0,43,81,.3);
}
#reason .point .content {
    margin-top: 80px;
}
#reason .point .content li {
    float: left;
    margin-right: 80px;
    width: 220px;
}
#reason .point .content li:last-child {
    margin: 0;
}
#reason .point .content li .title {
    color: #fff;
    font-size: 24px;
    margin: 15px 0 45px 20px;
    text-shadow: 0 0 3px rgba(0,43,81,.3);
}
/* ------------------------------------------------------------
     other content
------------------------------------------------------------ */
.otherContent {
    margin: 0 auto;
    width: 940px;
}
.otherContent div,
.otherContent section {
    margin-bottom: 60px;
}
.variableContent .container {
    background: url("/img/pc/back.png");
    box-shadow: inset 0 0 15px rgba(185,166,136,3);
    padding: 30px;
}
.variableContent .container div {
    margin: 0;
}
.variableContent .content {
    background: #fff;
    box-shadow: 0 0 4px rgba(185,166,136,3);
    padding: 30px;
}

#step {
}
#step .title {
    color: #0058a8;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
}
#step .title span {
    display: block;
    font-size: 14px;
}
#step .content .step {
    float: left;
    margin-left: 50px;
    width: 240px;
}
#step .content .step:first-child {
    margin: 0;
}
#step .content #payment {
    float: left;
    margin-top: 50px;
    width: 100%;
}

#faq .container ul {
}
#faq .container li {
    margin-bottom: 30px;
}
#faq .container li .q:before,
#faq .container li .a:before {
    content: "";
    display: block;
    height: 35px;
    left: 0;
    top: 10px;
    width: 35px;
}
#faq .container li .q {
    border-bottom: solid 2px #0058a8;
    font-size: 24px;
    font-weight: bold;
    line-height: 140%;
    margin-bottom: 20px;
    padding: 10px 0 10px 50px;
    position: relative;
}
#faq .container li .q:before {
    background: url(/img/pc/button.png)left -140px top -60px;
    position: absolute;
}
#faq .container li .a {
    padding-left: 50px;
    position: relative;
}
#faq .container li .a:before {
    background: url(/img/pc/button.png)left -175px top -60px;
    position: absolute;
}

#service {
}
#service .service {
    float: left;
    margin: 0 30px 30px 0;
    width: 395px;
}
#service .service:nth-child(even) {
    margin-right: 0;
}
#service header {
    border-bottom: solid 2px #0058a7;
    font-size: 24px;
    margin-bottom: 20px;
    padding-bottom: 10px;
}
#service header h3 {
    color: #0058a5;
    float: left;
    font-weight: bold;
}
#service header .price {
    color: #c03;
    float: right;
    font-weight: 700;
}

#area .container.touchou .group:first-child {
    margin: 0 0 15px 0;
}

#area .container.touchou .group {
    float: unset;
    margin: 0 0 15px 0;
    width: auto;
}

#area .container.touchou li:not(.title) {
    display: inline-block;
}

#area .group {
    float: left;
    margin-left: 20px;
    width: 120px;
}
#area .group:first-child {
    margin: 0;
}
#area .group .title {
    border-bottom: solid 2px #0058a5;
    color: #0058a5;
    font-weight: bold;
    margin-bottom: 10px;
    padding-bottom: 5px;
}
#area p {
    float: left;
    margin-top: 30px;
}

#company {
    position: relative;
}
#company table {
    background: #fff;
    box-shadow: 0 0 4px rgba(185,166,136,3);
    font-size: 13px;
    width: 100%;
}
#company tr {
    border-bottom: solid 1px #d8d6d3;
}
#company th {
    background: #fafafa;
    border-right: solid 1px #d8d6d3;
    padding: 10px;
    width: 150px;
}
#company td {
    padding: 10px;
}

section#company2 .container {
    background: url(/img/pc/back.png);
    box-shadow: inset 0 0 15px rgb(185 166 136);
    padding: 30px;
}

section#company2 table {
    background: #fff;
    box-shadow: 0 0 4px rgb(185 166 136);
    font-size: 13px;
    width: 100%;
}

section#company2 tr {
    border-bottom: solid 1px #d8d6d3;
}

section#company2 th {
    background: #fafafa;
    border-right: solid 1px #d8d6d3;
    font-size: 16px;
    padding: 10px;
    width: 241px;
}

section#company2 td {
    font-size: 16px;
    padding: 10px;
}

section#company2 .sp_only {
    display: none;
}

#company2 dl {
    border-bottom: solid 1px #d8d6d3;
    margin-bottom: 10px;
}

#company2 dt:nth-child(odd) {
    float: left;
    width: 20%;
}

#company2 .client li:nth-child(odd) {
    float: left;
    width: 50%;
}



.clearfix:after {
    clear: both;
    content: ".";
    display: block;
    font-size: 0;
    height: 0;
    visibility: hidden;
}
div.codeHide {
    bottom: 0;
    position: absolute;
}
.questionaryImage {
    display: none;
    height: 100%;
    position: fixed;
    width: 100%;
    z-index: 2;
}
.questionaryImage img {
    bottom: 0;
    left: 0;
    margin: auto;
    position: fixed;
    right: 0;
    top: 0;
}
#back-curtain {
    background: rgba(0,0,0,.5);
    display: none;
    height: 100%;
    position: fixed;
    width: 100%;
    z-index: 1;
}

.subContentTitle {
    border-bottom: solid 2px;
    color: #0058a8;
    font-size: 40px;
    font-weight: bold;
    line-height: 100%;
    margin-bottom: 5px;
    padding-bottom: 15px;
}
/*AB-test------------------------------------------------------------*/
#main h2.test {
    background: none;
    height: auto;
    left: -35px;
    position: relative;
    text-indent: 1em;
    width: auto;
}