@charset "UTF-8";

@import url('https://fonts.googleapis.com/css?family=Asap+Condensed:600');



/*@font-face {
font-family: 'FontAwesome';
src: url('../fonts/fontawesome-webfont.eot?v=4.3.0');
src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.3.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.3.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.3.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.3.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.3.0#fontawesomeregular') format('svg');
font-weight: normal;
font-style: normal;
}
*/



/*additional reset
---------------------------------------------------*/
*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

body.safari #content, body.safari #footer {/*サファリでリンク先から戻った時文字が拡大する対応*/
    -webkit-text-size-adjust: 100%;
}



/** link **/

a:link {
    color: #1c7fbd;
    text-decoration: underline;
}

a:visited {
    color: #1c7fbd;
}

a:hover,
a:active {
    text-decoration: none;
}
.taC{
    text-align: center;
}

/*初期設定
----------------------------------------------------*/
#wrapper{
    width: 100%;
    padding: 0 0 0 0;
    overflow: hidden;
    color: #222;
    background: #fff;
}




#content {
    margin:0 auto;
    width: 700px;
    text-align: left;
    background-color: #fff;
    padding:15px 30px;
}

.content-main{
    /*width: 700px;*/
}

img.pics {
    max-width: 100%;
}


.ie8 img{
    width: auto;
}


/*clearfix*/
.clearfix2 {
    clear: both;
    zoom: 1;
}

.clearfix3:after {
    content: "";
    display: block;
    clear: both;
}
/*.buruburu {
animation: hurueru .2s  infinite;
}

@keyframes hurueru {
0% {transform: translate(0px, 0px) }
25% {transform: translate(2px, 0px)}
50% {transform: translate(0px, 0spx)}
75% {transform: translate(0px, 2px) }
100% {transform: translate(0px, 0px) }
}*/
/*layout
----------------------------------------------------*/

#header{
    height: 85px;
    border-bottom: 1px solid #eee;
    position: relative;
}



.brand{
    position: absolute;
    top:20%;
    display: block;
    width: 100%;
    font-family: 'Asap Condensed', sans-serif;
    color: #222;
    font-size: 40px;
    text-align: center;
}



h1 {
    text-align: center;
    font-size: 34px;
    font-weight: 700;
    line-height: 1.4;
    padding: 10px 0;
    border-top: 2px #ddd solid;
    border-bottom: 2px #ddd solid;
    margin-bottom: 0px;
}



h2{
    padding:10px 0;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.3;
    margin-bottom: 20px;
}

