@charset "UTF-8";

/*
Theme name:goodlife original theme
Author:goodlife
Description:This is my original theme.
Version:1.0
*/

/*--basic css--*/
html{-webkit-text-size-adjust:100%;}
body{
margin:0;
padding:0;
font-family:"ヒラギノ角ゴ ProN", "Hiragino kaku Gothic ProN", "メイリオ", sans-serif;
background-color: #fff;
color:#333;
}

h1,h2,h3,h4,p,dt,dd,ul,li,a{
                   margin:0 auto;
                   padding:0;
                   line-height: 1.5;
                   letter-spacing:0.05em;
                   max-width:860px;
}

img, div,section{
        margin:0 auto;
        padding:0;
        box-sizing:border-box;
}
img{
    max-width:100%;
    height:auto;
    vertical-align: bottom;
}

li {list-style-type: none;}
a {text-decoration:none; display:block;}
dd a, dt a{display:inline;}

section{
margin:0 auto;
}

.clearfix:after{
    content: "";
    display: block;
    clear:both;}

.container-fluid{ padding:0; }

.container {
            margin:0px auto;
            max-width: 960px;
            padding:0;
            box-sizing: border-box;
}

/*モバイルは横に余白設定*/
@media screen and (max-width:960px){
.container {
            padding:0 2%;
}
}


#main_contents_wrapp{
border: 3px solid #f8931f;
border-radius:10px;
border-bottom: 16px solid #f8931f;
padding:3% 3%;
}

/*汎用css*/
a:hover{text-decoration:none; transition:0.4s;}

.ib{
display:inline-block;
}

.block{
display:block;
}

.ta_cent{
text-align:center;
}

.ml5{
margin-left:5px;
}

.mr5{
margin-right:5px;
}

.mt-1_25em{
	margin-top: -1.25em;
}

p{
margin-bottom:20px;
}

h2 {
    padding-left: 0.5rem;
    font-weight:bold;
    margin:15px 0 25px 0;
    color: #f8931f;
    font-size:20px;
    border-left: 10px #f8931f solid;
 }

h3{
   font-size:16px;
    margin:10px 0 10px 0;
}

.bluebox {
    padding: 0.5rem;
    background: #b1d1e0;
    color: white;
    font-size:16px;
    margin-bottom:15px;
}

/*PC スマホ切り替え*/
/*サイドバー装飾*/

@media print, screen and (min-width:768px){
body:not(.home) #main_contents_wrapp{
box-sizing:border-box;
float:left;
width:72%;
}

body:not(.home)  #sidebar{
display:block;
box-sizing:border-box;
float:right;
width:26.5%;
}

.for_mb{
   display:none; 
 }
}

#sidebar #side_img{
width:100%;
margin-bottom:15px;
}

#sidebar #side_img img{
box-sizing:border-box;
border:3px solid #f8931f;
border-radius:10px;
}

#sidebar #side_news{
border:3px solid #f8931f;
border-radius:10px;
border-bottom: 16px solid #f8931f;
}

#sidebar #side_news h2{
margin:0;
border:none;
text-align:center;
background-color:#f8931f;
color:#fff;
}

#sidebar #side_news h2:before{
position:relative;
font-family:"FontAwesome";
content:"\f044";
margin-right:3px;
margin-top:-1px;
}

#sidebar #side_news li a{
font-weight:normal;
color:#333;
line-height:1.2;
padding:10px 2px 5px 5px;
padding-left:1em;
text-indent:-1em;
transition:0.1s;
}

#sidebar #side_news li{
padding-left:5px;
}

#sidebar #side_news ul li:not(:last-child) a{
border-bottom:1px dotted #f8931f;
}

#sidebar #side_news li a:before{
font-family:"FontAwesome";
content:"\f0a9";
margin-right:2px;
color:#f8931f;
} 

#sidebar #side_news li a:hover{
color:#f8931f;
}

#area_banner{
max-width:500px;
margin:15px auto 0 auto;
border:3px solid #f8931f;
border-radius:10px;
border-bottom: 16px solid #f8931f;
}

#area_banner h3{
margin:0;
border:none;
line-height:2.0;
text-align:center;
background-color:#f8931f;
color:#fff;
}

#area_banner h3:before{
position:relative;
font-family:"FontAwesome";
content:"\f041";
margin-right:3px;
margin-top:-1px;
}

#area_banner ul{
padding:2% 0;
}

#area_banner li{
padding:2%;
}

#area_banner li a{
border:3px solid #f8931f;
border-radius:10px;
box-shadow:1px 2px 2px 1px #ddd;
}

#area_banner li a img{
border-radius:10px;
}

#area_banner li a:hover{
opacity:0.85;
box-shadow:1px 2px 2px 2px #fff;
}

#sidebar #edit{
margin:0;
}

