@charset "utf-8";

body {
	margin: 0;
	padding: 0;
}
.back {
	position: fixed;
	bottom: 10px;
	right: 10px;
}
ul {
	margin: 0;
	padding-left: 0;
}
li {
	list-style: none;
}

p {
	margin:0 0 1.5rem;

}

hr {
	border-bottom: 1px solid #d4d4d4;
	}
	
/* 電話番号へのリンクはスマホのみ */
@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}

/*################ hタグ #################*/


h1{
	font-size:1.3rem;
	font-weight:normal;
	color:#FFF;
	padding:5px 0;
}


/*h2{
	font-size:2.2rem;
	font-weight:normal;
	color:#333;
	padding:7px 0 5px 25px;
	border-top: 2px solid #333;
	border-bottom: 1px solid #333;
	background: url(../image/common/icon01.png) no-repeat left center;
	margin-bottom:20px;
}*/


h2{
	font-size:2.2rem;
	font-weight:normal;
	color:#333;
	padding:10px 0 5px 0;
	border-top: 2px solid #333;
	border-bottom: 1px solid #333;
	margin-bottom:20px;
}

h2:before {
      content : url(../image/common/icon01.png) ;
	  display:inline-block;
	  margin-right:10px;
}

h3{
	font-size:2.2rem;
	font-weight:normal;
	color:#333;
	padding:10px 0 5px 0;
	border-top: 2px solid #333;
	border-bottom: 1px solid #333;
	margin-bottom:20px;
}

h3:before {
      content : url(../image/common/icon01.png) ;
	  display:inline-block;
	  margin-right:10px;
}



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

h2{
	font-size:1.8rem;
}

h3{
	font-size:1.8rem;}
}

/*################ レイアウト #################*/
.wrap {
	width:1060px;
	margin:0 auto;}
	
@media screen and (max-width: 767px) {
.wrap {
	width:90%;}
}

/*################ キャッチ #################*/

#catch{
	background:#78bf4a;}
	
@media screen and (max-width: 767px) {
#catch{
	margin-top: 56px;
}
}

/*################ ヘッダー #################*/
#header {
	position: relative;
	width: 100%;}
	
#logo {
	float:left;}

#contact {
	float:right;
	position: relative;
	top:0;
	margin-bottom:0;}
	
@media screen and (max-width: 767px) {
	
#logo {
	float:none;
	text-align:center;}
	
#contact {
	display:none;
	float:none;}
}


/*################ スライダー #################*/

#slider_wrap {
	width: 100%;
	margin:0 auto 30px;}
	
@media screen and (max-width: 767px) {	
#slider_wrap {
	width: 100%;
	margin:20px auto 30px;}
}



/*################ ナビ #################*/


#global-nav ul li img{
	display: inline-block;
	margin: 0px 15px 15px 30px;
}
	
#global-nav ul li a{
	display: inline-block;
	width: auto;
	text-align: left;
	font-weight:bold;
	font-size:1.8rem;
	padding:15px 10px 15px 0;
}
	
#global-nav ul li:hover {
	background:#f9f9f9;}
 
.inner {
    width: 1060px;
    margin: 0 auto;
}
.inner:after {
    content: "";
    clear: both;
    display: block;
}
 
/* header */
#top-head {
    position: relative;
    width: 100%;
    margin: 0 auto 0;
    line-height: 1;
	border-top: 1px solid #333;
	border-bottom: 1px solid #333;
    z-index: 99999;
}

#top-head .inner {
    position: relative;
}

#global-nav ul {
    list-style: none;
    position: relative;
    right: 0;
    bottom: 0;
    font-size: 14px;
}
#global-nav ul li {
    float: left;
}
 
/* Fixed */
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 10px;
    height: 55px;
    background: #fff;
    background: rgba(255,255,255,.7);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}
#top-head.fixed .logo {
    font-size: 24px;
    color: #333;
}
#top-head.fixed #global-nav ul li a {
    color: #333;
    padding: 0 20px;
}
 
/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #FFF;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}
	
