@charset "utf-8";
/* CSS Document */

/*PC表示*/
@media only screen and (min-width: 960px){
/*----------------- 共通 -----------------*/
html, body {
	display: block;
    width: 100%;
	margin: 0;
	padding: 0;
    line-height: 2;
	box-sizing: border-box;
}
* {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	margin: 0px;
	padding: 0px;
	font-size: 16px;
}
a{
    text-decoration: none;
}
.wrapper{
    width: 100%;
}
.header_area{
    width: 100%;
    border-top: 10px solid #191970;
    margin: 0 auto;
}
.header_top{
    width: 960px;
    overflow: hidden;
    background: #fff;
    padding: 10px;
    margin: 10px auto 10px;
}
/*-----------------ロゴエリア -----------------*/
#logo {
    width: 340px;
    height:218px;
	float: left;
    padding: 0 10px;
    color: #191970;
    margin-right: 20px;
}
#logo h1{
    font-size: 20px;
    margin: 0 0 10px 0;
}
.statement_list{
    width: 100%;
}
.motto{
    font-weight: 300;
    margin: 10px 0;
}
.job{
    border-top: 1px solid #191970;
    color: #191970;
    font-family:'arial black',"sans-serif";
    font-size: 18px;
}
.pride{
    color: #191970;
    font-family:'arial black',"sans-serif";
    font-size: 20px;
    font-weight: 900;
    line-height: 1.2;
}
/*----------------- コンタクトエリア -----------------*/
.contact_area{
    overflow: hidden;
    width: 545px;
    float: right;
    margin-bottom: 0;
}
.mail_contact{
    width: 100%;
    margin-bottom: 20px;
    overflow: hidden;
}
.mail_contact a{
    display: block;
    width: 100%;
}
.mail_contact a img{
    display: block;
    width: 68px;
    height: 68px;
    float: left;
    margin-right: 10px;
}
.mail_contact a .tb_text{
    display: block;
    width: calc(100% - 78px);
    float: left;
    background: #f5f5f5;
    padding: 10px;
    border: 1px solid #9c9c9c;
    border-radius: 4px; 
    box-sizing: border-box;
}
.mail_contact a .tb_text span{
    display: block;
}
.tel_list{
    width: 100%;
    list-style: none;
    margin-bottom: 20px;
    overflow: hidden;
    box-sizing: border-box;
}
.tel_list li:first-of-type{
    width: 48%;
    float: left;
    box-sizing: border-box;
    margin-right: 2%;
}
.tel_list li:last-of-type{
    width: 48%;
    box-sizing: border-box;
    float: left;
}
.number{
    display: inline-block;
    font-size: 20px;
    font-weight: 600;
    color: #191970;
    background-image: url("../images/free_tel.png");
    background-repeat: no-repeat;
    padding-left: 4rem;

}
.tel_contact li a{
    display: inline-block;
    color: #323232;
    text-decoration: none;
}
.t_office{
    display: block;
    font-weight: 500;
    font-size: 18px;
    color: #7fc4e6;
}
.o_office{
    display: block;
    font-weight: 500;
    font-size: 18px;
    color: #7fc4e6;
}
.o_tel_contact a{
    display: block;
    text-decoration: none;
    color: #323232;
    font-size: 24px;
}
.gnav_sp{
    display: none;
}
.navToggle{
    display:none;
}
/*-------------------------------mv上の文字ここから-------------------------------*/
.mv_pc{
    position: relative;
    margin-bottom: 1.66%;
}
.mv_pc img{
    width: 100%;
    height: auto;
}
.mv_pc h2{
    position: absolute;
    color: #add8e6;
    font-size: 24px;
    font-weight: bold;
    top: 20%;
    left: 52%;
}
.mv_pc p.declaration{
    position: absolute;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    top: 34%;
    left: 52%;
}
.declarat_tb{
    display: none;
}
.mv_pc p.declaration span.declaration_text{
    display: block;
    margin-bottom: 30px;
    font-size: 20px;
}
.mv_pc .consultation{
    display: inline-block;
    padding: 10px;
    box-sizing: border-box;
    line-height: 1.4;
    color: #fdd35c;
    background: #000;
    font-size: 24px;
    font-weight: 600;
    border: 1px solid #fdd35c;
    margin: 20px 0;
}
.mv_sp{
    display: none;
}

/*-------------- mv上の文字ここまで --------------*/
/*-------------- g_nav --------------*/
.navi{
    margin-bottom: 10px;
}
.gnav_pc{
    display: block;
    width: 960px;
    margin: 20px auto  80px;
}
.gnav_pc ul{
    overflow: hidden;
    border-bottom: 10px solid #d4d4d4;
}
.gnav_pc li{
    display: inline-block;
    margin-right: 1rem;
    padding: 10px;
}
.gnav_pc li a{
    display: inline-block;
    color: #323232;
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
}
/*-------------- パンくず --------------*/
.breadcrumb {
    text-align: left;
    margin-bottom: 2.66%
}
.breadcrumb li a span{
    font-size: 12px;
}
.breadcrumb li{
    display:inline;
    list-style: none;
    font-size: 12px;
}
.breadcrumb li:after {
    content: '>';
    padding: 0 3px;
    color: #2b2b2b;
}
.breadcrumb li:last-child:after {
    content: '';
}

.breadcrumb li a {
    text-decoration: none;
    color: #323232;
    font-size: 14px;
}
.breadcrumb li a:hover {
    text-decoration: underline;
    color: #9c9c9c;
}

