div,
p,
ul,
li,
a,
hr,
section,
span,
em {
    text-decoration: none;
    list-style: none;
    color: inherit;
    background: none;
    margin: 0;
    padding: 0;
    font-style: normal;
}

input[type="button"],
input[type="submit"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
}

.row {
    margin: 0;
    padding: 0;
}

[class*="col-"] {
    margin: 0;
    padding: 0;
}

.contents {
    /*width: 940px;*/
    /*margin: 0 auto;*/
}

@font-face {
  font-family: "ShinGoPro-Medium";
  src: url("fonts/A-OTF-ShinGoPro-Medium_0.eot?") format('eot'),
       url("fonts/A-OTF-ShinGoPro-Medium_0.woff") format('woff'),
       url("fonts/A-OTF-ShinGoPro-Medium_0.otf")  format('opentype');
}
@font-face {
  font-family: "ShinGoPro-Heavy";
  src: url("fonts/A-OTF-ShinGoPro-Heavy.eot?") format('eot'),
       url("fonts/A-OTF-ShinGoPro-Heavy.woff") format('woff'),
       url("fonts/A-OTF-ShinGoPro-Heavy_0.otf")  format('opentype');
}
body.megrhythm {
    background: url(../img/bg01.png) repeat;
}

.sec_sns_wrp {
    background: #fff;
}

.sec_sns_wrp .ninja_onebutton_output_horizontal >div {
    clear: none;
    float: none;
    display: inline-block;
    text-align: right!important;
    padding: 5px;
}

.social_sp {
    display: none;
}

.sec_footer {
    text-align: center;
    position: relative;
}

.sec_footer .logo {
    display: inline-block;
    text-align: center;
    margin: 25px 0;
}

.sec_footer .to_top a {
    display: block;
    position: fixed;
    bottom: 0;
    right: 20px;
    width: 60px;
}

.sec_footer .to_top a img {
    width: 60px;
    height: auto;
}

.sec_footer .copy {
    color: #fff;
    margin: 10px 0;
    font-size: 90%;
}

.sec_footer .to_index {
    margin: 35px 0 10px;
}

a:hover {
    opacity: 0.7;
}

.container {
    /*width: 960px;*/
    padding: 0;
    margin: 0 auto;
}

.social_pc {
    margin: 5px 0;
}

.hide_sp {
    display: block;
}

.hide_pc {
    display: none;
}

.contents {
    width: 940px;
    margin: 0 auto;
}

.report .sec_sns {
    padding: 5px 5px 0;
}

.report .flexslider {
    margin: 0;
}

.sec_sns .ninja_onebutton.social_pc {
    display: inline-block;
    text-align: right;
}

.form .sec_01 {
    margin-top: 15px;
}

.form .sec_01 .row p {
    position: relative;
}

.form .sec_01 .row p em,
.form .sec_01 .row p a {
    position: absolute;
    display: inline-block;
    top: 242px;
    right: 0px
}

.form .sec_01 .row p a.logo_link {
    top: 190px;
    left: 250px
}

.form .sec_02 {
    padding: 0;
    margin: 0 auto;
}

.form .sec_02 .row {
    background: url(../img/form_02.png) 0 0 repeat-y;
    padding: 15px 80px;
}

.form .sec_02:after {
    content: "";
    background: url(../img/form_03.png) 0 100% no-repeat;
    width: 100%;
    display: block;
    height: 10px;
    padding: 0;
    margin: 0;
}

.form .sec_02 ul li {
    margin: 10px 0;
    display: table;
    width: 100%;
}

.form .sec_02 ul li span {
    display: table-cell;
    vertical-align: top;
}

.form .sec_02 ul li span:first-child {
    width: 25%;
}

.form .sec_02 .subBox {
    text-align: center;
}

.form .sec_02 .subBox input {
    text-align: center;
    padding: 5px 15px;
    background: #000;
    color: #fff;
    display: inline-block;
    margin: 10px auto;
    font-weight: bold;
    font-size: 125%;
}

.form .sec_02.txt .row>div {
    padding: 30px 15px 50px;
    text-align: center;
}

.form .sec_02.txt .row>div p {
    margin: 15px 0;
    font-size: 1.2em;
}

.form .privacy {
    font-size: 90%;
    color: #222;
    margin: 2%;
}

