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

html,body {
	background:url(../images/common/body_bg_01.gif) #FFF;
}

/************************************

		ヘッダー

************************************/

#pageHeader {
	background:url(../images/common/header_bg_01.png) center top repeat-y;
	background-size:contain;
}

#seoTxt {
	background:#000;
	color:#FFF;
}

#seoTxt h1 {
	font-size:14px;
	padding:0.2em 0;
	margin-top:0;
}

.nav-pills>li>a {
	background:#62C414;
	color:#FFF;
	font-weight:bold;
}
.nav-pills>li>a:hover {
	background:#7CDB4E;
}

#gnavi ul li ul {
    padding: 10px 0;
    position:absolute;
    z-index: 9999;
}
#gnavi ul li ul li {
    display: none;
    position:;
}
#gnavi ul li ul li a {
    color: #FFF;
    background: #000;
    display: block;
    padding: 10px 5px;
}

#gnavi ul li:hover ul li {
    display:block;
}

@media screen and (max-width:768px) {
	#pageHeader {
		text-align:center;
	}
	.navbar {
		position:fixed;
		top:10px;
		right:10px;
	}
}

.hojin{
	max-width: 230px;
}

/************************************

		メイン

************************************/

#main{
	font-size: 18px;
	line-height: 1.8em;
}

section {
	margin-top:120px;
}

.titBar {
	background:#F0C417;
	position:absolute;
	padding:35px 10%;
	left:0;
	width:100%;
}

.titBar span {
	font-size:51px;
	color:#000;
	border-left:#C90104 10px solid;
	font-weight:bold;
	padding-left:0.5em;
}

.titBar + * {
	padding-top:210px;
}

#pageTit {
	width:100%;
	background:#262626;
	color:#ccc;
	text-align:center;
	padding:30px;
	font-size:52px;
	font-weight:bold;
}

#pageTit {
}


/************************************

		フッター

************************************/


#pageFooter {
	background:#666666;
	color:#CCCCCC;
	padding:20px;
	margin-top:60px;
}

#pageFooter ul a {
	color: #fff;
	text-decoration: underline;
}

#pageFooter ul {
	list-style: none;
	padding-left: 0;
}

/************************************

		パーツ

************************************/

.mgt60 {
	margin-top:60px;
}

.mgt120 {
	margin-top:120px;
}

.mgb30 {
	margin-bottom:30px;
}

.mgb60 {
	margin-bottom:60px;
}

.mgb120 {
	margin-bottom:120px;
}

.btn-contact {
	font-size:21px;
	background:#C90104;
	color:#FFF;
}

.btn-contact:hover {
	background:#FF3300;
	color:#FFF;
}

.yelBox {
	margin-bottom:20px;
	background:#F1DF57;
	color:#333333;
	border-radius:10px;
	padding:20px;
	text-align:center;
}

.yelBox h2,
.yelBox h3,
.yelBox h4,
.yelBox h5,
.yelBox h6 {
	text-align:center;
	height:4em;
}

.w100 {
	width:100%;
}

.bdbTit {
	border-bottom:#333333 3px solid;
}

h2.bdbTit {
	font-size:42px;
	font-weight:bold;
}

.redTit {
	color:#C90004;
	border-left:#C90004 5px solid;
	padding-left:0.6em;
}

.dotList {
    border-bottom:1px dotted #F3F3F3;
}

.dotList dt {
	float: left;
	clear: left;
	width: 20%;
	padding:1em 0;
}

.dotList dd {
	border-bottom: 1px dotted #333;
	padding:1em 0;
	padding-left: 23%; /* dtの幅以上のpaddingをとる*/
}



/************************************

レスポンシブ対応

************************************/