/*-------------- メインコンテンツ --------------*/
.main{
    width: 960px;
    margin: 0 auto;
    text-align: center;
}
.ds_sp{
    display: none;
}
.wrap{
    padding: 0 10px;
}
section.content{
    width: 960px;
    margin: 0 auto 40px;
}
.content h3{
    background-color: #00608d;
    border-radius: 6px;
    color: #fff;
    padding: 10px 20px;
    font-size: 22px;
    font-weight: 500;
    margin-bottom: 40px;
}
.content h4{
    font-size: 20px;
    color:#323232;
    border-left: 2px solid #323232;
    padding-left: 1rem;
    margin-bottom: 40px;
}
.content p{
    margin-bottom: 1rem;
}
.chapter{
    margin-bottom: 2.66%;
}
.order_btn{
    background-color: #dc143c;
    width: 50%;
    margin: 40px auto 80px;
    border-radius: 4px;
}
.order_btn a{
    display: block;
    width: 100%;
    padding: 20px;
    text-decoration: none;
    color: #fff;
    font-size: 18px;
    text-align: center;
    background-image: url("../images/arrow_right_w.png");
    background-repeat: no-repeat;
    background-size: 8px auto;
    background-position: right 4% center;
    box-sizing: border-box;
}
/*-------------------春の新生活応援Wキャンペーン--------------------*/
.w_campaign{
    margin-bottom: 40px;
}
.w_campaign h3{
    padding: 10px 20px;
    color: #fff;
    background-image: linear-gradient(90deg, rgba(253, 146, 146, 1) 60%, rgba(209, 254, 212, 1));
}
.w_campaign h3 span.w{
    display: inline-block;
    padding: 0 6px;
    font-weight: 600;
    font-size: 26px;
    color: #e0ffff;
}
.campaign_bnr_pc{
    width: 100%;
    margin: 20px auto 40px;
}
.campaign_bnr_pc img{
    width: 100%;
    height: auto;
    border: 1px solid #191970;
}
.campaign_bnr_sp{
    display: none;
}
.caution_list{
    background: #f5f5f5;
    padding: 20px 10px;
}
.caution_list li{
    text-indent: -15px;
    padding-left: 20px;
    margin-bottom: 10px;
}
strong{
    font-weight: 600;
    color: #191970;
}
.w_campaign a{
    color: #1e90ff;
}
.w_campaign a:hover{
    color: #87ceeb;
}
/*-------------- 対応メディア --------------*/
.media{
    margin-bottom: 20px;
}
.media_list{
    width: 100%;
    overflow: hidden;
    margin-bottom: 60px;
}
.media_list>li:nth-child(odd){
    width: 48%;
    float: left;
    margin: 0 4% 40px 0;
}
.media_list>li:nth-child(even){
    width: 48%;
    float: left;
    margin: 0 0 20px 0;
}
.media_box{
    width: 100%;
}
.media_box:last-of-type a{
    background: #f5f5f5;
}
.media_box dt{
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    background: #191970;
    color: #fff;
    font-size: 18px;
    text-align: center;
}
.media_box dd{
    width: 100%;
}
.media_list >li:nth-child(6) dd{
    background: #c1e4e9
}
.media_box dd ul{
    overflow: hidden;
    width: 100%;
}
.media_box dd ul li:first-of-type{
    width: 30%;
    padding: 10px;
    float: left;
    box-sizing: border-box;
}
.media_box dd ul li:first-of-type figure{
    width: 80%;
    margin: 0 auto;
}
.media_box dd ul li:first-of-type figure img{
    display: block;
    width: 100%;
    height: auto;
    
}
.media_box dd ul li:last-of-type{
    width: 70%;
    float: left;
    padding: 10px;
    box-sizing: border-box;
}
.media_item_list{
    width: 100%;
    overflow: hidden;
}
.media_item_list li:first-of-type{
    width: 30%;
    padding: 10px;
    float: left;
    box-sizing: border-box;
}
.media_item_list li:last-of-type{
    width: 70%;
    float: left;
    padding: 10px;
    box-sizing: border-box;
}
.initial_diagnosis dd{
    overflow: hidden;
    background: #c1e4e9;
}
.initial_diagnosis figure{
    width: 50%;
    margin: 20px auto 20px
}
.media>dd img{
    display: block;
    width: 82px;
    float: left;
    margin: 2.66%;
}
.mediaZ>dd span{
    display: block;
    width: calc(430px - 120px);
    float: left;
    padding-top: 2.66%;
}
.business hours{
    display: block;
    width: 100%;
}
/*-------------- データ復旧サービスについて --------------*/
.powersupply{
    overflow: hidden;
}
.powersupply figure{
    display: block;
    width: 300px;
    float: right;
    margin: 0 0 20px 20px;
}
/*-------------- コンタクトボタン --------------*/
.contact_button{
    width: 70%;
    background-color: #ece6e6;
    margin: 0 auto 2.6rem;
    padding: 20px;
}
.contact_button h5{
    width: 100%;
    padding: 10px;
    border-radius: 10px;
    color: #0a0a5f;
    background-color: #fff; 
    font-size: 20px;
    line-height: 1.5;
    margin-bottom: 20px;
    text-align: left;
    box-sizing: border-box;
}
.contact_button h5 span{
    color: #2b2b2b;
    font-size: 20px;
    line-height: 1.5;
    margin-bottom: 2.66%;
    text-align: left;
}
.contact_list{
    list-style: none;
    margin: 0 auto;
    width: 80%
}
.t_tel{ 
    margin-bottom: 20px;
}
.o_tel{
    margin-bottom: 20px;
}
.m_contact{
    margin-bottom: 20px;
}
.t_tel a{
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: #323232;
    text-decoration: none;
    padding-left: 2rem;
}
.o_tel a{
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: #323232;
    text-decoration: none;
    padding-left: 2rem;
}
.m_contact a{
    display: block;
    width: 80%;
    text-decoration: none;
    color: #fff;
    background-color: #bb3b3b;
    border-radius: 6px;
    padding: 2.66%;
    text-align: center;
    margin:  0 auto;
    font-size: 18px;
    font-weight: 600;
    background-image: url("../images/mail_icon.png");
    background-size: 32px 24px;
    background-repeat: no-repeat;
    background-position: left 1rem center;
}

.office_name{
    color: #4c4c4c;
    font-size: 18px;
    margin-left: 2.66%;
}
/*-------------- コーポレートページ・大阪ページへのリンクボタン --------------*/
.link_box{
    width: 800px;
    margin: 0 auto 20px;
    overflow: hidden;
}
.c_button{
    width: 340px;
    float: left;
    margin-right: 1rem;
}
.c_button a{
    display: block;
    text-decoration: none;
    background-color: #00608d;
    padding: 1rem 2rem;
    color: #fff;
    font-weight: 600;
    font-size: 20px;
    background-image: url("../images/arrow_w.png");
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: right 20px center;
}
.o_button{
    width: 340px;
    float: left;
}
.o_button a{
    display: block;
    text-decoration: none;
    background-color: #00608d;
    padding: 1rem 2rem;
    color: #fff;
    font-weight: 600;
    font-size: 20px;
    background-image: url("../images/arrow_w.png");
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: right 20px center;
}
.estimate{
    margin-bottom: 20px;
}
.estimate_box{
    overflow: hidden;
}
.estimate_box figure{
    width: 300px;
    float: left;
    margin: 0 20px 20px 0;
}
.estimate_boxe p{
    width: calc(100% - 320px);
    float: left;
}

.privacy{
    overflow: hidden;
    margin-bottom: 2.66%;
}
.privacy figure{
    display: block;
    width: 300px;
    float: left;
    margin-right:20px;
}
.privacy p{
    width: calc(100% - 320px);
    float: right;
}
.praivacy_btn a{
    display: inline-block;
    background: #6495ed;
    text-decoration: none;
    color: #fff;
    padding: 1rem 2rem;
    border-radius: 120px;
}
/*-------------- 実績紹介 --------------*/
.link{
    margin: 40px auto 40px;
}
.link a{
    display: block;
    width: 40%;
    background: #9c9c9c;
    color: #fff;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    margin: 40px auto 40px;
    padding: 20px;
    background-image: url("../images/arrow_r.png");
    background-repeat: no-repeat;
    background-position: right 10px center;
}
/*------------------ セキュリティ ------------------*/
.certificate{
    margin-bottom: 20px;
}
.certificate p{
    margin-bottom: 20px;
}
.certificate_wrap{
    overflow: hidden;
    width: 80%;
    margin: 0 auto 40px;
}
.certificate_box1{
    width: 48%;
    height: auto;
    float: left;
    background-color: #efefef;
    border: 6px solid #9c9c9c;
    padding: 10px;
    box-sizing: border-box;
    margin-right: 4%;
}
.certificate_box1 figcaption{
    font-size: 18px;
    font-weight: 600;
}
.certificate_box1 img{
    display: block;
    width: 50%;
    height: auto;
    background: #fff;
    padding: 6px;
    border: 1px solid #9c9c9c;
    border-radius: 4px;
    box-sizing: border-box;
    margin:  0 auto 20px;
}
.certificate_box2{
    width: 48%;
    height: auto;
    float: left;
    background-color: #efefef;
    border: 6px solid #9c9c9c;
    padding: 10px;
    box-sizing: border-box;
}
.certificate_box2 img{
    display: block;
    width: 36%;
    height: auto;
    background: #fff;
    border: 1px solid #9c9c9c;
    border-radius: 4px; 
    padding: 6px;
    box-sizing: border-box;
    margin:  0 auto 20px;
}
.certificate_box2 figcaption{
    font-size: 18px;
    font-weight: 600;
}
.service{
    display: block;
    width: 100%;
    font-family:'arial black',"sans-serif";
    font-size: 14px;
    font-weight: 300;
    color: #323232;
    border-top: 1px solid #dcdcdc;
    padding-top: 16px;
    margin-bottom: 4px;
}
.service_text{
    display: block;
    width: 100%;
    font-size: 14px;
    line-height: 2.3;
    color: #323232;
}
.service_list{
    width: 100%;
}
.service_list li{
    width: 100%;
    font-size: 14px;
    color: #323232;
    margin-bottom: 4px;
}