#sidebar #edit a{
padding-top:10px;
font-size:13px;
text-align:right;
color:#bbb;
}



@media only screen and (max-width:767px){

/*動画非表示*/
div#movie_wrapp{
   display:none; 
}

.for_pc{
   display:none; 
 }

/*お知らせページ以外はサイドメニュー非表示*/
/* その他の地域は表示 */
body:not(#contact) #sidebar #side_img,
body:not(#contact) #sidebar #side_news
{
display:none;
}

body#contact #sidebar {
margin-top:25px;
}

}

@media only screen and (max-width:959px){ /*料金表はPCサイズのみ表示*/
#sidebar #side_news li a[href*="charge-list"] {
    display: none;
	}
}



/*===終了/basic css====*/

/* ナビゲーション　*/

nav {
max-width:960px;
box-sizing:border-box;
margin:10px auto 2px auto;
border: 3px solid #f8931f;
}

nav ul{
    max-width:100%;
    background-color:#f8931f;
    /*box-sizing: border-box;*/
}
nav ul li{
    max-width:100%;
    box-sizing: border-box;
}

nav ul li a{
    font-weight:bold;
    color: white;
    text-shadow: 2px 2px 2px #1e1e1e;
    box-shadow: 3px 3px 5px 0 rgba(255, 255, 255, 0.75) inset, -3px -3px 5px 0 rgba(0, 0, 0, 0.5) inset;
    background: #f8931f;
    font-size:16px;
    padding:8px;
    text-align:center;
    box-sizing: border-box;
}

nav ul li a:hover{
opacity:0.8;
}

nav .current-menu-item a {
    background: #f7c51d !important;
}

nav ul li:first-of-type a:before{
font-family:"FontAwesome";
content:"\f015";
padding-right:5px;
line-height:1.0;
}



@media print, screen and (min-width:768px){
nav ul li{
float:left;
width:16.66%;
/*width : -webkit-calc(100% / 6) ;
width : calc(100% / 6) ;*/
}
}

/*　アイキャッチ画像　*/

/*トップページのヘッダー画像*/
#logo{
	text-align:center;
}

#topimage .topimage_inner{
border: 2px solid #f8931f;
background-color:#f8931f;
max-width:960px;
margin:0 auto;
}

#home #topimage #logo,
#home #topimage .service,
#topimage #top03 .info{
border: 2px solid #f8931f;
background-color:#fff;
overflow:hidden;
}

#topimage #top01{
border-bottom:0px solid #f8931f;
}

#topimage #top03{
border-top:0px solid #f8931f;
}

#home #topimage a img{
transition:0.8s;
}

#topimage a:hover{
opacity:0.9;
}

#topimage #top03 a:hover{
opacity:0.8;
}

#home #topimage #logo a:hover img.transform,
#home #topimage .service a:hover img.transform{
transform:scale(1.05,1.05);
}


#home #topimage .service{
position:relative;
}

#home #topimage .service .top_textimg{
position:absolute;
top:6%;
left:4%;
max-width:300px;
}

#home #topimage .service a:after{
font-family:"FontAwesome";
content:"\f0a9";
margin-right:5px;
color:#f8931f;
position:absolute;
bottom:5%;
right:20px;
font-size:50px;
/*color:#fff;*/
text-shadow:0px 0px 10px #fff,0px 0px 10px #fff,0px 0px 10px #fff,0px 0px 10px #fff,0px 0px 10px #fff,0px 0px 10px #fff,0px 0px 10px #fff,0px 0px 10px #fff,0px 0px 10px #fff,0px 0px 10px #fff,0px 0px 10px #fff;
} 

@media screen and (min-width:420px) and (max-width:767px){
#topimage #top01{
float:left;
width:33.65%;
border:2px solid #f8931f;
}

#topimage #top03{
float:left;
width:66.35%;
border:2px solid #f8931f;
}

#topimage #top01{
border-right:0px solid #f8931f;
}

#topimage #top03{
border-left:0px solid #f8931f;
}

#topimage #top02{
display:none;
}
}

@media print, screen and (min-width:768px){
#top01 #logo{
float:left;
width:33.33%;
}
#top01 .service {
float:left;
width:66.67%;
}

#topimage #top02 .service,
#topimage #top03 .info{
margin-top:-1px;
border-top:none;
}

#top02 .service:first-of-type{
float:left;
width:33.33%;
}

#top02 .service:nth-of-type(2),
#top02 .service:nth-of-type(3),
#topimage #top03 .info:nth-of-type(2){
float:left;
width:33.33%;
}

#topimage #top03 .info:first-of-type{
float:left;
width:66.67%;
}

}



#topimage #top03 .info:nth-of-type(2) {
position:relative;
}

#top_news {
position:absolute;
top:0;
left:0;
width:100%;
}

