@charset "utf-8";
@media screen and (max-width:640px){

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

          General Setting

*****************************************/
html,body {
	margin: 0;
	padding: 0;
	font-size: 62.5%; /* 10px */
}
body {
	background: #fff;
	width: 100%;
    color: #231815;
	font-size: 1.4rem; /* 14px */
    font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    line-height: 1.625;
}

img {
   vertical-align: bottom;
}

#contents > p {
	text-align: justify;
 	text-justify: inter-ideograph;
}

*, *: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;
}

.pc {display: none;}
.sp {display: block;}

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

          Typography

*****************************************/
.red {color: #ff0000;}
.blue {color: #014a96;}
.sml {font-size: 1.2rem; /* 12px */ }
.lrg {font-size: 1.6rem; /* 16px */ }

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

          Link

*****************************************/
a {
	color: #231815;
	text-decoration: none;
}
a:hover {
	color: #231815;
	text-decoration: underline;
}
#contents a:hover img {
	opacity: 0.75;
	filter: alpha(opacity=75);
	-ms-filter: "alpha(opacity=75)";
}

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

          Layout

*****************************************/
#header {
	width: 100%;
}
#contents {
	width: 100%;
}
#footer {
	width: 100%;
	margin-top: 25px;
	margin-bottom: 25px;
}
.wrapper {
	margin: 0 auto;
}
	#lower #contents .wrapper {
		background-color: #eeeeef;
		padding-bottom: 30px;
	}

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

*****************************************/
.flR {float: right;}
.flL {float: left;}
.taR {text-align: right !important;}
.taL {text-align: left !important;}
.mt10 {margin-top: 10px;}
.mt15 {margin-top: 15px;}
.mt20 {margin-top: 20px;}
.mt28 {margin-top: 28px;}
.mt46 {margin-top: 46px;}
.em1 {margin-left: 1em;}

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

          header

*****************************************/
#header .wrapper {
	padding: 0 10px;
}
#header .wrapper h1 {
	margin: 20px 0;
	text-align: center;
}
#header .wrapper .hd_tel {
	display: none;
}

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

          nav

*****************************************/
#nav {
	background-color: #014A96;
}
#nav ul {
}
#nav ul li {
	text-align: center;
}
#nav ul li + li {
	border-top: 1px solid #fff;
}
#nav ul li a {
	display: block;
	padding: 10px 0 14px;
	color: #fff;
}
#nav ul li a:hover {
	opacity: 0.75;
	filter: alpha(opacity=75);
	-ms-filter: "alpha(opacity=75)";
}
#nav ul li a img {
	vertical-align: middle;
}

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

          Index
  
************************************************** */
#idx #contents .mainvisual {
	background: url(../images/idx_mainvisual_bg.png) left 100px no-repeat;
	width: auto;
	height: 508px;
	text-align: center;
	overflow: hidden;
}
#idx #contents .mainvisual h2 {
	padding: 40px 10px 0;
	font-size: 2.4rem;
}
#idx #contents .mainvisual p {
	padding: 20px 10px 0;
	font-size: 1.6rem;
	line-height: 1.8;
}
#idx #contents .idx_ct {
	background-color: #014A96;
}
#idx #contents .idx_ct ul {
	padding: 10px;
}
#idx #contents .idx_ct ul li {
	background-color: #fff;
}
#idx #contents .idx_ct ul li + li {
	margin-top: 10px;
}
#idx #contents .idx_ct ul li a {
	display: block;
	padding-bottom: 18px;
}
#idx #contents .idx_ct ul li a :hover {
	opacity: 0.75;
	filter: alpha(opacity=75);
	-ms-filter: "alpha(opacity=75)";
}
	#idx #contents .idx_ct ul li.ct_05 a {
		background: url(../images/idx_ct05_bg.png) right bottom no-repeat;
		background-size: cover;
	}
#idx #contents .idx_ct ul li a h3 {
	padding-top: 18px;
	padding-left: 20px;
	font-size: 2rem;
}
#idx #contents .idx_ct ul li a p {
	padding-top: 10px;
	padding-left: 20px;
	font-size: 1.4rem;
}
#idx #contents .idx_ct ul li a p:after {
	content: ">";
	padding-left: 10px;
}
	#idx #contents .idx_ct ul li.ct_05 a p {
		padding-top: 9px;
	}
	#idx #contents .idx_ct ul li.ct_05 a p:after {
		content: "";
		padding-left: 0px;
	}
	#idx #contents .idx_ct ul li.ct_05 a p span {
		display: block;
		padding-top: 10px;
		font-size: 1.6rem;
	}
#idx #contents .idx_ct .deco01 {
	display: none;
}
#idx #contents .idx_ct .deco02 {
	display: none;
}
#idx #contents .idx_ct .deco03 {
	display: none;
}

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

         下層 共通
  