/*---------------- 上へ戻るボタン ----------------*/
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;

    z-index: 99;
}
#page-top a {
    display: block;
    width: 60px;
    height: 60px;
    background: rgba(255,255,255,.8);
    text-decoration: none;
    color: #0d6fb8;
    border: 1px solid #0d6fb8;
    font-size: 14px;
    line-height: 1;
    padding: 10px;
    text-align: center;
    border-radius: 50%;
    transition: all .3s ease;
    background-image:  url("../images/arrow_top.png");
    background-size: 26px auto;
    background-repeat: no-repeat;
    background-position: center center;
    box-sizing: border-box;
}
#page-top a:hover {
    text-decoration: none;
    opacity: .5;
}
/*-------------- footer --------------*/
footer{
    width: 100%;
    padding: 10px;
    background-color: #191970; 
    color: #fff;
    overflow: hidden;
    box-sizing: border-box;
}
.footer_nav{
    width: 960px;
    padding: 10px;
    margin: 40px auto 40px;
    overflow: hidden;
}
.nav_box{
    width: 30%;
    float: left;
    margin: 0 2% 0 0;
}
.nav2_box{
    width: 30%;
    float: left;
    margin: 0 0 0 2%;
}
.nav2_box li{
    display: block;
    width: 100%;
    margin-bottom: 20px;
}
.nav2_box li a{
    display: block;
    width: 100%;
    padding-left: 40px;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    font-weight: 300;
    box-sizing: border-box;
    background-image: url("../images/list-mark.png");
    background-size: 16px auto;
    background-repeat: no-repeat;
}
.nav_box li {
    display: block;
    width: 100%;
    margin-bottom: 20px;
 }
.nav_box li a{
    display: block;
    width: 100%;
    padding-left: 40px;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    font-weight: 300;
    box-sizing: border-box;
    background-image: url("../images/list-mark.png");
    background-size: 16px auto;
    background-repeat: no-repeat;
}
 .nav_box li a:hover,.nav2_box li a:hover{
    color:#b2b2b2;
}
footer small {
    display: block;
    width: 100%;
    padding: 10px;
    font-size: 14px;
    clear: both;
    text-align: center;
}
}
/*-------ここからスマホ用css----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 639px){
html, body {
    width: 100%;
    display: block;
    margin: 0;
    padding: 0;
    line-height: 2;
    box-sizing: border-box;
}
.wrapper{
    width: 100%;
    box-sizing: border-box;
}
.header{
    width:100%;
    position: fixed;
    margin-bottom: 400px;
    padding: 0;
    box-sizing: border-box;
    z-index: 999;
}
.header_top{
    width: 100%;
    overflow: hidden;
    padding: 10px 0 0;
    border-top: 10px solid #191970;
    box-sizing: border-box;
    margin-top: -20px;
    background: #fff;
    z-index: 999;
}
/*-------------- ロゴエリア --------------*/
#logo {
    width: 260px;
    height: auto;
	float: left;
    padding: 0 10px;
    color: #191970;
}
#logo h1{
    font-size: 18px;
    margin: 0 0 10px 0;
}
.statement_list{
    width: 100%;
    padding: 10px 0;
    overflow: hidden;
    border-top: 1px solid #dcdcdc;
    box-sizing: border-box;
}
.motto{
    display:none;
}
.job{
    display: block;
    width: 42%;
    float: left;
    font-size: 14px;
    font-weight: 600;
}
.pride{
    display: block;
    width: 56%;
    float: left;
    font-size: 14px;
}
.declarat_tb{
    display: none;
}
/*-------------- コンタクトエリア --------------*/
.contact_area{
    display: none;
}
.mail_contact{
    width: 68px;
    height: 68px;
    float: left;
    margin-right: 1rem;
}
.tel_contact{
    width: 500px;
    float: left;
    overflow: hidden
}
.tel_list{
    list-style: none;
    margin-bottom: 20px;
}
.tel_contact li a{
    display: inline-block;
    color: #323232;
    text-decoration: none;
}
.t_office{
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    color: #323232;
    margin-left: 0.6rem;
}
.o_office{
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    color: #323232;
    margin-left: 0.6rem;
}
.o_tel_contact a{
    display: block;
    text-decoration: none;
    color: #323232;
    font-size: 24px;
}

.message{
    color: #192a83;
    font-weight: 600;
    font-size: 16px;
}
.navToggle{
    width: 50px;
    height: auto;
    float: right;
}
.gnav_pc{
    display: none;
}
.navToggle{
    display:block;
}
/*-------------------------------mv上の文字ここから-------------------------------*/

.mv_sp{
    width: 100%;
    padding-top: 10px;
    position: relative;
    margin-bottom: 1.66%;
}
.mv_sp img{
    width: 100%;
    height: auto;
}
.mv_sp h2{
    position: absolute;
    color: #add8e6;
    font-size: 18px;
    font-weight: bold;
    top: 4%;
    left: 18%;
    background: #323232;
    padding: 10px;
}
.mv_sp p.declaration{
    position: absolute;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    top: 26%;
    left: 18%;
}
.declarat_tb{
    display: none;
}
.mv_sp p.declaration span.declaration_text{
    display: block;
    margin-bottom: 30px;
    font-size: 16px;
}
.mv_sp .consultation{
    display: inline-block;
    padding: 10px;
    box-sizing: border-box;
    line-height: 1.4;
    color: #fdd35c;
    background: #000;
    font-size: 16px;
    font-weight: 600;
    border: 1px solid #fdd35c;
    margin: 20px 0;
}
.mv_pc{
    display: none;
}

/*------------------------------- mv上の文字ここまで -------------------------------*/
/*------------------------------- メインコンテンツ -------------------------------*/
.wrap{
    width: 100%;
    padding: 140px 0 0 0;
}
.main{
    width: 100%;
}
.ds_sp{
    width: 100%;
    display: block;
}