.form .privacy a {
    font-size: 80%;
    color: #002088;
    text-decoration: underline;
}

.index .sec_01 {
    margin-top: 15px;
}

.index .sec_01 .row p {
    position: relative;
}

.index .sec_01 .row p a,
.index .sec_01 .row p span {
    position: absolute;
    display: block;
}

.index .sec_01 .row p a.logo_link {
    top: 175px;
    left: 185px;
}

.index .sec_01 .row p .i01 {
    top: 1370px;
    right: 90px;
    width: 780px;
    display: table;
    height: 105px;
}

.index .sec_01 .row p #joke_area {
    position: relative;
    display: block;
    line-height: 1.2em;
    font-size: 2.2em;
    text-align: center;
    color: #f7ef15;
    display: table-cell;
    vertical-align: middle;
    height: 105px;
    width: 100%;
}

.index .sec_01 .row p #joke_area .ss {
    position: relative;
    display: block;
    font-size: 66%;
    line-height: 1.2em;
    font-weight: bold;
}

.index .sec_01 .row p #joke_area em {
    margin-top: 4px;
    color: #fff;
    font-size: 80%;
    line-height: 1.2em;
    display: block;
    text-align: right;
}

.index .sec_01 .row p .i02 {
    top: 690px;
    right: 0;
}

.index .sec_01 .row p .i03 {
    top: 1130px;
    right: 60px;
}

.index .sec_01 .row p .i04 {
    top: 1805px;
    right: 0;
}

.index .sec_01 .row p .i05 {
    top: 2000px;
    right: 500px;
}

.index .sec_01 .row p .i06 {
    top: 1500px;
    right: 540px;
}

.index .sec_01 .row p .i07 {
    top: 1500px;
    right: 85px;
}

.index .sec_01 .row p .i08 {
    top: 709px;
    left: 0px;
}

.index .sec_01 .row p .i09 {
    top: 1589px;
    right: 23px;
}
.index .sec_01 .row p .i10 {
    top: 1210px;
    right: 109px;
    width: 245px;
}
.index .sec_01 .row p .i11 {
    top: 1270px;
    right: 109px;
    width: 245px;
}
.index .sec_01 .row p .i10 img,.index .sec_01 .row p .i11 img{
    width: 100%;
}
.dojo .sec_01 {
    margin-top: 15px;
}

.dojo .sec_01 .row p {
    position: relative;
}

.dojo .sec_01 .row p em {
    position: absolute;
    display: block;
    bottom: -34px;
    left: 300px;
}

.dojo .sec_01 .row p .logo_link {
    position: absolute;
    display: block;
    top: 145px;
    left: 55px;
}

.dojo .sec_02 {
    padding: 0;
    margin: 0 auto;
}

.dojo .sec_02 .row {
    background: url(../img/PC_dojyo_02.png) 0 0 repeat-y;
    /*padding: 15px 80px;*/
}

.dojo .sec_02:after {
    content: "";
    background: url(../img/PC_dojyo_03.png) 0 100% no-repeat;
    width: 100%;
    display: block;
    height: 3px;
    padding: 0;
    margin: 0;
}

.dojo .sec_02 .row>div {
    padding: 15px 80px;
}

.dojo .sec_02 .row>div>h2 {
    font-size: 1.2em;
    text-align: center;
    color: #f7ef15;
    margin: 35px 0 15px;
}

.dojo .sec_02 .row>div section {
    color: #fff;
    position: relative;
    margin: 15px 0;
}

.dojo .sec_02 .row>div section h2 {
    font-size: 1.2em;
    margin: 6px 0;
}

.dojo .sec_02 .row>div section p {
    color: #f7ef15;
}

.dojo .sec_02 .row>div section .q {
    font-size: 1.2em;
    margin: 3px 0;
    color: #fff;
}

.dojo .sec_02 .row>div section .c {
    position: absolute;
    right: 0;
    top: 10px;
}

.dojo .sec_02 .row>div section .c input {
    position: absolute;
    top: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
}