.title1{border-bottom: 3px solid #ff9a9a;}
.title2{border-bottom: 3px solid #22CC8B;}
.title3{border-bottom: 3px solid #ff9a9a;}
.title4{border-bottom: 3px solid #ff9a9a;}

h3{
    padding:10px 0;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.3;
    margin-bottom: 10px;
    border-bottom: 2px solid #22CC8B;
}



.review-title{
    /* border-bottom: 2px solid #ecaacc;*/
    text-align: center;
    /* background-color: #ecaacc;*/
    color: #ffffff;
    margin: 0;
    background: -webkit-repeating-linear-gradient(-45deg, #f5edfd, #f5edfd 5px, #fdfcff 5px, #fdfcff 10px);
    background: repeating-linear-gradient(-45deg, #f5edfd, #f5edfd 5px, #fdfcff 5px, #fdfcff 10px);
    color: #4a1086;
    border: solid 2px #ff9a9a;;


}

p{
    margin-bottom: 20px;
    word-wrap: break-word;
}

.pics{
    margin-bottom: 10px;
}

.fcP{
    color: #22CC8B;
}
.ttl{
    text-align: center;
}

.caption{
    font-size: 0.8em;
}
.table-wrap table img{
    max-width: 100%;
    padding: 5% 0;
    margin: 0 auto;
}
.wrighter_box{
    padding: 10px 2% 5px;
    background: #ffe9e9;
    margin-bottom: 20px;
}
.wrighter{
    width: 100%;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;

}
.wrighter p:first-child{
    width: 25%;

}
.wrighter p:last-child{
    width: 70%;

}

.fwB{
    font-weight: bold;
}

.mt20{
    margin-top: 20px;
}

.marker-yellow{
    background: linear-gradient(transparent 60%, #fff799 0%);
    font-weight: bold;
    border-radius:6px;
}

.ranking-paragraph{
    display: none;
}

figure{
    margin-bottom: 20px;
}
figcaption{
    font-size: .8em;
    color: #999;
    text-align: center;
}
.btn{
    width:50%;
    height:50px;
    line-height:50px;
    margin: 0 auto 50px;
}
.btn a{
    display:block;
    width:100%;
    height:100%;
    text-decoration: none;
    background: #ff6659;
    text-align:center;
    color:#FFFFFF;
    font-size:20px;
    font-style:oblique;
    box-shadow: 3px 3px 0px 0px #f35346;
    border-radius: 5px;
}

.review{
    border-right: solid 2px #ff9a9a;
    border-bottom: solid 2px #ff9a9a;
    border-left: solid 2px #ff9a9a;
    margin-bottom: 20px;
    padding: 15px 15px 0px 15px;
}

figure{
    text-align: center;
}


.ranking-nomal{
    font-size: 1rem;
    color: #222;

}
@media only screen and (max-width:839px){
    .wrighter p:last-child{
        font-size: 0.7em;

    }
    .ttl{
        text-align: center;
        font-size: 1em;
    }
    .btn{
        width:80%;
        height:50px;
        line-height:50px;
        margin: 0 auto 50px;
    }
}
.box-voice{
    display: flex;
}

.gray-box{
    /*border: 1px solid #eee;
    background: #f9f9f9;*/
    padding: 1em;
    color: #555;
    margin-bottom: 20px;
    word-wrap: break-word;
    font-size: .90em;
}
.gray-box{
    font-weight:bold;
}
.gray-box p, .gray-box figure{
    margin-bottom: 0px;
}

.gray-box a{
    display: inline-block;
    text-decoration: none;
    border: none;
    padding: .5em 1em;
    background: #287ab7;
    border-radius: 10px;
    border: 2px solid #0981b5;
    color: #015281;
    font-size: 1.2em;
    font-weight: 700;
    line-height: 1.2;
    text-shadow:
        0 0 25px #edf8ff,
        0 0 20px #edf8ff,
        0 0 0.40px #edf8ff;
    text-align: center;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#b7deed+0,71ceef+50,21b4e2+51,b7deed+100;Shape+1+Style */
    background: #b7deed; /* Old browsers */
    background: -moz-linear-gradient(top, #b7deed 0%, #71ceef 50%, #21b4e2 51%, #b7deed 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #b7deed 0%,#71ceef 50%,#21b4e2 51%,#b7deed 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #b7deed 0%,#71ceef 50%,#21b4e2 51%,#b7deed 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b7deed', endColorstr='#b7deed',GradientType=0 ); /* IE6-9 */
}
.gray-box_orange a {
    display: inline-block;
    text-decoration: none;
    border: none;
    padding: .5em 1em;
    border-radius: 10px;
    border: 2px solid #ff7a1d;
    color: #f56c0d;
    font-size: 1.2em;
    font-weight: 700;
    line-height: 1.2;
    text-shadow: 0 0 25px #fff4ed, 0 0 20px #fff4ed, 0 0 0.4px #fff4ed;
    text-align: center;
    background: #b7deed;
    background: linear-gradient(to bottom, #edd2b7 0%,#ffe1b3 50%,#f3a76f 51%,#edd7b7 100%);
    background: -webkit-linear-gradient(to bottom, #edd2b7 0%,#ffe1b3 50%,#f3a76f 51%,#edd7b7 100%);
    background: -moz-linear-gradient(to bottom, #edd2b7 0%,#ffe1b3 50%,#f3a76f 51%,#edd7b7 100%);
}
.gray-box_green a {
    display: inline-block;
    text-decoration: none;
    border: none;
    padding: .5em 1em;
    background: #287ab7;
    border-radius: 10px;
    border: 2px solid #01811e;
    color: #01811e;
    font-size: 1.2em;
    font-weight: 700;
    line-height: 1.2;
    text-shadow: 0 0 25px #edffee, 0 0 20px #edffee, 0 0 0.4px #edffee;
    text-align: center;
    background: #b7deed;
    background: -moz-linear-gradient(top, #b7deed 0%, #71ceef 50%, #21b4e2 51%, #b7deed 100%);
    background: -webkit-linear-gradient(top, #b7deed 0%,#71ceef 50%,#21b4e2 51%,#b7deed 100%);
    background: linear-gradient(to bottom, #dfffe1 0%,#71ef7b 50%,#54e43b 51%,#b7edbb 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b7deed', endColorstr='#b7deed',GradientType=0 );
}
.compare-box{
    font-size: 18px;
    line-height: 30px;
}
.compare-box p{
    display: inline-flex;
    flex-wrap:wrap;
}
.compare-box span{
    word-break: keep-all;
}


.user-name{
    color: #fea3cc;
}

#content a.cv-link:link,
#content a.cv-link:visited,
#content a.cv-link:hover,
#content a.cv-link:active
{
    font-size:24px;
    color: #13b5b1;
    font-weight: bold;
}

ul,li{
    /*list-style: disc;*/
}


ul.points{
    border:1px solid #eee;
    background: #f9f9f9;
    margin:0px 0 10px;
    padding: 1em 1em 1em 2em;
    font-size: .9em;
}

/*table style*/

.table-blue{
    border:1px solid #ccc;
}
.table-blue p{margin: 0;}
.table-blue th{
    vertical-align: middle;
    background:#e03b6f;
    color: #fff;
    font-weight:bold;
    padding:10px;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
}
.table-blue td{
    vertical-align: middle;
    line-height:1.3;
    background:#fff;
    padding:0.4em 0.2em;
    border-top:1px solid #ccc;
    border-right:1px solid #ccc;
    border-bottom:1px solid #ccc;
}

.post-date{
    color: #aaa;
    /* padding: .5em; */
    font-size: 12px;
    margin: 8px 0px 15px;
}


.customer-voice{
    padding: 16px;
    background: #ffefe9;
    margin-bottom: 20px;
}



/*SNS指定*/
.sns a:link,
.sns a:visited,
.sns a:hover,
.sns a:active {
    color: #fff;
    text-decoration: none;
    border-bottom: none;
}

.sns ul{
    display: flex;
    flex-flow: wrap;
    margin: 20px 0;
}
.sns li{
    display: flex;
    min-width: 50px;
    margin-right: 10px;
}

.sns ul li .fa-hatebu:before {
    content: "B!";
    font-family: Verdana;
    font-weight: bold;
    font-style: normal;
}

.sns_icon {
    width: 130px;
    height: 40px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: bold;
    padding: 9px 0;
    text-align: center;
    margin-bottom: 10px;
}

.sns .vsbl-mb{margin-left: .2em;}

.facebook_back{
    background-color: #305097;
}

.twitter_back{
    background-color: #55acee;
}

.google_back{
    background-color: #db4a39;
}

.hatena_back{
    background-color: #00a4de;
}
.sns_line{width: 130px; height: auto;}



/*----------- スライダー ------------*/


/*画像ブロック*/
#main-gallery{
    width: 100%;
    height: auto;
    position: relative;
    margin-bottom:20px;
}


/*３枚画像の共通設定*/
#slide1,#slide2,#slide3 {
    -webkit-animation-duration: 10s;	/*実行する時間。「s」は秒の事。*/
    animation-duration: 10s;			/*同上*/
    -webkit-animation-iteration-count:infinite;	/*実行する回数。「infinite」は無限に繰り返す意味。*/
    animation-iteration-count:infinite;			/*同上*/
}

/*slide1*/
#slide1 {
    -webkit-animation-name: slide1;		/*上で設定しているキーフレーム（keyframes）の名前*/
    animation-name: slide1;				/*同上*/
    position: relative;
    width: 100%;
    height: auto;
}

/*slide2*/
#slide2 {
    -webkit-animation-name: slide2;		/*上で設定しているキーフレーム（keyframes）の名前*/
    animation-name: slide2;				/*同上*/
    position: absolute;
    left:0px;
    top:0px;
    width: 100%;
    height: auto;
}

/*slide3*/
#slide3 {
    -webkit-animation-name: slide3;		/*上で設定しているキーフレーム（keyframes）の名前*/
    animation-name: slide3;				/*同上*/
    position: absolute;
    left:0px;
    top:0px;
    width: 100%;
    height: auto;
}


/*slide1*/
@keyframes slide1 {
    0% {opacity: 0;}
    10% {opacity: 1;}
    30% {opacity: 1;}
    40% {opacity: 0;}
    100% {opacity: 0;}
}

/*slide2*/
@keyframes slide2 {
    0% {opacity: 0;}
    30% {opacity: 0;}
    40% {opacity: 1;}
    60% {opacity: 1;}
    70% {opacity: 0;}
    100% {opacity: 0;}
}

/*slide3*/
@keyframes slide3 {
    0% {opacity: 0;}
    60% {opacity: 0;}
    70% {opacity: 1;}
    90% {opacity: 1;}
    100% {opacity: 0;}
}
/*ボタン*/
.btn-box{
    margin:20px auto 40px;
    text-align: center;
    /*width: 300px;*/
}
.btn-box img{
    max-width: 100%;
}

a.btn{
    text-decoration: none;
    display: inline-block;
    border: none;
    width: 100%;
    padding: .8em 1em;
    background: #287ab7;
    border-radius: 10px;
    border: 2px solid #0981b5;
    color: #00479d;
    font-size: 1.2em;
    font-weight: 700;
    text-shadow:
        0 0 25px #edf8ff,
        0 0 20px #edf8ff,
        0 0 0.40px #edf8ff;
    text-align: center;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#b7deed+0,71ceef+50,21b4e2+51,b7deed+100;Shape+1+Style */
    background: #b7deed; /* Old browsers */
    background: -moz-linear-gradient(top, #b7deed 0%, #71ceef 50%, #21b4e2 51%, #b7deed 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #b7deed 0%,#71ceef 50%,#21b4e2 51%,#b7deed 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #b7deed 0%,#71ceef 50%,#21b4e2 51%,#b7deed 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b7deed', endColorstr='#b7deed',GradientType=0 ); /* IE6-9 */
}

.btn-box a:hover,
.btn-box a:active{
    opacity: .7;
    transition: 1s;
}

a.cvn{
    display: block;
    position: relative;
    /*padding-left: 20px;*/
}
/*.arw{
display: block;
position: absolute;
top:40px;
left:-20px;
-webkit-animation: arwmove 1.2s infinite;
animation: arwmove 1.2s infinite;
z-index: 10;
width: 76px;
}*/

img.btn{
    -webkit-animation: btnmove 2s infinite;
    animation: btnmove 2s infinite;
    z-index: 5;
}

@-webkit-keyframes arwmove {
    0% {left:-50px;}
    40% {left:-20px;}
    100% {left:-50px;}
}

@-webkit-keyframes btnmove {
    0% {transform: scale(1.0);}
    40% {transform: scale(1.05);}
    100% {transform: scale(1.0);}
}

@keyframes arwmove {
    0% {left:-50px;}
    40% {left:-20px;}
    100% {left:-50px;}
}

@keyframes btnmove {
    0% {transform: scale(1.0);}
    40% {transform: scale(1.05);}
    100% {transform: scale(1.0);}
}


/*共通パーツ*/
.ref{
    font-size: .8em;
    color: #999;
}
#content .mt40{
    margin-top: 40px;
}
#content .mt30{
    margin-top: 30px;
}
#content .mt20{
    margin-top: 20px;
}
#content .mt10{
    margin-top: 10px;
}
.mb0{margin-bottom: 0px;}
.mb20{margin-bottom: 20px;}
.pr10{padding-right: 10px;}
.ml20{margin-left: 20px;}

#content .pb30{padding-bottom: 30px;}
#content .tac{
    text-align: center;
}
#content .tar{
    text-align: right;
}

#content .red{
    color: #fa1ea0;
    font-weight: bold;
}

#content .redl{
    color: #ff6659;
    font-weight: bold;
}

#content .light-pink{
    color: #fcccdf;
}
#content .pink{
    color: #fcccdf;
}