.header_area{
    width: 100%;
    margin-bottom: 20px;
}
section.content{
    width: 100%;
    padding: 10px;
    margin-bottom: 40px;
    box-sizing: border-box;
}
.content h3{
    width: 100%;
    color: #fff;
    background-color: #00608d;
    padding: 10px 20px;
    font-size: 22px;
    font-weight: 500;
    margin-bottom: 40px;
    line-height: 1.2;
    border-radius: 6px;
    box-sizing: border-box;
}
.content h4{
    width: 100%;
    font-size: 20px;
    color:#323232;
    border-left: 2px solid #323232;
    padding-left: 1rem;
    margin-bottom: 40px;
    line-height: 1.2;
    box-sizing: border-box;
}
.content p{
    margin-bottom: 20px;
    width: 100%;
    line-height: 1.7;
    box-sizing: border-box;
}
.powersupply{
    width: 100%;
    margin-bottom: 20px;
}
.powersupply figure{
    display: block;
    width: 100%;
    margin-bottom: 20px;
    }
.powersupply figure img{
    display: block;
    width: 100%;
    height: auto;
}
.chapter{
    width: 100%;
    margin-bottom: 40px;
}
.chapter p{
    margin-bottom: 20px;
}
.chapter img{
    width: 100%;
}
.praivacy_btn{
    width: 80%;
    margin: 40px auto 40px;
}
.praivacy_btn a{
    display: block;
    width: 100%; 
    background: #6495ed;
    text-decoration: none;
    color: #fff;
    padding: 10px 20px;
    border-radius: 120px;
    box-sizing: border-box;
}
.order_btn{
    width: 94%;
    margin: 40px auto 40px;
}
.order_btn a{
    display: block;
    width: 100%;
    background: #dc143c;
    padding: 20px 10px;
    text-decoration: none;
    color: #fff;
    border-radius: 4px;
    font-size: 16px;
    text-align: center;
    background-image: url("../images/arrow_right_w.png");
    background-repeat: no-repeat;
    background-size: 6px auto;
    background-position: right 1rem center;
    box-sizing: border-box;
}
/*---------------------- 春の新生活応援Wキャンペーン -----------------------------*/
.w_campaign{
    width: 100%;
    margin-bottom: 40px;
}
.w_campaign h3{
    width: 100%;
    padding: 10px 20px;
    color: #fff;
    background-image: linear-gradient(120deg, rgba(253, 146, 146, 1) 54%, rgba(209, 254, 212, 1));
    box-sizing: border-box;
}
.w_campaign h3 span.w{
    display: inline-block;
    padding: 0 6px;
    font-weight: 600;
    font-size: 26px;
    color: #e0ffff;
}
 
.campaign_bnr_sp{
    width: 100%;
    margin: 20px auto 40px;
}
.campaign_bnr_sp img{
    width: 100%;
    height: auto;
    border: 1px solid #191970;
}
.campaign_bnr_pc{
    display: none;
}
.caution_list{
    width: 100%;
    background: #f5f5f5;
    padding: 20px 10px;
    box-sizing: border-box;
}
.caution_list li{
    width: 100%;
    text-indent: -15px;
    padding-left: 20px;
    margin-bottom: 20px;
    box-sizing: border-box;
}
strong{
    font-weight: 600;
    color: #191970;
}
.campaign_bnr_sp{
    width: 100%;
    margin-bottom: 40px;
}
.campaign_bnr_sp img{
    width: 100%;
    height: auto;
}
.campaign_bnr_pc{
    display: none;
}
.w_campaign a{
    color: #1e90ff;
}
.w_campaign a:hover,.w_campaign a:active{
    color: #87ceeb;
}

/*-------------- 対応メディア --------------*/
.media{
    margin-bottom: 20px;
}
.media_list{
    width: 100%;
    overflow: hidden;
    margin-bottom: 60px;
}
.media_list>li:nth-child(odd){
    width: 100%;
    margin: 0 0 20px 0;
}
.media_list>li:nth-child(even){
    width: 100%;
    margin: 0 0 40px 0;
}
.media_box{
    width: 100%;
}
.media_box:last-of-type a{
    background: #f5f5f5;
}
.media_box dt{
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    background: #191970;
    color: #fff;
    font-size: 18px;
    text-align: center;
}
.media_box dd{
    width: 100%;
}
.media_list >li:nth-child(6) dd{
    background: #c1e4e9
}
.media_box dd ul{
    overflow: hidden;
    width: 100%;
}
.media_box dd ul li:first-of-type{
    width: 30%;
    padding: 10px;
    float: left;
    box-sizing: border-box;
}
.media_box dd ul li:first-of-type figure{
    width: 80%;
    margin: 0 auto;
}
.media_box dd ul li:first-of-type figure img{
    display: block;
    width: 100%;
    height: auto;
    
}
.media_box dd ul li:last-of-type{
    width: 70%;
    float: left;
    padding: 10px;
    box-sizing: border-box;
}
.media_item_list{
    width: 100%;
    overflow: hidden;
}
.media_item_list li:first-of-type{
    width: 30%;
    padding: 10px;
    float: left;
    box-sizing: border-box;
}
.media_item_list li:last-of-type{
    width: 70%;
    float: left;
    padding: 10px;
    box-sizing: border-box;
}
.in
.initial_diagnosis dd{
    overflow: hidden;
    background: #c1e4e9;
}
.initial_diagnosis figure{
    width: 50%;
    margin: 20px auto 20px
}
.media>dd img{
    display: block;
    width: 82px;
    float: left;
    margin: 2.66%;
}
.mediaZ>dd span{
    display: block;
    width: calc(430px - 120px);
    float: left;
    padding-top: 2.66%;
}
.business hours{
    display: block;
    width: 100%;
}
/*------------------------------- 20年の信頼と実績 -------------------------------*/
.link_btn{
    width: 80%;
    margin: 0 auto 40px;
}
.link_btn a{
    display: inline-block;
    background-color: #006699;
    padding: 0.6rem 2.4rem 0.6rem 1.8rem;
    border-radius: 4px;
    color: #fff;
    text-decoration: none;
    background-image: url("../images/arrow_tri.png");
    background-size: 8px auto;
    background-repeat: no-repeat;
    background-position: right 10px center;
}