@media screen and (max-width: 767px) {
	
	
	#global-nav ul li img{
	display: none;
	margin: 0;
}
	
	
	#global-nav ul li a{
	text-align: center;
}
	
	
    #top-head,
    .inner {
        width: 100%;
        padding: 0;
    }
    #top-head {
        top: 0;
        position: fixed;
        margin-top: 0;
		border-top: none;
		border-bottom: none;
    }
    /* Fixed reset */
    #top-head.fixed {
        padding-top: 0;
        background: transparent;
    }
    #mobile-head {
        background: #333;
        width: 100%;
        height: 56px;
        z-index: 999;
        position: relative;
    }

    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: -500px;
        background: #f9f9f9;
        width: 100%;
        text-align: center;
        padding: 10px 0;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
    #global-nav ul {
        list-style: none;
        position: static;
        right: 0;
        bottom: 0;
        font-size: 14px;
    }
    #global-nav ul li {
        float: none;
        position: static;
    }
    #top-head #global-nav ul li a,
    #top-head.fixed #global-nav ul li a {
        width: 100%;
        display: block;
        color: #333;
        padding: 18px 0;
    }
    #nav-toggle {
        display: block;
    }
    /* #nav-toggle 切り替えアニメーション */
    .open #nav-toggle span:nth-child(1) {
        top: 11px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }
    .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }
    .open #nav-toggle span:nth-child(3) {
        top: 11px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }
    /* #global-nav スライドアニメーション */
    .open #global-nav {
        /* #global-nav top + #mobile-head height */
        -moz-transform: translateY(556px);
        -webkit-transform: translateY(556px);
        transform: translateY(556px);
    }
}
	

/*################ メイン #################*/

#main{
	width:730px;
	float:left;
	margin-bottom:20px;}
	
@media screen and (max-width: 767px) {
#main{
	width:100%;
	float:none;}
}


/*################ コンテンツ #################*/
#contents{
	margin-top:30px;
}

/* ニュース */

#news {
	margin-bottom:30px;
	height: 230px;
	overflow-y: scroll;
}

#news p {
	margin-bottom:0;
}

#news dl {
	text-align: center;
	color:#777;
}

#news hr {
	clear:both;
	}

#news dl dt {
	float: left;
	width: 10%;
	color:#FFF;
	padding:2px 0;
}

#news dl > dd {
	float: left;
	width: 20%;
	font-weight: bold;
	padding:2px 0;	
}

#news dl > dd + dd {
	float: left;
	width: 70%;
	text-align: left;
	font-weight: normal;
	margin-bottom: 10px;
}

.news_ct01{background:#ff9604;}
.news_ct02{background:#78bf4a;}
.news_ct03{background:#29abe2;}

/* スクロールバーiOS対策 */

#news::-webkit-scrollbar {
  background:#ccc;
  width:10px;
}
#news::-webkit-scrollbar-thumb {
  background:#aaa;
}



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

#news {
	width:98%;
	height: 320px;
}


#news dl dt {
	width: 90px;
	float: none;
}

#news dl > dd {
	float: none;
	width: 200px;
	text-align:left;
	margin-top:5px;
}

#news dl > dd + dd {
	float: none;
	width: 100%;
	padding:0;
}

}

/* メッセージ */
#message{
	position: relative;
	padding: 10px 30px 10px;
	border:solid 1px #666;
	margin-bottom:30px;
}

#message h2{
	border-top:none;
}

#message .left{
	width:30%;
	float:left;}
	
#message .right{
	width:67%;
	float:right;}
	
#message .right img{
	display:none;}


.ceo{
	margin-top:50px;
	text-align: right;}
	
@media screen and (max-width: 767px) {

#message{
	padding: 10px 30px 20px;
}

#message .left{
	display: none;}
	
#message .right img{
	display: block;}
	
#message .right{
	width:100%;
	float:right;}

	}


/* カテゴリー */
	
#category{}

#category ul {
	margin:20px 0 40px;
}
	
#category ul li {
	max-width:242px;
	float:left;}
	
#category ul li:nth-child(1),#category ul li:nth-child(2){
	margin-right:2px;}
	
#category ul li a{
	display:block;
	text-align:center;
	width:100%;
	font-size:1.7rem;
	font-weight:bold;
	padding:10px 0;
	background:#f5f5f5 url(../image/common/cursor01.png) bottom 3px right 3px no-repeat;}
	
@media screen and (max-width: 767px) {
	
#category ul {
	margin:20px auto 10px;
	max-width:242px;
}

#category ul li {
	margin-bottom:10px;
	float:none;}

}

/*################ サイド #################*/

#side{
	max-width:285px;
	float:right;}
	
#side p{
	margin-bottom:15px;}
	
#side p:first-child{margin-bottom:50px;}

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

#side{
	max-width:242px;
	margin: 0 auto 40px;
	float:none;}
	
#side p{
	margin:5px auto 5px;}
	
#side p:first-child{margin-bottom:0;}

}

/*################ フッター #################*/

/* ナビ */
	
#footer_navi{
	background:#e9e9e9;}

#footer_navi ul li {
	list-style: url(../image/common/icon02.png) inside;
	font-size:1.2rem;
	float: left;
	margin:5px 35px 5px 0;
}

@media screen and (max-width: 767px) {
#footer_navi ul li {
	list-style: url(../image/common/icon02.png) inside;
	width:50%;
	font-size:1.2rem;
	float: left;
	margin:10px 0;
}	
}
	