#content .blue{
    color: #0066ff;
}
#content .marker{
    background: linear-gradient(transparent 0%, #fdfb70 0%);
    color:#ff4433;
    font-size: 18px;
    font-weight: bold;
}

#content .uline{
    text-decoration: underline;
}

#content .black{
    color: #000;
    font-weight: bold;
}

.green{
    color: #009944;
}
.smaller{font-size: .8em;}

.gray{color: #ddd}

#content .wavy { background:url(../img/wavy.png) bottom repeat-x; }

#content .bld{
    font-weight: bold;
}
.tx-m{font-size: 14px;}
#content .tx-s{
    font-size: 12px;
}

.tx-l{font-size: 18px;}

#content .tx-19{font-size: 19px;}
#content .tx-24{font-size: 24px;}

.right{float:right;}

.show-sp{display: none;}
.show-br-sp{display: none;}

.blinking{
    -webkit-animation:0.5s linear 0s alternate none infinite running blink;
    -moz-animation:0.5s linear 0s alternate none infinite running blink;
    animation:0.5s linear 0s alternate none infinite running blink;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    19.9% { opacity: 0; }
    20% { opacity: 1; }
    100% { opacity: 1; }
}
@-moz-keyframes blink{
    0% {opacity:0;}
    19.9% { opacity: 0; }
    20% { opacity: 1; }
    100% { opacity: 1; }
}
@keyframes blink{
    0% {opacity:0;}
    19.9% { opacity: 0; }
    20% { opacity: 1; }
    100% { opacity: 1; }
}