.dojo .sec_02 .row>div section .c input[type="radio"] + label {
    display: inline-block;
    background-image: url(../img/PC_dojyo_b01.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    width: 90px;
    height: 35px;
    padding: 9px 15px;
    text-align: right;
    margin-left: 50px;
}

.dojo .sec_02 .row>div section .c input[type="radio"]:checked + label {
    background-image: url(../img/PC_dojyo_b02.png);
    color: #000;
    text-align: left;
}

.dojo .sec_02 .row>div .btn01 {
    text-align: center;
    margin: 20px 0;
}

.dojo .sec_02 .row>div .btn01:hover {
    opacity: 0.7;
}

.dojo .sec_02 .row .ans>p {
    color: #fff;
    display: none;
    text-align: center;
    margin: 80px 0 15px;
    font-size: 140%;
}

.dojo .sec_02 .row .ans>p span {
    font-size: 400%;
    font-weight: bold;
    display: block;
    margin: 20px 0
}

.dojo .sec_02 .row .ans_f {
    padding: 0;
    position: relative;
    margin: 0 0 -5px;
    display: none;
}

.dojo .sec_02 .row .ans_f p {
    position: relative;
}

.dojo .sec_02 .row .ans_f p a {
    position: absolute;
}

.dojo .sec_02 .row .ans_f .i02 {
    top: 85px;
    right: 0px;
}

.dojo .sec_02 .row .ans_f .i12 {
    top: 0;
    left: 0px;
}

.dojo .sec_02 .row .ans_f .i05 {
    bottom: 15px;
    right: 500px;
}

.dojo .sec_02 .row .ans_f .ans_t01 {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
}

.dojo .sec_03 {
    padding: 0;
    margin: 0 auto;
}

.dojo .sec_03 .row {
    background: url(../img/PC_dojyo_09.png) 0 0 repeat-y;
    /*padding: 15px 80px;*/
}

.dojo .sec_03:after {
    content: "";
    background: url(../img/PC_dojyo_10.png) 0 100% no-repeat;
    width: 100%;
    display: block;
    height: 3px;
    padding: 0;
    margin: 0;
}

.dojo .sec_03 h2 {
    font-size: 1.4em;
    margin: 46px 0 20px;
    text-align: center;
    font-weight: bold;
}

.dojo .sec_03 .w_box {
    width: 860px;
    display: table;
    background: #fff;
    border: 2px #000 solid;
    margin: 0 38px;
    min-height: 300px;
    text-align: center;
}

.dojo .sec_03 .w_box p {
    display: table-cell;
    min-height: 300px;
    vertical-align: middle;
}


/*.dojo .sec_03 .table_01{
    display: table-row;
    margin-top;
}*/

.dojo .sec_03 .l_txt {
    position: relative;
    margin-top: -60px;
    font-size: 1.2em;
    padding: 100px 500px 30px 50px;
    min-height: 600px;
}

.dojo .sec_03 .r_img {
    display: table-cell;
    position: absolute;
    left: auto;
    right: 0;
    bottom: 0;
}

.dojo .sec_03 .r_img img {
    margin-top: -60px;
}
.dojo .sec_03 .tensaku{
    position: relative;
    background: rgba(255,255,255,0.7);
    width: 90%;
    border-radius: 10px;
    margin: 4% 5%;
    padding: 2% 5%;
}
.dojo .sec_03 .tensaku .seito{
    background: #fff;
    /*margin: 10%;*/
    padding: 5%;
    font-size: 200%;
    border-radius: 10px;
}
.dojo .sec_03 .tensaku .seito span{
    display: block;
    text-align: right;
    margin: 3% 0 0;
    font-size: 75%;
}
.dojo .sec_03 .tensaku .kaitou{
    margin: 2% 0% 2% 30%;
    padding:2% 5%;
    font-size: 150%;
    min-height: 180px;
    font-family: "ShinGoPro-Medium";
}
.dojo .sec_03 .tensaku .t_img{
    position: absolute;
    bottom: 0;
    left: 3%;
}
.dojo .sec_04 {
    padding: 0;
    margin: 0 auto;}

.dojo .sec_04 .row {
    background: url(../img/PC_dojyo_09.png) 0 0 repeat-y;
    /*padding: 15px 80px;*/
    padding: 0 0 150px;
}

.dojo .sec_04 h2 {
    font-size: 1.4em;
    margin: 46px 0 20px;
    text-align: center;
    font-weight: bold;
}
.dojo .sec_04 div p{
    font-weight: bold;
    font-size: 125%;
    font-family: "ShinGoPro-Medium";
}
.dojo .sec_04 .ttl{
    margin-top: 25px;
}
.dojo .sec_04 .ttl h3{
    text-align: center;    
    font-size: 210%;
    font-weight: bold;
    font-family: "ShinGoPro-Heavy";
}
.dojo .sec_04 .w_box {
    text-align: center;
    position: relative;
    width: 100%;
    padding: 0 45px;
    margin: 15px 0;
    display: table;
}
.dojo .sec_04 .w_box:after{
    clear: both;
    content: "";
    display: table;
}
.dojo .sec_04 .w_box p {
    background: #fff;
    border: 2px #000 solid;
    width: 725px;
    min-height: 200px;
    padding: 80px 25px;
    display: table-cell;
    vertical-align: middle;
    font-size: inherit;
}
.dojo .sec_04 .w_box p .joke{
    /*height: 300px;*/
    font-family: "ShinGoPro-Medium";
    font-size: 180%;
    display: inline-block;
    width: 100%;
}
.dojo .sec_04 .w_box p .jokeby{
    /*height: 300px;*/
    /*vertical-align: middle;*/
    /*font-family: "ShinGoPro-Medium";*/
    display: inline-block;
    width: 100%;
    font-size: 120%;
    text-align: right;
    padding-top: 15px;
}
.dojo .sec_04 .w_box.box_01 p{
    /*min-height: 300px;*/
    padding-right: 60px;
    float: left;
    font-size: inherit;
    font-family: inherit;
}
.dojo .sec_04 .w_box.box_01 em{
    position: absolute;
    right: 35px;
    top: 50%;
}
.dojo .sec_04 .w_box.box_01 em img{
    display: block;
    margin: -50% 0 50%;    
}
.dojo .sec_04 .w_box.box_02 p{
    font-size: inherit;
    /*min-height: 300px;*/
    padding-left: 60px;
    float: right;
    font-family: inherit;
}
.dojo .sec_04 .w_box.box_02 em{
    display: block;
    position: absolute;
    left: 35px;
    top: 50%;
}
.dojo .sec_04 .w_box.box_02 em img{
    display: block;
    margin: -145px 0 145px;    
}
.dojo .sec_04 .bar_01 ,.dojo .sec_04 .bar_02{
    display: table;
    width: 100%;
    padding: 0 45px;
    margin: 15px 0;
}
.dojo .sec_04 .bar_01:before ,.dojo .sec_04 .bar_02:before{
    display: table-cell;
    content: "";
    width: 175px;
}
.dojo .sec_04 .bar_01 p,.dojo .sec_04 .bar_02 p{
    display: table-cell;
    width: 550px;
    background: #fff;
    border: 2px #000 solid;
    height: 45px;
    padding:0 4px;
    vertical-align: middle;
}
.dojo .sec_04 .bar_01 div,.dojo .sec_04 .bar_02 div{
    display: table-cell;
    padding: 0 0 0 10px;
    vertical-align: middle;

}

.dojo .sec_04 #bar_01_btn:hover,.dojo .sec_04 #bar_02_btn:hover{
    opacity: 0.7;
}
.dojo .sec_04 .bar_01:before{
    background: url(../img/PC_dojyo_23.png) 50% 0 no-repeat;

}
.dojo .sec_04 .bar_01 p em{
    background: url(../img/PC_dojyo_16.png) 0 0 repeat-x;
    vertical-align: middle;
    display: inline-block;
    width: 0%;
    height: 45px;
    margin: 4px 0;
    transition: all 1s ease-in-out;
    -webkit-transition: all 2s ease-in-out;
}
.dojo .sec_04 .bar_02 p em{
    background: url(../img/PC_dojyo_17.png) 0 0 repeat-x;
    vertical-align: middle;
    display: inline-block;
    width: 0%;
    height: 45px;
    margin: 4px 0;    
    transition: all 1s ease-in-out;
    -webkit-transition: all 2s ease-in-out;
}
.dojo .sec_05{
    height: 312px;
    background: url(../img/PC_dojyo_19.png) 50% 0 no-repeat;
    margin: -150px auto 0;

}
.dojo .sec_05 p{
    padding: 150px 350px 40px 75px;
    font-size: 150%;
    font-weight: bold;
    font-family: "ShinGoPro-Heavy";
}