/* コピーライト */

#copy{
	background:#333;
	color:#ababab;
	font-size:1.4rem;
	text-align:center;
	padding:5px 0 5px;
}

#copy p{
	margin-bottom:0;
}

/*################ サブ #################*/

/* サブtype01 */

.type01 div:first-child{
	margin:0 0 30px;	
}
	
.type01 div:first-child h2{
	font-size:3.6rem;
	font-weight: bold;
	color:#333;
	padding:0;
	border-top: none;
	border-bottom: 1px solid #333;
	background: none;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;	
}

.type01 h2:before {
	display:none;
}


.type01 section {
	width:100%;
	margin-bottom:30px;}
	
	
.type01 section .text{
	width:400px;
	float:left;}
	
.type01 section .img{
	width:292px;
	float:right;}

	
@media screen and (max-width: 767px) {
	
.type01 div:first-child{
	margin:0 0 30px;	
}

.type01 section .text{
	width:100%;
	float:none;}
	
.type01 section .img{
	width:100%;
	float:none;
	text-align:center;}
}


/* サブtype02 */

.type02 div:first-child{
	margin:0 0 30px;	
}
	
.type02 div:first-child h2{
	font-size:3.6rem;
	font-weight: bold;
	color:#333;
	padding:0;
	border-top: none;
	border-bottom: 1px solid #333;
	background: none;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;	
}

.type02 h2:before {
	display:none;
}


.type02 section {
	width:100%;
	margin-bottom:30px;}

.type02 section h3{
	position:relative;
}

.type02 section h3 ul{
	position:absolute;
	display:inline-block;
	vertical-align:middle;
	font-size:0;
	margin-top:-5px;
	right:0;}

.type02 section h3 ul li {
	display:inline-block;
	width:38px;
	height:38px;
	margin-right:8px;}
	
.type02 section .text{
	width:100%;}
	
.type02 section .img{
	width:100%;}

.type02 section .img ul li{
	width:50%;
	float:left;}
	
@media screen and (max-width: 767px) {
.type02 section h3 ul{
	position: static;
	display:block;
	margin:5px 0;
}
}


/* サブtype03 */

.type01 div:first-child{
	margin:0 0 30px;	
}
	
.type01 div:first-child h2{
	font-size:3.6rem;
	font-weight: bold;
	color:#333;
	padding:0;
	border-top: none;
	border-bottom: 1px solid #333;
	background: none;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;	
}

.type03 h2:before {
	display:none;
}


.type03 section {
	width:100%;
	margin-bottom:30px;}
	
	
.type03 section .text{
	width:400px;
	float:left;}
	
.type03 section .img{
	width:292px;
	float:right;}

	
@media screen and (max-width: 767px) {
	
.type03 div:first-child{
	margin:0 0 30px;	
}

.type03 section .text{
	width:100%;
	float:none;}
	
.type03 section .img{
	width:100%;
	float:none;
	text-align:center;}
}


/* about */
	
.about h3{
	font-size:1.8rem;
	padding:7px 0 5px 0;
	margin-top:20px;
	margin-bottom:0;
	border-top: none;
	border-bottom: none;
	background: none;
	}

	
@media screen and (max-width: 767px) {
	
.type02 div:first-child{
	margin:0 0 30px;	
}

.type02 section .text{
	width:100%;
	float:none;}
	
.type02 section .img{
	width:100%;
	float:none;
	text-align:center;}
}



/*################ テーブル #################*/
table {
	border-collapse: collapse;
	width: 100%;
	text-align: left;
	line-height: 1.5;
}
table th {
	width: 20%;
	padding: 10px;
	font-weight: bold;
	vertical-align: top;
	border: 1px solid #000;
}
table td {
	width: 80%;
	padding: 10px;
	vertical-align: top;
	border: 1px solid #000;
}

.map iframe{
	width:100%;
	height:400px;
}

@media screen and (max-width: 767px) {
	
table {
	border: 1px solid #CCC;
}

table th {
	display:block;
	padding: 10px;
	width: auto;
	border: none;
	background:#CCC;
	text-align: left;
}

table td {
	display:block;
	width: auto;
	border: none;
}

.map iframe{
	height:300px;
}

}

/*################ ボタン #################*/

/*トップに戻るボタン
===================================*/

#page-top {
    position: fixed;
    bottom: 20px;
    right: 5%;
    font-size: 1.4rem;
	font-weight:bold;
}
#page-top a {
    background: #78bf4a;
    text-decoration: none;
    color: #fff;
    width: 50px;
    padding: 15px 0;
    text-align: center;
    display: block;
    border-radius: 30px;
}
#page-top a:hover {
    text-decoration: none;
    background: #78bf4a;
}