.block-voice{
    margin:20px 0;
    padding: 30px 20px 20px 30px;

    background: #fefaf2 url(../img/quote.png) no-repeat 10px 10px;
    /*border: 1px solid #f2af29;*/
}


#content .ref{font-size: 12px;}/*出典用*/
#content figcaption.ref a:link,
#content figcaption a:link,
#content figcaption a:hover,
#content figcaption a:active
{color: #666; text-decoration: underline;}





/*footer*/
#footer{
    padding: 30px 10px 0;
}


#footer p{
    text-align: center;
    color: #999;
    line-height: 1.5;
    font-size:12px;
}

#footer .tx-ss{
    font-size: 11px;
}


/*レスポンシブ用*/

/*@media only screen and (min-width:840px){*//*PC表示で反映させる設定*/
@media only screen and (min-width:840px){/*PC表示で反映させる設定*/
    .box-voice img{
        margin-right: 20px;
    }
    .box-voice p{margin-top: 20px;}
}

@media only screen and (max-width:999px){/*コンテンツ幅の調整*/
    #content{width: 100%;
        padding:15px;}

}

/*@media only screen and (max-width:839px){*//*スマホ表示で反映させる設定*/
@media only screen and (max-width:839px){/*スマホ表示で反映させる設定*/
    .content-main{width: 100%;}
    img.pics{width: 100%; height: auto;}
    .header-inner{width: 100%}
    h1{font-size: 21px;}
    h2{font-size: 23px;}
    h3{font-style: 17px;}
    .sns{display: none;}
    .box-voice{
        flex-direction: column;
    }
    .table-blue{width: 650px;}
    .table-wrap{
        width: 100%;
        overflow:auto;
        /*overflow-x:scroll;*/
    }
    .show-sp{display: block;}
}


.no1_linkbtn{
    display: none;
}
/*.table-wrap table th a{
color: #fff;
}*/
@media only screen and (max-width:499px){/*ボタンの改行を調整*/
    .show-br-sp{display: inline-block;}
    .gray-box a,.gray-box_orange a,.gray-box_green a{width: 100%;}

}

.arrow{
    position: relative;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
}
.arrow::before,
.arrow::after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.arrow1::before{
    left: 260px;
    width: 21px;
    height: 2px;
    background: #ffffff;
    transition: all 0.8s ease;
}
.arrow1::after{
    left: 260px;
    width: 18px;
    height: 18px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: all 0.8s ease;
}
.arrow1:hover::before{
    left: 260px;
    width: 21px;
    height: 2px;
    background: #2FAFB1;
    transition: all 0.8s ease;
}
.arrow1:hover::after{
    left: 260px;
    width: 18px;
    height: 18px;
    border-top: 2px solid #2FAFB1;
    border-right: 2px solid #2FAFB1;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: all 0.8s ease;
}
@media only screen and (max-width:839px){
    .no1_linkbtn{
        display: block;
        position: fixed;
        right:0;
        bottom: 0;
        z-index: 5000;
        width:100%;
    }
    .no1_linkbtn img{
        width: 100%;
    }
    .arrow{
        position: relative;
        display: inline-block;
        padding: 0 0 0 16px;
        color: #000;
        vertical-align: middle;
        text-decoration: none;
        font-size: 15px;
    }
    .arrow::before,
    .arrow::after{
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        content: "";
        vertical-align: middle;
    }
    .arrow1::before{
        left: 140px;
        width: 14px;
        height: 2px;
        background: #ffffff;
        transition: all 0.8s ease;
    }
    .arrow1::after{
        left: 140px;
        width: 12px;
        height: 12px;
        border-top: 2px solid #ffffff;
        border-right: 2px solid #ffffff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        transition: all 0.8s ease;
    }
    .arrow1:hover::before{
        left: 140px;
        width: 14px;
        height: 2px;
        background: #ffffff;
        transition: all 0.8s ease;
    }
    .arrow1:hover::after{
        left: 140px;
        width: 12px;
        height: 12px;
        border-top: 2px solid #ffffff;
        border-right: 2px solid #ffffff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        transition: all 0.8s ease;
    }
    .ranking-paragraph{
        margin-bottom: 5px;
        text-align: center;
        display: block;
        font-size: 0.9rem;
        color: #9d9a93;
    }

}

/*form*/
.searchform {
    display: inline-block;
    text-align: left;
}
.searchtable {
    border-collapse: collapse;
    font-size: 15px;
    line-height: 25px;
    border: none !important;
    border: 1px solid #cfcfcf;
}

.serchtable-border{
    border-top: 1px solid #cfcfcf;
    border-right: 1px solid #cfcfcf;
    border-bottom: 1px solid #cfcfcf;
    padding: 10px;
}