/*------------------------------- コンタクトボタン -------------------------------*/
.contact_button{
    background-color: #ece6e6;
    width: 100%;
    margin-bottom: 20px;
    padding: 10px;
    box-sizing: border-box;
}
.contact_button h5{
    width: 100%;
    padding: 10px;
    background: #fff;
    color: #0a0a5f;
    font-size: 18px;
    line-height: 1.4;
    margin-bottom: 20px;
    border-radius: 10px;
    text-align: left;
    box-sizing: border-box;
}
.contact_button p{
    color: #434343;
    font-size: 16px;
    line-height: 1.4;
    margin-bottom: 20px;
    text-align: left;
}
.contact_list{
    list-style: none;
    margin: 0 auto;
    width: 100%
}
.t_tel{ 
    margin-bottom: 20px;
}
.o_tel{
margin-bottom: 20px;
}
.m_contact{
    margin-bottom: 20px;
}
.t_tel a{
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: #323232;
    text-decoration: none;
}
.o_tel a{
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: #323232;
    text-decoration: none;
}
.m_contact a{
    display: block;
    width: 80%;
    text-decoration: none;
    color: #fff;
    background-color: #bb3b3b;
    border-radius: 6px;
    padding: 2.66%;
    text-align: center;
    margin:  0 auto;
    font-size: 18px;
    font-weight: 600;
    background-image: url("../images/mail_icon.png");
    background-size: 32px 24px;
    background-repeat: no-repeat;
    background-position: left 1rem center;
}
.number{
    display: inline-block;
    color: #1e90ff;
    font-size: 22px;
    font-weight: 600;
    background-image: url("../images/free_tel.png");
    background-repeat: no-repeat;
    padding-left: 4rem;

}
.office_name{
    color: #4c4c4c;
    font-size: 18px;
    margin-left: 2.66%;
}
/*------------------------------- コーポレートページ・大阪ページへのリンクボタン -------------------------------*/
.link_box{
    width: 100%;
    margin: 0 auto 2.6rem;
    overflow: hidden;
}
.c_button{
    width: 100%;
    float: none;
    margin-bottom: 30px;
}
.c_button a{
    display: block;
    width: 100%;
    text-decoration: none;
    background-color: #00608d;
    padding: 1rem 2rem;
    color: #fff;
    font-weight: 600;
    font-size: 16px;
    background-image: url("../images/arrow_w.png");
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: right 20px center;
    box-sizing: border-box;
}
.o_button{
    width: 100%;
    float: none;
}
.o_button a{
    display: block;
    width: 100%;
    text-decoration: none;
    background-color: #00608d;
    padding: 1rem 2rem;
    color: #fff;
    font-weight: 600;
    font-size: 16px;
    background-image: url("../images/arrow_w.png");
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: right 20px center;
    box-sizing: border-box;
}
.estimate{
    width: 100%;
    margin-bottom: 40px;
}
.estimate_box{
        width: 100%;
}
.estimate_box p{
    width: 100%;
    float: none;
    margin-bottom: 20px;
}
.estimate_box figure{
    display: block;
    width: 100%;
    margin: 0;
    float: none;
    margin-bottom: 20px;
}
.estimate_box figure img{
    display: block;
    width: 100%;
    height: auto;
}
.privacy{
    width: 100%;
    overflow: hidden;
    margin-bottom: 2.66%;
}
.privacy figure{
    display: block;
    width: 100%;
    margin-bottom: 20px;
}
.privacy figure img{
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}
/*------------------------------- 実績紹介 -------------------------------*/
.link{
    width: 100%;
    margin: 40px auto 40px;
}
.link a{
    display: block;
    width: 80%;
    background: #9c9c9c;
    color: #fff;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
    margin: 40px auto 40px;
    padding: 20px;
    background-image: url("../images/arrow_r.png");
    background-repeat: no-repeat;
    background-position: right 10px center;
}
/*------------------ セキュリティ ------------------*/
.certificate{
    margin-bottom: 20px;
}
.certificate p{
    margin-bottom: 20px;
}
.certificate_wrap{
    overflow: hidden;
    width: 100%;
    margin: 0 auto 40px;
}
.certificate_box1{
    width: 100%;
    height: auto;
    float: left;
    background-color: #efefef;
    border: 6px solid #9c9c9c;
    padding: 10px;
    box-sizing: border-box;
    margin-bottom: 20px;
}
.certificate_box1 figcaption{
    font-size: 18px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 20px;
}
.certificate_box1 img{
    display: block;
    width: 50%;
    height: auto;
    background: #fff;
    padding: 6px;
    border: 1px solid #9c9c9c;
    border-radius: 4px;
    box-sizing: border-box;
    margin:  0 auto 20px;
}
.certificate_box2{
    width: 100%;
    height: auto;
    float: left;
    background-color: #efefef;
    border: 6px solid #9c9c9c;
    padding: 10px;
    box-sizing: border-box;
}
.certificate_box2 img{
    display: block;
    width: 36%;
    height: auto;
    background: #fff;
    border: 1px solid #9c9c9c;
    border-radius: 4px; 
    padding: 6px;
    box-sizing: border-box;
    margin:  0 auto 20px;
}
.certificate_box2 figcaption{
    line-height: 1.2;
    font-size: 18px;
    font-weight: 600;
}

.service_text{
    display: block;
    width: 100%;
    font-size: 14px;
    background: #fff;
    padding: 10px;
    line-height: 1.6;
    box-sizing: border-box;
    color: #323232;
    margin: 20px 0;
}
.service_list{
    width: 100%;
    padding: 10px;
    background: #fff;
    margin: 10px 0;
    box-sizing: border-box;
}
.service_list li{
    width: 100%;
    font-size: 14px;
    color: #323232;
    margin-bottom: 4px;
}
span.ttl{
    line-height: 1.2;
}
/*------------------------------- 上へ戻るボタン -------------------------------*/
#page-top {
    position: fixed;
    bottom: 40px;
    right: 20px;

    z-index: 99;
}
#page-top a {
    display: block;
    width: 60px;
    height: 60px;
    background: rgba(255,255,255,.8);
    text-decoration: none;
    color: #0d6fb8;
    border: 1px solid #0d6fb8;
    font-size: 14px;
    line-height: 1;
    padding: 10px;
    text-align: center;
    border-radius: 50%;
    transition: all .3s ease;
    background-image:  url("../images/arrow_top.png");
    background-size: 26px auto;
    background-repeat: no-repeat;
    background-position: center center;
    box-sizing: border-box;
}
#page-top a:hover {
    text-decoration: none;
    opacity: .5;
}

/*------------------------------- footer -------------------------------*/
footer{
    width: 100%;
    background-color: #191970;
    color: #fff;
    overflow: hidden;
    padding-top: 1rem;
}
.footer_nav{
    width: 100%;
    padding: 0 3.33%;
    overflow: hidden;
    box-sizing: border-box;
}
.nav_box{
    width: 100%;
    float: none;
    overflow: hidden;
    margin-bottom: 2.22%;
    padding-top: 2.22%;
    box-sizing: border-box;
}
.nav_box li{
    display: block;
    width: 100%;
    margin: 0 0 30px 0;
}
.nav_box li a{
    display: block;
    width: 100%;
    margin-right: 1rem;
    color: #fff;
    text-decoration: none;
    font-size: 16px;
    font-weight: 300;
}
.nav2_box{
    width:100%;
    float: none;
    overflow: hidden;
    margin-bottom: 2.22%;
    padding-top: 2.22%;
    border-left: none; 
    box-sizing: border-box;
}
.nav2_box li{
    display: block;
    width: 100%;
    margin: 0 0 30px 0;
}
.nav2_box li a{
    display: block;
    width: 100%;
    color: #fff;
    text-decoration: none;
    font-size: 16px;
    font-weight: 300;
    }
.nav_box li a:focus,.nav2_box li a:focus{
    color: #b2b2b2;
}
footer small{
    display: block;
    width: 94%;
    font-size: 12px;
    color: #191970;
    background: #fff;
    clear: both;
    text-align: center;
    margin: 0 auto 10px;
    box-sizing: border-box;
}
/*------------------------------- ハンバーガーメニュー -------------------------------*/ 
.gnav_sp{
    position: fixed;
    z-index: 2;
    top: -36px;
    left: 0;
    background: #fff;
    color: #000;
    text-align: center;
    transform: translateY(-100%);
    transition: all 0.6s;
    width: 100%;
}
.gnav_sp ul {
    background: #9c9c9c;
    margin: 0 auto;
    padding: 0;
    width: 100%;
    border-bottom: 50px solid #9c9c9c;
    
}
 