@media screen and (max-width: 768px) {
    body {
        font-size: 18px;
    }

    
    .container {
        width: 100%;
        min-width: inherit;
    }

    #pageHeader,
    #pageFooter,
    #seoTxt {
        width: 100%;
        min-width:inherit;
        text-align: center;
    }

    #headerInner {
        text-align: center;
    }

    #headerInner p {
        margin: 30px auto;
    }

    #pageHeader img  {
        width: 80%;
    }
    .navbar li {
        float: none;
    }

    #gnavi ul li ul {
        padding: 10px 0;
        position:fixed;
        top:0;
        width:100%;
    }
    #gnavi ul li:hover ul li {
        display:none;
        position: fixed;
    }
    nav#gnavi {
        background:none;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 9999;
    }

    nav#gnavi ul {
        list-style: none;
        background: rgba(0,0,0,0.9);
        display: none;
        padding: 1px 0 0px;
        margin-bottom: 0;
    }

    nav#gnavi ul li a {
        background:none;
        display: block;
        float:none;
        width: 100%;
        height: auto;
        padding: 20px;
        text-indent: inherit;
        border-bottom: #fff 1px dotted;
        color: #FFF;
        -webkit-transition:none;
        -moz-transition: none;
        -o-transition: none;
        transition: none;
    }

    nav#gnavi ul li:nth-child(1) a,
    nav#gnavi ul li:nth-child(2) a,
    nav#gnavi ul li:nth-child(3) a,
    nav#gnavi ul li:nth-child(4) a,
    nav#gnavi ul li:nth-child(5) a {
        background: none;
    }

    nav#gnavi ul li a:hover {
        -webkit-transition:none;
        -moz-transition: none;
        -o-transition: none;
        transition: none;

    }

    nav#gnavi ul li a {
        background: none;
    }

    .cmn-toggle-switch {
        display: block;
        position: fixed;
        top:10px;
        right:10px;
        overflow: hidden;
        margin: 0;
        padding: 0;
        width: 50px;
        height: 50px;
        font-size: 0;
        text-indent: -9999px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
        box-shadow: none;
        border-radius: none;
        border: none;
        cursor: pointer;
        -webkit-transition: background 0.3s;
        transition: background 0.3s;
    }

    .cmn-toggle-switch:focus {
        outline: none;
    }

    .cmn-toggle-switch span {
        display: block;
        position: absolute;
        top: 25px;
        left: 5px;
        right: 5px;
        height: 3px;
        background: white;
    }

    .cmn-toggle-switch span:before,
    .cmn-toggle-switch span:after {
        position: absolute;
        display: block;
        left: 0;
        width: 100%;
        height: 3px;
        background-color: #fff;
        content: "";
    }

    .cmn-toggle-switch span:before {
        top: -12px;
    }

    .cmn-toggle-switch span:after {
        bottom: -12px;
    }
    .cmn-toggle-switch__htx {
        background-color: #ED4C58;
    }

    .cmn-toggle-switch__htx span {
        -webkit-transition: background 0 0.3s;
        transition: background 0 0.3s;
    }

    .cmn-toggle-switch__htx span:before,
    .cmn-toggle-switch__htx span:after {
        -webkit-transition-duration: 0.3s, 0.3s;
        transition-duration: 0.3s, 0.3s;
        -webkit-transition-delay: 0.3s, 0;
        transition-delay: 0.3s, 0;
    }

    .cmn-toggle-switch__htx span:before {
        -webkit-transition-property: top, -webkit-transform;
        transition-property: top, transform;
    }

    .cmn-toggle-switch__htx span:after {
        -webkit-transition-property: bottom, -webkit-transform;
        transition-property: bottom, transform;
    }

    /* active state, i.e. menu open */
    .cmn-toggle-switch__htx.active {
        background-color: #cb0032;
    }

    .cmn-toggle-switch__htx.active span {
        background: none;
    }

    .cmn-toggle-switch__htx.active span:before {
        top: 0;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .cmn-toggle-switch__htx.active span:after {
        bottom: 0;
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    .cmn-toggle-switch__htx.active span:before,
    .cmn-toggle-switch__htx.active span:after {
        -webkit-transition-delay: 0, 0.3s;
        transition-delay: 0, 0.3s;
    }

    /* メイン */

    #main section,
    #main article,
    aside section,
    aside article {
        background:url(../images/common/section_bg_01.gif) left bottom repeat-x;
        padding-bottom: 30px;
        margin-bottom: 60px;
    }

    #main section h1,
    #main article h1,
    aside section h1,
    aside article h1 {
        padding-bottom: 15px;
        text-align: center;
    }

    #main section h1 img,
    #main article h1 img,
    aside section h1 img,
    aside article h1 img {
        width: 100%;
    }

    /* パーツ */

    dl.colorful-line-list dt,
    dl.colorful-line-list dd {
        float: none;
        clear: none;
    }
    dl.colorful-line-list dt {
        width:100%;
        font-size: 14px;
        font-weight: bold;
        text-align: left;
    }

    dl.colorful-line-list dt:before {
        content:" ■ ";
    }

    dl.colorful-line-list dd {
        padding: 5px 10px;
    }

    .colorful-line-list dd a {
        display: block;
        padding: 10px 0;
    }


    /* フッター */
    #pageFooter img {
        width: 100%;
    }

}