.searchbox {
    font-size: 15px;
    padding: 5px;
    border: 1px solid #DDD;
    border-radius: 5px;
    width: 80%;
}
form input {
    vertical-align: middle;
}

.thisinfotable td, th {
    font-size: 12px;
    line-height: 20px;
}
.thisinfotable td, th {
    border: 1px solid #cdd4d0;
    font-size: 15px;
    line-height: 20px;
    padding: 10px;
}


.border-none{
    border-style: none;
}
.searchtable .searchtabletitle {
    background-color: #f6f6f6;
    min-width: 120px;
    border:1px solid #cfcfcf;
    padding: 10px;
}
.searchtable .searchbutton {
    background-color: #fb8bc6;
    border: none;
    color: white;
    padding: 10px 50px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    line-height: 15px;
    margin-top: 10px;
}
.searchtable .searchcenter {
    text-align: center;
}
.objecttable tr, td {
    border: none;
}

.searchordercontainer dd{
    display: inline-block;
    margin-left: 20px;
    margin-top:0px;
    line-height: 20px;
}
.searchordercontainer a{
    text-decoration: none;
}

.objecttable{
    border:2px solid #ccc;
    text-align:center;
    margin: auto auto 50px auto;
    width: 95%;
}
.objecttable tr, td{
    border:none;
    padding: 10px;
}
.objecttitle{
    font-size:24px;
    font-weight:bold;
    text-align: center;
    width: 95%;
    margin: 0 auto;
    background-color: #22CC8B;
    border: 1px solid #cfcfcf;
    border-bottom: none;
    color: #fff;
}
.objectimg p{
    text-align: center;
}
.objectmaintext {
    font-size:20px;
    font-weight: bold;
}
.thisinfotable {
    width: 100%;
    text-align: center;
    border-collapse: collapse;
}
.thisinfotable td th{
    border: 1px solid #cfcfcf;
    font-size: 15px;
    line-height: 20px;
}


.oflBtn{
    width: 65%;
    margin: 0 auto;
}

.fontsizenormal {
    font-size:16px;
}

.btn_search{
    width: 95%;
    margin: 0 auto;
    text-align: center;
}
@media screen and (max-width: 575px) {
    .fontsizenormal {
        font-size:0.8em;
    }
}

.searchordercontainer dd{
    display: inline-block;
    margin-left: 20px;
    margin-top:0px;
    line-height: 20px;
}
.searchordercontainer a{
    text-decoration: none;
}


@media (max-width: 620px){
    .kaso_pro_tbl table {
        width: 100%;
        margin: 5% auto;
    }
    /*ランキング表*/
    .rankTable {
        background: #eaf7fd;
        width: 800px;
        /* margin: 3% auto; */
        padding: 1.5% 0 1.5% 0;
        box-sizing: border-box;
    }
    .rankTable table {
        background: #ffffff;
        width: 100%;
        margin: auto;
        box-sizing: border-box;
        padding: 1%;
        border-radius: 5px;
    }
    .rankTable table tr th {
        background: #22CC8B;
        color: #fff;
        border-radius: 0;
        /*	padding: 0.5% 0;*/
        font-weight: bold;
    }
    .rankTable table tr:first-child th {
        background: #ffffff;
        border-radius: 0;
        padding: 1% 0 1% 0;
        font-size: 1.5rem;
        vertical-align: top;
        line-height: 1;
        border-right: 2px dotted #cdd4d0;
    }
    .rankTable table tr:last-child th {
        background: #ffffff;
        border-radius: 0;
        padding: 3% 0 1% 0;
        font-size: 1.5rem;
        vertical-align: top;
        line-height: 1;
        border-right: 2px dotted #cdd4d0;
    }
    .rankTable table tr:first-child th:last-child,
    .rankTable table tr:last-child th:last-child {
        border-right: none;
    }
    .rankTable table tr:first-child th:nth-child(1){
        color: #dba728;
        text-align: center;
        border-top: none;
        background: #ffffe1;
    }
    .rankTable table tr:first-child th:nth-child(2) {
        color: #9d9a93;
        text-align: center;
    }
    .rankTable table tr:first-child th:nth-child(3) {
        color: #c56e6e;
        text-align: center;
    }

    .rankTable table tr:last-child th:nth-child(1){
        color: #dba728;
        text-align: center;
        background: #ffffe1;
    }
    .rankTable table tr:last-child th:nth-child(2) {
        color: #9d9a93;
        text-align: center;
    }
    .rankTable table tr:last-child th:nth-child(3) {
        color: #c56e6e;
        text-align: center;
    }
    .rankTable table tr:first-child th:nth-child(4) {
        color: #74cccc;
        text-align: center;
    }
    .rankTable table tr:first-child th:nth-child(5){
        color: #74cccc;
        text-align: center;
    }
    .rankTable table tr:first-child th:nth-child(6){
        color: #74cccc;
        text-align: center;
    }
    .rankTable table tr:last-child th:nth-child(4) {
        color: #74cccc;
        text-align: center;
    }
    .rankTable table tr:last-child th:nth-child(5){
        color: #74cccc;
        text-align: center;
    }
    .rankTable table tr:last-child th:nth-child(6){
        color: #74cccc;
        text-align: center;
    }
    .rankTable table tr:first-child th a,
    .rankTable table tr:last-child th a {
        font-size: 1rem;
    }
    .rankTable table tr:first-child th a img,
    .rankTable table tr:last-child th a img {
        padding: 5% 0;
    }


    .rankTable td {
        border-right: 2px dotted #cdd4d0;
        text-align: center;
        padding: 3%;
        width: calc(100% / 5);
        font-size: 0.8rem;
        vertical-align: top;
    }
    .rankTable td:first-child{
        background: #ffffe1;
    }
    .rankTable td:last-child {
        border-right: none;
    }
    td.txt_only {
        font-size: 1.5rem;
        color: #333333;
        padding: 2.5% 0;
    }
    span.ex, span.go, span.so, span.ba {
        font-weight: normal;
        line-height: 70px;
    }
    span.ex {
        font-size: 5rem;
        color: #f8525d;
    }
    span.go {
        font-size: 3.5rem;
        color: #7cd0dd;
    }
    span.so {
        font-size: 3.2rem;
        color: #f5c132;
    }
    span.ba {
        font-size: 4rem;
        color: #7a7a7a;
    }
    span.txt_ex {
        font-weight: bold;
        color: #f8525d;
    }
    /*.scrollok {
    display: none;
}*/

    span.ex, span.go, span.so, span.ba {
        line-height: 50px;
    }
    span.ex {
        font-size: 3.5rem;
    }
    span.go {
        font-size: 2.5rem;
    }
    span.so {
        font-size: 2.2rem;
    }span.ba {
        font-size: 3rem;
    }
    .rankTable table tr th {
        font-size: 1rem;
    }
    #bn1{
        border-top: none;
    }

}