#home #top_news h2 {
font-size:18px;
margin:0 0 2% 0;
padding:2% 0 1% 0;
text-align:center;
line-height:1.5;
color:#fff;
color:rgba(255,255,255,1.0);
background-color:#f8931f;
box-shadow:0px 1px 10px #f8931f;
}

#home #top_news h2:before{
position:relative;
font-family:"FontAwesome";
content:"\f044";
margin-right:3px;
margin-top:-1px;
}

#top_news ul{
padding:2% 7%;
}

#top_news ul li a{
font-size:16px;
line-height:1.2;
font-weight:bold;
padding:1.5% 0;
padding-left:1.2em;
text-indent:-1.2em;
transition:0s;
color:#fff;
text-shadow:
0px 0px 3px #f8931f,0px 0px 3px #f8931f,0px 0px 3px #f8931f,0px 0px 3px #f8931f,
0px 0px 5px #f8931f,0px 0px 5px #f8931f,0px 0px 5px #f8931f,0px 0px 5px #f8931f;
border-bottom:2px dotted #f8931f;
}

#top_news ul li a:hover{
opacity:1.0 !important;
color:#f8931f;
text-shadow:
0px 0px 1px #fff,0px 0px 1px #fff,0px 0px 1px #fff,0px 0px 1px #fff,
0px 0px 3px #fff,0px 0px 3px #fff,0px 0px 3px #fff,0px 0px 3px #fff,
0px 0px 5px #fff,0px 0px 5px #fff,0px 0px 5px #fff,0px 0px 5px #fff;
}

#top_news li a:before{
font-family:"FontAwesome";
content:"\f0a9";
margin-right:0.3em;
color:#f8931f;
text-shadow:
0px 0px 1px #fff,0px 0px 1px #fff,0px 0px 1px #fff,0px 0px 1px #fff,
0px 0px 3px #fff,0px 0px 3px #fff,0px 0px 3px #fff,0px 0px 3px #fff;
} 

#top_news li a:hover:before{
color:#f8931f;
text-shadow:
0px 0px 1px #fff,0px 0px 1px #fff,0px 0px 1px #fff,0px 0px 1px #fff,
0px 0px 3px #fff,0px 0px 3px #fff,0px 0px 3px #fff,0px 0px 3px #fff;
opacity:0.8;
}

@media print, screen and (max-width:959px) {
#top_news ul li a{
font-size:14px;
line-height:1.1;
}
}

/*それ以外のページのヘッダー画像*/

#topimage_container{
max-width:960px;
margin:0 auto;
}

@media screen and (max-width:419px){
#topimage_container{
display:none;
}
}

#topimage_inner{
border:2px solid #f8931f;
background-color:#f8931f;
box-sizing:border-box;
}

#topimage_inner #logo,
#topimage_inner #time_service,
#topimage_inner #service .service{
border:2px solid #f8931f;
background-color:#fff;
}

#topimage_inner #time_service,
#topimage_inner #service {
background-color:#fff;
}

@media screen and (min-width:420px){
#topimage_inner #logo,
#topimage_inner #time_service{
float:left;
box-sizing:border-box;
width:50%;
border:2px solid #f8931f;
}
}

@media print, screen and (min-width:768px){
#topimage_inner #logo,
#topimage_inner #time_service,
#topimage_inner #service{
float:left;
box-sizing:border-box;
width:33.333%;
}

#topimage_inner #service .service{
box-sizing:border-box;
float:left;
width:50%;
position:relative;
}

#topimage_inner #service .service .img_shadow{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
box-shadow: 3px 3px 5px 0 rgba(255, 255, 255, 0.75) inset, -3px -3px 5px 0 rgba(0, 0, 0, 0.5) inset;
}

}

#topimage_container a:hover{
opacity:0.7;
}


/*panuzuパンクズリスト*/
#breadcrumb ul{
max-width:960px;
padding:0 5px;
line-height:1.2;

} 

#breadcrumb li,
#breadcrumb li a
{
display:inline-block;
letter-spacing:0.02em;
padding:0;
color:#f8931f;
font-size:13px;
line-height:1.0;
}

#breadcrumb i {
  margin-right: 0px;
}

/* footer */

#footerback{
   margin-top:40px;
   padding:20px 10px;
    background: #f7c51d;
    box-shadow: 3px 3px 5px 0 rgba(255, 255, 255, 0.75) inset, -3px -3px 5px 0 rgba(0, 0, 0, 0.5) inset;
    text-shadow: 
     0 3px 1px #e8191c, 3px 0 1px #e8191c, 0 -3px 1px #e8191c, -3px 0 1px #e8191c, -3px -3px 1px #e8191c, 
     3px -3px 1px #e8191c, -3px 3px 1px #e8191c, 3px 3px 1px #e8191c;
}