************************************************** */
/* title */
#lower #contents h2 {
	background-color: #fff;
	padding: 30px 10px;
	font-size: 2.4rem;
	vertical-align: middle;
	text-align: center;
}
#lower #contents h2 span {
	display: block;
	padding-top: 14px;
	font-size: 1.6rem;
}

/* ぱんくず */
#lower #contents #topicpath {
	background-color: #014A96;
}
#lower #contents #topicpath:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}
#lower #contents #topicpath li {
	float: left;
	padding-right: 10px;
	color: #fff;
	font-size: 1.2rem;
	line-height: 28px;
}
#lower #contents #topicpath li:before {
	content: ">";
	padding-right: 10px;
}
#lower #contents #topicpath li:first-child:before {
	content: "";
	padding-right: 10px;
}
#lower #contents #topicpath li a {
	color: #fff;
}

/* 左右 */
#lower #contents .wrapper:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}
#lower #contents #main {
	float: none;
	margin: 0 10px;
}
#lower #contents #side {
	display: none;
}

/* h3 */
#lower #contents #main h3 {
	border-top: 8px solid #014A96;
	border-bottom: 2px solid #014A96;
	width: 100%;
	margin-top: 20px;
	padding: 10px 0;
	font-size: 2.2rem;
	line-height: 1;
}
	
/* 青見出し */
#lower #contents #main dl.blue_pt {
}
#lower #contents #main dl.blue_pt > dt {
	color: #014A96;
	font-size: 1.9rem;
	font-weight: bold;
}
#lower #contents #main dl.blue_pt > dd {
}

/* 青背景 */
#lower #contents #main .bg_blue {
	background-color: #014A96;
	color: #fff;
}

/* テキスト */
#lower #contents #main .txt {
	font-size: 1.6rem;
}

/* table */
#lower #contents #main .cmn_tbl {
	border-right: 1px solid #595757;
	border-bottom: 1px solid #595757;
	border-left: 1px solid #595757;
	width: 100%;
	margin-top: 20px;
	font-size: 1.6rem;
}
#lower #contents #main .cmn_tbl th {
	display: block;
	border-top: 1px solid #595757;
	background-color: #dbdcdc;
	padding: 12px 14px;
	font-weight: bold;
	white-space: nowrap;
}
#lower #contents #main .cmn_tbl td {
	display: block;
	background-color: #fff;
	padding: 12px 14px;
}


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

          会社案内

*****************************************/
/* 地図 */
#lower #contents.company #main .map {
	border: 1px solid #595757;
	line-height: 0;
}
#lower #contents.company #main .map iframe {
	width: 100%;
}
/* table */
#lower #contents.company #main .cmn_tbl th {
	white-space: nowrap;
}

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

          事業内容

*****************************************/
/* 青背景 */
#lower #contents.business #main .bg_blue ul {
	padding: 10px;
}
#lower #contents.business #main .bg_blue ul li {
	border: 1px solid #fff;
}
#lower #contents.business #main .bg_blue ul li + li {
	margin-top: 10px;
}
#lower #contents.business #main .bg_blue ul li dl {
	padding: 10px;
}
#lower #contents.business #main .bg_blue ul li dl dt {
	font-size: 2.1rem;
}
#lower #contents.business #main .bg_blue ul li dl dd {
	margin-top: 5px;
	line-height: 1.8;
}

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

          実績紹介

*****************************************/
/* table */
#lower #contents.works #main .cmn_tbl th .era {
	font-size: 1.4rem;
}

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

          お問い合わせ

*****************************************/
/* btn_contact */
#lower #contents.contact #main .btn_contact {
}
#lower #contents.contact #main .btn_contact li {
}
#lower #contents.contact #main .btn_contact li + li {
	margin-top: 10px;
}
#lower #contents.contact #main .btn_contact li a {
	display: block;
	background-color: #014A96;
	width: 100%;
	padding: 20px 0;
	color: #fff;
	font-size: 1.8rem;
	text-align: center;
}
#lower #contents.contact #main .btn_contact li.mail a:hover {
	opacity: 0.75;
	filter: alpha(opacity=75);
	-ms-filter: "alpha(opacity=75)";
	text-decoration: none;
}

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

          Footer

*****************************************/
#footer .wrapper {
	padding: 0 10px;
}
#footer .wrapper .ft_logo {
}
#footer .wrapper .ft_info {
	margin-top: 20px;
}
#footer .wrapper .ft_nav {
	margin-top: 20px;
}
#footer .wrapper .ft_nav:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}
#footer .wrapper .ft_nav li {
	float: left;
	padding-right: 30px;
	font-size: 1.4rem;
}
#footer .wrapper .ft_nav li:before {
	content: ">";
	padding-right: 6px;
}
#footer .wrapper .ft_cr {
	margin-top: 20px;
	font-size: 1.2rem;
	text-align: center;
}

}