@media (max-width: 620px){
    .rankTable {
        /*padding: 20px 0 0 0;*/
        border: 10px solid #CDFBFF;
        border-top: 10px solid #CDFBFF;
        border-width: 10px;
        overflow-x: scroll;
        width: 100%;
        box-sizing: border-box;
        /*margin: 0 0 30px 0;*/
        background: #ffffff;
    }
    .rankTable table {
        width: 540px;
    }
    .rankTable table tr.sp_th {
        /*display: block;*/
        height: 28px;
    }
    .rankTable table tr.sp_th th {
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        width: calc(100% - 12%);
        text-align: center;
        padding-top: 5px;
    }
    .scrollok {
        display: block;
        text-align: center;
        color: #0b4685;
        /*position: absolute;*/
        right: 0;
        left: 0;
        background: #edf5fa;
        width: 100%;
        margin: auto;
    }
    span.ex, span.go, span.so, span.ba {
        line-height: 50px;
    }
    span.ex {
        font-size: 3.5rem;
    }
    span.go {
        font-size: 2.5rem;
    }
    span.so {
        font-size: 2.2rem;
    }span.ba {
        font-size: 3rem;
    }
    .rankTable table tr th {
        font-size: 1rem;
    }



}
/*ランキング表*/
.kaso .kaso_pro_tbl th,
.kaso .kaso_pro_tbl td{
    border: 1px solid #cccccc;
    font-size: 1rem;
}
.kaso_pro_tbl table {
    width: 100%;
    margin: 5% auto;
}
@media (min-width: 620px){
    .kaso_pro_tbl table {
        width: 100%;
        margin: 5% auto;
    }
    /*ランキング表*/
    .rankTable {
        background: #eaf7fd;
        width: 800px;
        margin: 3% auto 0px;
        padding: 1.5% 0 1.5% 0;
        box-sizing: border-box;
    }
    .rankTable table {
        background: #ffffff;
        width: 100%;
        margin: auto;
        box-sizing: border-box;
        padding: 1%;
        border-radius: 5px;
    }
    .rankTable table tr th {
        background: #22CC8B;
        color: #fff;
        border-radius: 0;
        /*	padding: 0.5% 0;*/
        font-weight: bold;
    }
    .rankTable table tr:first-child th,
    .rankTable table tr:last-child th {
        background: #ffffff;
        border-radius: 0;
        padding: 3% 0;
        font-size: 1.5rem;
        vertical-align: top;
        line-height: 1;
        border-right: 2px dotted #cdd4d0;
    }
    .rankTable table tr:first-child th:last-child,
    .rankTable table tr:last-child th:last-child {
        border-right: none;
    }
    .rankTable table tr:first-child th:nth-child(1){
        color: #dba728;
        text-align: center;
        background: #ffffe1;
    }
    .rankTable table tr:first-child th:nth-child(2) {
        color: #9d9a93;
        text-align: center;
    }
    .rankTable table tr:first-child th:nth-child(3) {
        color: #c56e6e;
        text-align: center;
    }

    .rankTable table tr:last-child th:nth-child(1){
        color: #dba728;
        text-align: center;
        background: #ffffe1;
    }
    .rankTable table tr:last-child th:nth-child(2) {
        color: #9d9a93;
        text-align: center;
    }
    .rankTable table tr:last-child th:nth-child(3) {
        color: #c56e6e;
        text-align: center;
    }
    .rankTable table tr:first-child th:nth-child(4) {
        color: #74cccc;
        text-align: center;
    }
    .rankTable table tr:first-child th:nth-child(5){
        color: #74cccc;
        text-align: center;
    }
    .rankTable table tr:first-child th:nth-child(6){
        color: #74cccc;
        text-align: center;

    }
    .rankTable table tr:last-child th:nth-child(4) {
        color: #74cccc;
        text-align: center;

    }
    .rankTable table tr:last-child th:nth-child(5){
        color: #74cccc;
        text-align: center;

    }
    .rankTable table tr:last-child th:nth-child(6){
        color: #74cccc;
        text-align: center;
    }
    .rankTable table tr:first-child th a,
    .rankTable table tr:last-child th a {
        font-size: 1rem;
    }
    .rankTable table tr:first-child th a img,
    .rankTable table tr:last-child th a img {
        padding: 5% 0;
    }


    .rankTable td {
        border-right: 2px dotted #cdd4d0;
        text-align: center;
        padding: 3%;
        width: calc(100% / 5);
        font-size: 0.9rem;
        vertical-align: top;
    }
    .rankTable td:first-child{
        background: #ffffe1;
    }
    .rankTable td:last-child {
        border-right: none;
    }
    td.txt_only {
        font-size: 1.5rem;
        color: #333333;
        padding: 2.5% 0;
    }
    span.ex, span.go, span.so, span.ba {
        font-weight: normal;
        line-height: 70px;
    }
    span.ex {
        font-size: 5rem;
        color: #f8525d;
    }
    span.go {
        font-size: 3.5rem;
        color: #7cd0dd;
    }
    span.so {
        font-size: 3.2rem;
        color: #f5c132;
    }
    span.ba {
        font-size: 4rem;
        color: #7a7a7a;
    }
    span.txt_ex {
        font-weight: bold;
        color: #f8525d;
    }
    /*.scrollok {
    display: none;
}*/

    span.ex, span.go, span.so, span.ba {
        line-height: 50px;
    }
    span.ex {
        font-size: 3.5rem;
    }
    span.go {
        font-size: 2.5rem;
    }
    span.so {
        font-size: 2.2rem;
    }span.ba {
        font-size: 3rem;
    }
    .rankTable table tr th {
        font-size: 1rem;
    }
}