.gnav_sp ul li {
    font-size: 1.1em;
    list-style-type: none;
    padding:  0;
    width: 100%;
    border-bottom: 1px dotted #333;
}
 
/* 最後はラインを描かない */
.gnav_sp ul li:last-child {
    padding-bottom: 0;
    border-bottom: none;
}
 
.gnav_sp ul li a {
    display: block;
    color: #fff;
    padding: 1em 0;text-decoration: none;
}
 
/* このクラスを、jQueryで付与・削除する */
.gnav_sp.active {
    transform: translateY(42%);
}
/*ハンバーガー用*/
.navToggle {
    display: block;
    position: fixed;
    right: 20px;
    top: 20px;
    width: 46px;
    height:46px;
    cursor: pointer;
    z-index: 3;
    background: #666;
    text-align: center;
}
 
.navToggle span {
    display: block;
    position: absolute;    /* .navToggleに対して */
    width: 34px;
    border-bottom: solid 3px #eee;
    transition: .35s ease-in-out;
    left: 6px;
}
 
.navToggle span:nth-child(1) {
    top: 9px;
}
 
.navToggle span:nth-child(2) {
    top: 18px;
}
 
.navToggle span:nth-child(3) {
    top: 27px;
}
 
.navToggle span:nth-child(4) {
    border: none;
    color: #eee;
    font-size: 9px;
    font-weight: bold;
    top: 34px;
}

/* タップした後最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
    top: 18px;
    left: 6px;
    transform: rotate(-45deg);
}
 
/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
    top: 18px;
    transform: rotate(45deg);
}
}

/*-------ここからタブレット用css--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media only screen and (min-width: 640px) and (max-width: 959px) {
/*共通*/
html, body{
	display: block;
    width: 100%;
	margin: 0;
	padding: 0;
    line-height: 2;
	box-sizing: border-box;
}
* {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	margin: 0px;
	padding: 0px;
	font-size: 16px;
}
a{
    text-decoration: none;
}
.wrapper{
    width: 100%;
    margin: 0 auto;
}
.header_area{
    width: 100%;
    margin-bottom: 20px;
}
.header_top{
    overflow: hidden;
    width: 100%;
    background: #fff;
    border-top: 10px solid #191970;
    padding: 1rem 1rem 0 1rem;
    box-sizing: border-box;
}
/*------------------------------- ロゴエリア -------------------------------*/
#logo {
    width: 28%;
    height:auto;
	float: left;
    padding: 0;
    color: #191970;
    margin-right: 4%;
}
#logo h1{
    width: 100%;
    font-size: 16px;
    margin: 0 0 10px 0;
}
.motto{
    display: block;
    font-weight: 300;
    margin: 0;
}
.service{
    display: block;
    color: #191970;
    font-family:'arial black',"sans-serif";
    font-size: 18px;
    font-weight: 300;
    line-height: 1.2;
    border-top: 1px solid #dcdcdc;
    padding: 10px 0;
}
.pride{
    display: block;
    color: #191970;
    font-family:'arial black',"sans-serif";
    font-size: 18px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 10px;
}
/*------------------------------- コンタクトエリア -------------------------------*/
.contact_area{
    overflow: hidden;
    width: 68%;
    float: right;
    margin-bottom: 0;
}
.mail_contact{
    width: 100%;
    margin-bottom: 20px;
    overflow: hidden;
}
.mail_contact a{
    display: block;
    width: 100%;
}
.mail_contact a img{
    display: block;
    width: 68px;
    height: 68px;
    float: left;
    margin-right: 10px;
}
.mail_contact a .tb_text{
    display: block;
    width: calc(100% - 78px);
    float: left;
    background: #f5f5f5;
    padding: 10px;
    border: 1px solid #9c9c9c;
    border-radius: 4px; 
    box-sizing: border-box;
}
.mail_contact a .tb_text span{
    display: block;
}
.tel_list{
    width: 100%;
    list-style: none;
    margin-bottom: 20px;
    overflow: hidden;
    box-sizing: border-box;
}
.tel_list li:first-of-type{
    width: 48%;
    float: left;
    box-sizing: border-box;
    margin-right: 2%;
}
.tel_list li:last-of-type{
    width: 48%;
    box-sizing: border-box;
    float: left;
}
.number{
    display: inline-block;
    font-size: 20px;
    font-weight: 600;
    color: #191970;
    background-image: url("../images/free_tel.png");
    background-repeat: no-repeat;
    padding-left: 4rem;
}
.tel_contact li a{
    display: inline-block;
    color: #323232;
    text-decoration: none;
}
.tel_contact{
    width: 100%;
    overflow: hidden
}
.tel_list{
    width: 100%;
    list-style: none;
    overflow: hidden;
    margin-bottom: 20px;
}
.t_tel_contact{
    width: 100%;
    overflow: hidden;
    margin-bottom: 10px;
}
.o_tel_contact{
    width: 50%;
    float: left;
    margin-bottom: 10px;
}
.tel_contact li a{
    display: block;
    width: 100%;
    color: #323232;
    text-decoration: none;
}
.t_office {
    display: block;
    width: 100%;
    font-weight: 500;
    font-size: 18px;
    color: #7fc4e6;
}
.o_office {
    display: block;
    width: 100%;
    font-weight: 500;
    font-size: 18px;
    color: #7fc4e6;
}

.message{
    clear: both;
    color: #192A83;
    font-weight: 600;
    font-size: 14px;
}
.navToggle{
    width: 50px;
    height: auto;
    float: right;
}
.gnav_sp{
    display: none;
}
.navToggle{
    display:none;
}
/*-------------------------------mv上の文字ここから-------------------------------*/

.mv_pc{
    position: relative;
    margin-bottom: 20px;
}
.mv_pc img{
    width: 100%;
    height: auto;
}
.mv_pc h2 {
    position: absolute;
    width: 50%;
    padding: 10px;
    color: #add8e6;
    background: rgba(0,0,0,.7);
    font-size: 24px;
    font-weight: bold;
    top: 8%;
    left: 42%;
}
.mv_pc p.declaration{
    position: absolute;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    top: 36%;
    left: 42%;
}
.declarat_tb{
    display: none;
}
.mv_sp p.declaration span.declaration_text{
    display: block;
    margin-bottom: 30px;
    font-size: 20px;
}
.mv_sp .consultation{
    display: inline-block;
    padding: 10px;
    box-sizing: border-box;
    line-height: 1.4;
    color: #fdd35c;
    background: #000;
    font-size: 24px;
    font-weight: 600;
    border: 1px solid #fdd35c;
    margin: 20px 0;
}
.mv_sp{
    display: none;
}