#footerback div p{
color:white;
font-weight:bold;
text-align:center;
font-size:23px;
line-height:1.5;
letter-spacing:0;
margin-bottom:0;
}

#footerback div.phone-number p:first-of-type{
font-size:14px;
text-shadow: 0 2px 1px #e8191c, 2px 0 1px #e8191c, 0 -2px 1px #e8191c, -2px 0 1px #e8191c, -2px -2px 1px #e8191c, 2px -2px 1px #e8191c, -2px 2px 1px #e8191c, 2px 2px 1px #e8191c;
margin-bottom:0;
}

#footerback div.phone-number p:last-of-type{
max-width:230px;
padding-left:40px;
font-size:27px;
margin:0 auto;
background:url('img/freephone.png') no-repeat 0 0;
background-size:35px 35px;
letter-spacing:0.05em;
}

/*　モバイル用電話番号　*/

#freedial_button {
    width: 280px;
    height: 90px;
    margin-top:-10px;
    margin-right: auto;
    margin-left: auto;
    background-repeat: no-repeat;
    background-image: url(img/freedial.svg);
    background-size: cover;
    background-size: 100%;
    padding: 0;
    line-height:1.0;
}
/*　▲モバイル用電話番号　*/

@media screen and (max-width:959px){

#footerback div.contact p{
line-height:2.5;
}

#footerback div.phone-number p:last-of-type{
max-width:215px;
padding-left:40px;
letter-spacing:0.05em;
}
}

@media screen and (min-width:960px){

#footerback{
padding:20px 0 5px 0;
}

#footerback .footer_inner{
display:table;
margin:0 auto;
}

#footerback div div{
display:table-cell;
vertical-align:middle;
padding:0 10px;
}
}

#footerback #copyright{
display:block;
text-shadow:none;
text-align:center;
padding:0;
color:#e8191c;
opacity:0.5;
letter-spacing:0em;
margin-bottom:0px;
}

@media screen and (max-width:959px){
#footerback #copyright{
margin-bottom:-13px;
margin-top:15px;
}
}


/*コンタクトフォーム*/

#contact_form{
max-width:860px;
margin:25px auto;
}

#contact_form dt{
font-weight:bold;
padding:15px 10px 0px 15px;
}

#contact_form dd{
padding:0px 10px 15px 10px;
margin-bottom:15px;
}

#contact_form dd:last-of-type{
padding:15px 10px 15px 10px;
}

.form_width{
width:95%;
}

#contact_form .required {
    font-size: 0.8em;
    color: #FFF;
    display: inline-block;
    padding: 0.3em 0.3em 0.2em;
    background: #f8931f;
    border-radius: 2px;
    margin-left:5px;
}

#contact_form input[type="text"], #contact_form input[type="email"], 
#contact_form input[type="tel"], textarea {
    border: 1px #89BDDE solid;
    padding: 0.5em;
    border-radius: 5px;
}

#contact_form input[type="text"]:focus, #contact_form input[type="email"]:focus,
#contact_form input[type="tel"]:focus, textarea:focus {
    background: #EEFFFF;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
}

#contact_form input[type="submit"] {
    border: 1px #F8931F solid;
    padding: 0.5em 4em;
    border-radius: 5px;
    background:#F8931F;
    color: #fff;
    box-shadow: 1px 2px 2px 1px rgba(0, 0, 0, 0.15);
    font-weight: bold;
}

#contact_form input[type="submit"]:hover {
    background: #F5CE49;
    border: 1px #F5CE49 solid;
    box-shadow: none;
}

#contact_form dt.empty{
display:none;
}

#contact_form dt:nth-of-type(2n),
#contact_form dd:nth-of-type(2n){
background-color:#eee;
}

@media print, screen and (min-width: 768px) {

.form_width{
width:75%;
}

#contact_form dt{
float:left;
width:30%;
height:42px;
clear:left;
text-align:right;
padding:2.5% 2.5% 1.5% 2.5%;

}

#contact_form dd{
width:60%;
padding:2% 2.5%;
margin:0;
float:left;
}

#contact_form dt.empty{
display:block;
}

#contact_form dt:last-of-type,
#contact_form dd:last-of-type{
padding:2.5%;
}

}

/*印刷用バナ－*/

#banner_PDF{
    border:3px solid #f8931f;
    border-radius:10px;
    margin:15px auto;
    padding:10px 10px;
    max-width:450px;
    box-shadow:2px 2px 3px #ddd;
}

#banner_PDF a{
    border-top:1px dotted #f8931f;
    border-bottom:1px dotted #f8931f;
    padding:3px 0 3px 0 ;
}

#banner_PDF a:hover{
    opacity:0.75;
}

#banner_PDF img{
        border-radius:10px;
}