@media (min-width: 620px){
    .rankTable {
        /*padding: 20px 0 0 0;*/
        border: 10px solid #CDFBFF;
        border-top: 10px solid #CDFBFF;
        border-width: 10px;
        /*overflow-x: scroll;*/
        width: 100%;
        box-sizing: border-box;
        /*margin: 0 0 20px 0;*/
        background: #ffffff;
    }
    .rankTable table {
        width: 100%;
    }
    .rankTable table tr.sp_th {
        /*display: block;*/
        height: 28px;
    }
    .rankTable table tr.sp_th th {
        /*	position: absolute;*/
        left: 0;
        right: 0;
        margin: auto;
        width: calc(100% - 20px);
        text-align: center;
        padding-top: 5px;
    }
    .scrollok {
        display: block;
        text-align: center;
        color: #0b4685;
        /*position: absolute;*/
        right: 0;
        left: 0;
        background: #edf5fa;
        width: 100%;
        margin: auto;
    }
    span.ex, span.go, span.so, span.ba {
        line-height: 50px;
    }
    span.ex {
        font-size: 3.5rem;
    }
    span.go {
        font-size: 2.5rem;
    }
    span.so {
        font-size: 2.2rem;
    }span.ba {
        font-size: 3rem;
    }
    .rankTable table tr th {
        font-size: 1rem;
    }
}
/*ランキング表*/
.kaso .kaso_pro_tbl th,
.kaso .kaso_pro_tbl td{
    border: 1px solid #cccccc;
    font-size: 1rem;
}
.kaso_pro_tbl table {
    width: 100%;
    margin: 5% auto;
}

@media (max-width: 380px){
    .rankTable table tr.sp_th th {
        width: calc(100% - 12.9%);
    }
}

@media (max-width: 330px){
    .rankTable table tr.sp_th th {
        width: calc(100% - 14.9%);
    }
}
@media (max-width: 620px){
    /*search form*/

    .index_search {
        background: #fff;
        margin: 0 auto;
    }
    .search_box {
        /*border: 2px solid #ecaacc;*/
        padding: 5% 0 5%;
    }
    .index_search th {
        border-collapse: collapse;
        border: none;
        color: #464646;
        background-color: #e9e9e9;
        font-weight: bold;
        vertical-align: middle;
        /* font-size: 130%; */
        padding: 5px;
        line-height: 1.4;
        /* width: 95%; */
        margin: auto;
        /* display: block; */
        text-align: center;
    }
    .index_search td {
        border-collapse: collapse;
        border: none;
        vertical-align: middle;
        padding: 5px;
        /* font-size: 130%; */
        width: 100%;
        /* display: block; */
        text-align: center;
    }
    .btn-more {
        background-color: #fafbb2;
        color: #787878;
        margin-left: 50px;
        margin-right: 50px;
        padding: 20px;
        font-size: 1.2em;
        margin-bottom: 20px;
        text-align: center;
        border: 1px solid #fafbb2;
        cursor: pointer;
    }
    .btn-more::before {
        content: "＋";
    }
    .btn-more.close::before {
        content: "―";
    }
    .dropdown {
        background-color: #ffffff;
    }
    .dropdown ul {
        margin-left: 2em;
    }
    .dropdown ul li {
        list-style-type: disc;
    }
    .spbr label {
        /* display: block;
        padding: 5px; */
        border: none;
    }

    .item-price table {
        border: #cccccc 1px solid;
        table-layout: fixed;
        width: 100%;
    }

    .item-price table th {
        background: #fffae5;
    }

    .item-price table td {
        background: #ffffff;
    }

    .point_txt_w_l {
        width: 275px;
    }

    .point_txt_w_r {
        width: 450px;
        font-size: 16px;
        line-height: 1.5em;
    }

    .formBtn{
        width: 90%;
        margin: 0 auto;
    }

    /*form*/
    .searchform {
        display: inline-block;
        text-align: left;
    }
    .searchtable {
        border-collapse: collapse;
        font-size: 15px;
        line-height: 25px;
        border: none !important;
    }
    .searchtable, tr, td, th {
        border: 1px solid #cfcfcf;
        padding: 5px 10px 5px 10px;
    }
    .searchbox {
        font-size: 15px;
        padding: 5px;
        border: 1px solid #DDD;
        border-radius: 5px;
        width: 80%;
    }
    form input {
        vertical-align: middle;
    }

    .thisinfotable td, th {
        font-size: 12px;
        line-height: 20px;
    }
    .thisinfotable td, th {
        border: 1px solid #cfcfcf;
        font-size: 15px;
        line-height: 20px;
    }
    .searchtable .searchtabletitle {
        background-color: #f6f6f6;
        min-width: 120px;
    }
    .searchtable .searchbutton {
        background-color: #fb8bc6;
        border: none;
        color: white;
        padding: 10px 48px;
        text-align: center;
        text-decoration: none;
        display: inline-block;
        font-size: 16px;
        line-height: 15px;
        margin-top: 10px;
    }
    .searchtable .searchcenter {
        text-align: center;
    }
    .objecttable tr, td {
        border: none;
    }

    .searchordercontainer dd{
        display: inline-block;
        margin-left: 20px;
        margin-top:0px;
        line-height: 20px;
    }
    .searchordercontainer a{
        text-decoration: none;
    }
    .objecttable{
        border:2px solid #ccc;
        text-align:center;
        margin: auto auto 50px auto;
        width: 95%;
    }
    .objecttable tr, td{
        border:none;
    }
    .objecttitle{
        font-size:24px;
        font-weight:bold;
        text-align: center;
        width: 95%;
        margin: 0 auto;
        background-color: #22CC8B;
        border: 1px solid #cfcfcf;
        color: #fff;
    }
    .objectimg p{
        text-align: center;
    }
    .objectmaintext {
        font-size:20px;
        font-weight: bold;
    }
    .thisinfotable {
        width: 100%;
        text-align: center;
        border-collapse: collapse;
    }
    .thisinfotable td,th {
        border-top: 1px solid #cfcfcf;
        font-size: 15px;
        line-height: 20px;
    }


}