/*------------------------------- mv上の文字ここまで -------------------------------*/
/*------------------------------- g_nav -------------------------------*/
.navi{
    width: 100%;
    margin-bottom: 2.66%;
}
.gnav_pc{
    display: block;
    width: 100%;
}
.gnav_pc ul{
    width: 100%;
    overflow: hidden;
    border-bottom: 10px solid #d4d4d4;
    padding: 10px;
    box-sizing: border-box;
}
.gnav_pc li{
    display: inline-block;
    margin: 0 3% 10px 0;
}
.gnav_pc li:last-of-type{
    margin: 0 0 10px 0;
}
.gnav_pc li a{
    display: inline-block;
    color: #323232;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}
/*------------------------------- パンくず -------------------------------*/
.breadcrumb {
    text-align: left;
    margin-bottom: 2.66%
}
.breadcrumb li a span{
    font-size: 12px;
}
.breadcrumb li{
    display:inline;
    list-style: none;
    font-size: 12px;
}
.breadcrumb li:after {
    content: '>';
    padding: 0 3px;
    color: #2b2b2b;
}
.breadcrumb li:last-child:after {
    content: '';
}

.breadcrumb li a {
    text-decoration: none;
    color: #323232;
    font-size: 14px;
}
.breadcrumb li a:hover {
    text-decoration: underline;
    color: #9c9c9c;
}

/*------------------------------- メインコンテンツ -------------------------------*/
.main{
    width: 100%;
}
.ds_sp{
    display: none;
}
.wrap{
    width: 100%;
    padding: 0 2.66%;
    box-sizing: border-box;
}
section.content{
    width: 100%;
    margin-bottom:20px;
}
.content h3{
    width: 100%;
    background-color: #00608d;
    border-radius: 6px;
    color: #fff;
    padding: 10px 20px;
    font-size: 22px;
    font-weight: 500;
    margin-bottom: 40px;
    box-sizing: border-box;
}
.content h4{
    width: 100%;
    font-size: 20px;
    color:#323232;
    border-left: 2px solid #323232;
    padding-left: 1rem;
    margin-bottom: 40px;
    box-sizing: border-box;
}
.content p{
    width: 100%;
    margin-bottom: 20px;
}
.chapter{
    width: 100%;
    margin-bottom: 40px;
}
.chapter a{
    width: 100%;
}
.order_btn{
    background-color: #dc143c;
    width: 80%;
    margin: 40px auto 40px;
    border-radius: 4px;
}
.order_btn a{
    display: block;
    width: 100%;
    padding: 20px 30px;
    text-decoration: none;
    color: #fff;
    font-size: 18px;
    text-align: center;
    background-image: url("../images/arrow_right_w.png");
    background-repeat: no-repeat;
    background-size: 8px auto;
    background-position: right 10px center;
    box-sizing: border-box;
}
/*-------------- 記憶媒体の故障でお悩みのお客様へ --------------*/
.powersupply{
    width: 100%;
}
.powersupply figure{
    width: 50%;
    float: right;
    margin: 0 0 0 2%;
}
.powersupply figure img{
    display: block;
    width: 100%;
    height: auto;
    border: 1px solid #9c9c9c;
    box-sizing: border-box;
}
.estimate{
    width: 100%;
}
.estimate_box{
    width: 100%;
}
.estimate_box figure{
    width: 50%;
    float: left;
    margin: 0 2% 0 0;
}
.estimate_box figure img{
    display: block;
    width: 100%;
    height: auto;
    border: 1px solid #9c9c9c;
    box-sizing: border-box;
}
/*--------------- 残暑お見舞いキャンペーン -------------*/
.w_campaign{
    margin-bottom: 40px;
}
.w_campaign h3{
    padding: 10px 20px;
    color: #fff;
    background-image: linear-gradient(90deg, rgba(253, 146, 146, 1) 60%, rgba(209, 254, 212, 1));
}
.w_campaign h3 span.w{
    display: inline-block;
    padding: 0 6px;
    font-weight: 600;
    font-size: 26px;
    color: #e0ffff;
}    
.campaign_bnr_pc{
    width: 100%;
    margin: 20px auto 40px;
}
.campaign_bnr_pc img{
    width: 100%;
    height: auto;
    border: 1px solid #191970;
}
.campaign_bnr_sp{
    display: none;
}
.caution_list{
    background: #f5f5f5;
    padding: 20px 10px;
}
.caution_list li{
    text-indent: -15px;
    padding-left: 20px;
    margin-bottom: 10px;
}
strong{
    font-weight: 600;
    color: #191970;
}
.campaign_bnr_pc{
    width: 100%;
    margin-bottom: 40px;
}
.campaign_bnr_pc img{
    width: 100%;
    height: auto;
}
.campaign_bnr_sp{
    display: none;
}
.w_campaign a{
    color: #1e90ff;
}
.w_campaign a:hover{
    color: #87ceeb;
}
/*-------------- 対応メディア --------------*/
.media{
    margin-bottom: 20px;
}
.media_list{
    width: 100%;
    overflow: hidden;
    margin-bottom: 60px;
}
.media_list>li:nth-child(odd){
    width: 48%;
    float: left;
    margin: 0 4% 20px 0;
}
.media_list>li:nth-child(even){
    width: 48%;
    float: left;
    margin: 0 0 20px 0;
}
.media_box{
    width: 100%;
}
.media_box:last-of-type a{
    background: #f5f5f5;
}
.media_box dt{
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    background: #191970;
    color: #fff;
    font-size: 18px;
    text-align: center;
}
.media_box dd{
    width: 100%;
}
.media_list >li:nth-child(6) dd{
    background: #c1e4e9
}
.media_box dd ul{
    overflow: hidden;
    width: 100%;
}
.media_box dd ul li:first-of-type{
    width: 30%;
    padding: 10px;
    float: left;
    box-sizing: border-box;
}
.media_box dd ul li:first-of-type figure{
    width: 80%;
    margin: 0 auto;
}
.media_box dd ul li:first-of-type figure img{
    display: block;
    width: 100%;
    height: auto;
    
}
.media_box dd ul li:last-of-type{
    width: 70%;
    float: left;
    padding: 10px;
    box-sizing: border-box;
}
.media_item_list{
    width: 100%;
    overflow: hidden;
}
.media_item_list li:first-of-type{
    width: 30%;
    padding: 10px;
    float: left;
    box-sizing: border-box;
}
.media_item_list li:last-of-type{
    width: 70%;
    float: left;
    padding: 10px;
    box-sizing: border-box;
}
.initial_diagnosis dd{
    overflow: hidden;
    background: #c1e4e9;
}
.initial_diagnosis figure{
    width: 50%;
    margin: 20px auto 20px
}
.media>dd img{
    display: block;
    width: 82px;
    float: left;
    margin: 2.66%;
}
.mediaZ>dd span{
    display: block;
    width: calc(430px - 120px);
    float: left;
    padding-top: 2.66%;
}
.business hours{
    display: block;
    width: 100%;
}
/*------------------- 当社の特徴について --------------------*/
.privacy{
    width: 100%;
}
.privacy_box{
    width: 100%;
    overflow: hidden;
    margin-bottom: 40px;
}
.privacy_box figure{
    width: 50%;
    float: left;
    margin: 0 2% 0 0
}
.privacy_box figure img{
    display: block;
    width: 100%;
    height: auto;
}
.privacy_box .privacy_text{
    width: 48%;
    float: left;
}
.link{
    width: 100%;
    margin: 40px auto 40px;
}
.link a{ 
    display: block;
    width: 100%;
    background: #9c9c9c;
    color: #fff;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    margin: 40px auto 40px;
    padding: 20px;
    background-image: url(../images/arrow_r.png);
    background-repeat: no-repeat;
    background-position: right 10px center;
    box-sizing: border-box;
}
.praivacy_btn{
    width: 100%;
    margin: 4px auto 40px;
}
.praivacy_btn a {
    display: block;
    width: 100%;
    text-align: center;
    background: #6495ed;
    text-decoration: none;
    color: #fff;
    padding: 10px 20px;
    border-radius: 120px;
    box-sizing: border-box;
}
    
/*------------------------------- コンタクトボタン -------------------------------*/
.contact_button{
    width: 80%;
    background-color: #ece6e6;
    margin: 0 auto 40px;
    padding: 20px;
    box-sizing: border-box;
}
.contact_button h5{
    color: #0a0a5f;
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 20px;
    text-align: left;
}
.contact_button h5 span{
    color: #2b2b2b;
    font-size: 16px;
    line-height: 1.5;
    margin-bottom: 2.66%;
    text-align: left;
}
.contact_list{
    list-style: none;
    margin: 0 auto;
    width: 80%
}
.t_tel{ 
    margin-bottom: 20px;
}
.o_tel{
margin-bottom: 20px;
}
.m_contact{
    margin: 20px 0;
}
.t_tel a{
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: #323232;
    text-decoration: none;
    padding-left: 2rem;
}
.o_tel a{
    display: block;
    font-size: 16px;
    font-weight: 600;
    color: #323232;
    text-decoration: none;
    padding-left: 2rem;
}
.m_contact a{
    display: block;
    width: 80%;
    text-decoration: none;
    color: #fff;
    background-color: #bb3b3b;
    border-radius: 6px;
    padding: 2.66%;
    text-align: center;
    margin:  20px auto 20px;
    font-size: 18px;
    font-weight: 600;
    background-image: url("../images/mail_icon.png");
    background-size: 32px 24px;
    background-repeat: no-repeat;
    background-position: left 1rem center;
}
.number{
    display: block;
    width: 100%;
    color: #323232;
    font-size: 18px;
    font-weight: 600;
    background-image: url("../images/free_tel.png");
    background-repeat: no-repeat;
    padding-left: 4rem;

}
.office_name{
    color: #4c4c4c;
    font-size: 18px;
    margin-left: 2.66%;
}
/*------------------------------- コーポレートページ・大阪ページへのリンクボタン -------------------------------*/
.link_box{
    width: 100%;
    margin: 0 auto 2.6rem;
    overflow: hidden;
}
.c_button{
    width: 48%;
    float: left;
    margin-right: 2%;
}
.c_button a{
    display: block;
    width: 100%;
    text-decoration: none;
    background-color:  #00608d;
    padding: 1rem 2rem;
    color: #fff;
    font-weight: 600;
    font-size: 20px;
    background-image: url("../images/arrow_w.png");
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: right 20px center;
    box-sizing: border-box;
}
.o_button{
    width: 48%;
    float: left;
}
.o_button a{
    display: block;
    width: 100%;
    text-decoration: none;
    background-color:  #00608d;
    padding: 1rem 2rem;
    color: #fff;
    font-weight: 600;
    font-size: 20px;
    background-image: url("../images/arrow_w.png");
    background-size: 20px;
    background-repeat: no-repeat;
    background-position: right 20px center;
    box-sizing: border-box;
}
.estimate{
    overflow: hidden;
}
.estimate p{
    width: calc(100% - 320px);
    float: left;
}
.estimate img{
    display: block;
    width: 300px;
    float: left;
    margin-left:20px;
}
/*------------------ セキュリティ ------------------*/
.certificate{
    margin-bottom: 20px;
}
.certificate p{
    margin-bottom: 20px;
}
.certificate_wrap{
    overflow: hidden;
    width: 96%;
    margin: 0 auto 40px;
}
.certificate_box1{
    width: 49%;
    height: auto;
    float: left;
    background-color: #efefef;
    border: 6px solid #9c9c9c;
    padding: 10px;
    box-sizing: border-box;
    margin-right: 2%;
}
.certificate_box1 figcaption{
    font-size: 18px;
    font-weight: 600;
}
.certificate_box1 img{
    display: block;
    width: 50%;
    height: auto;
    background: #fff;
    padding: 6px;
    border: 1px solid #9c9c9c;
    border-radius: 4px;
    box-sizing: border-box;
    margin:  0 auto 20px;
}
.certificate_box2{
    width: 49%;
    height: auto;
    float: left;
    background-color: #efefef;
    border: 6px solid #9c9c9c;
    padding: 10px;
    box-sizing: border-box;
}
.certificate_box2 img{
    display: block;
    width: 36%;
    height: auto;
    background: #fff;
    border: 1px solid #9c9c9c;
    border-radius: 4px; 
    padding: 6px;
    box-sizing: border-box;
    margin:  0 auto 20px;
}
.certificate_box2 figcaption{
    font-size: 18px;
    font-weight: 600;
}
.service{
    display: block;
    width: 100%;
    font-family:'arial black',"sans-serif";
    font-size: 14px;
    font-weight: 300;
    color: #323232;
    border-top: 1px solid #dcdcdc;
    padding-top: 16px;
}
.service_text{
    display: block;
    width: 100%;
    font-size: 14px;
    line-height: 2;
    color: #323232;
}
.service_list{
    width: 100%;
}
.service_list li{
    width: 100%;
    font-size: 14px;
    color: #323232;
    margin-bottom: 10px;
}

/*---------------------------- 上へ戻るボタン --------------------*/
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;

    z-index: 99;
}
#page-top a {
    display: block;
    width: 60px;
    height: 60px;
    background: rgba(255,255,255,.8);
    text-decoration: none;
    color: #0d6fb8;
    border: 1px solid #0d6fb8;
    font-size: 14px;
    line-height: 1;
    padding: 10px;
    text-align: center;
    border-radius: 50%;
    transition: all .3s ease;
    background-image:  url("../images/arrow_top.png");
    background-size: 26px auto;
    background-repeat: no-repeat;
    background-position: center center;
    box-sizing: border-box;
}
#page-top a:hover {
    text-decoration: none;
    opacity: .5;
}
/*------------ footer ----------------------*/
footer{
    width: 100%;
    padding: 10px;
    background-color: #191970; 
    color: #fff;
    overflow: hidden;
    box-sizing: border-box;
}
.footer_nav{
    width: 100%;
    padding: 10px;
    margin: 40px auto 40px;
    overflow: hidden;
    box-sizing: border-box;
}
.nav_box{
    width: 30%;
    float: left;
    margin: 0 2% 0 0;
}
.nav2_box{
    width: 30%;
    float: left;
    margin: 0 0 0 2%;
}
.nav2_box li{
    display: block;
    width: 100%;
    margin-bottom: 20px;
}
.nav2_box li a{
    display: block;
    width: 100%;
    padding-left: 40px;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    font-weight: 300;
    box-sizing: border-box;
    background-image: url("../images/list-mark.png");
    background-size: 16px auto;
    background-repeat: no-repeat;
}
.nav_box li {
    display: block;
    width: 100%;
    margin-bottom: 20px;
 }
.nav_box li a{
    display: block;
    width: 100%;
    padding-left: 40px;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    font-weight: 300;
    box-sizing: border-box;
    background-image: url("../images/list-mark.png");
    background-size: 16px auto;
    background-repeat: no-repeat;
}
 .nav_box li a:hover,.nav2_box li a:hover{
    color:#b2b2b2;
}
footer small {
    display: block;
    width: 100%;
    padding: 10px;
    font-size: 14px;
    clear: both;
    text-align: center;
}
}