@media (min-width: 620px){
    .research_inner {
        padding: 10px;
    }
    .research_inner h4 {
        font-size: 16px;
    }


    .index_search {
        border-collapse: collapse;
        width: 100%;
        background: #fff;
    }

    .index_search th {
        border-collapse: collapse;
        border: #cccccc 1px solid;
        background-color: #f6f6f6;
        font-weight: bold;
        text-align: center;
        vertical-align: middle;
        font-size: 80%;
        padding: 10px;
        line-height: 1.4;
    }

    .index_search td {
        border-collapse: collapse;
        /* border: #cccccc 1px solid; */
        text-align: left;
        vertical-align: middle;
        padding: 12px;
        font-size: 80%;
        border-top:#cccccc 1px solid;
        border-right: #cccccc 1px solid;;
    }

    .index_search tr:last-child td{
        border-right: none;
    }


    .formBtn{
        display: none;
    }


}
.tyousa {
    padding: 3%;
    border: 3px solid #dedede;
    background-color: #f7f7f7;
}

.recommendbox{
    /* background: -webkit-repeating-linear-gradient(-45deg, #edfcf5, #edfcf5 3px,#dcfaec 3px, #dcfaec 7px); */
    /* background: repeating-linear-gradient(-45deg, #edfcf5, #edfcf5 3px,#dcfaec 3px, #dcfaec 7px); */
    border-right: solid 2px #72E8BB;
    border-bottom: solid 2px #72E8BB;
    border-left: solid 2px #72E8BB;
    margin-bottom: 30px;
}

.recommendbox_title{
    background: -webkit-repeating-linear-gradient(-45deg, #edfcf5, #edfcf5 3px,#dcfaec 3px, #dcfaec 7px);
    background: repeating-linear-gradient(-45deg, #edfcf5, #edfcf5 3px,#dcfaec 3px, #dcfaec 7px);
    /* color:#fff; */
    font-size: 1.2em;
    font-weight: bold;
    padding: 4px 4px 4px 10px;
    border-bottom: solid 2px #72E8BB;
    border-top: solid 2px #72E8BB;
}

.recommendbox ul{
    padding: 8px;
    margin-bottom: 0px;
}

.description{
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em 0.3em;
    border: solid 3px #95ccff;
    border-radius: 8px;
}
.description-title{
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 5px;
    padding: 0 6px;
    line-height: 1;
    /* font-size: 19px; */
    background: #FFF;
    color: #95ccff;
    font-weight: bold;
}
.description p{
    margin-bottom: 0px;
    font-size: 0.9em;
}

.box28 {
    position: relative;
    margin-bottom: 15px;
    padding: 29px 10px 8px;
    border: solid 2px #0791e8;
}
.box28 .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #0791e8;
    color: #ffffff;
    font-weight: bold;
}
.box28 p {
    margin: 10px 0;
    padding: 0;
    line-height: 1.5;
    /* font-size: 0.9em; */
}

.box29 {
    position: relative;
    border: solid 2px #0791e8;
    background: #f4f4f4;
    line-height: 1.5;
    font-size:0.9em;
    padding: 0.6em 0.7em;
    margin: 1em 0 1.5em;
}

.box29 p{
    margin-bottom: 0px;
    margin-top: 5px;
    text-align: right;
    font-size: 0.5em;
}


h1 .title{
    background: linear-gradient(transparent 60%, #ffff66 60%);
}
.sogood{
    color: red;
    font-weight: bold;
    font-size: 30px;
}
.good{
    color: orange;
    font-size: 30px;
}
.soso{
    color: #21b4e2;
    font-weight: bold;
    font-size: 30px;
}

.btn_s {
    display: block;
    margin: -10px auto 15px;
    font-size: 16px;
    text-align:center;
    background: #fff;
    color: #1e2122;
    border-radius: 5px;
    font-weight: bold;
    border: 1px solid #dbdbdb;
    width: 60%;
}

.btn_s p{
    margin:0px;
}    

.OaC_btn {
    display: block;
    text-align: center;
    max-width: 200px;
    margin: 0 auto;
    padding: 0.3em 0;
}

.annotation{
    text-align: right;
    font-size: 0.7em;
}