@charset "UTF-8";

/*
	base.css
	Author: STUDIO P
*/
body {
	font: 14px/1.8 "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #5F5F5F;
	background-color: #FFFFFF;
}

#wrap,
#header,
#footer { width: 100%; }

#header .inner,
#content,
#footer .inner {
	width: 960px;	/* site size */
	margin: 0 auto;
}


/* --- header --- */
#header { background-color: #FFFFFF; }

#header .subtitle { background-image: url("../img/texture/tx_mb01.png"); }

#header .subtitle span {
	width: 960px;
	display: block;
	margin: 0 auto;
	font-size: 85%;
	line-height: 1em;
	padding: 5px 0;
}

#header h1 {
	display: inline-block;
	padding: 25px 0;
	float: left;
}

#header .telnum {
	display: inline-block;
	float: right;
	line-height: 1.6em;
	padding: 20px 10px 0;
}

#header .telnum span {
	font-size: 230.8%;
  letter-spacing: 1px;
  color: #FF6600;
}


/* --- nav --- */
#nav {
	height: 50px;
	border-top: 5px solid #F1F1F1;
	border-bottom: 5px solid #F1F1F1;
	background-position: left top;
	background-size: auto 100%;
  background-repeat: repeat-x;
}

#nav .sp-nav {
	display: none;
	border-bottom: 1px solid #F1F1F1;
	overflow: hidden;
}

#nav ul {
	width: 960px;
	margin: 0 auto;
}

#nav li {
	float: left;
	background-color: #FFFFFF;
}

#nav li a {
  /*width: 150px;*/
  padding: 0 21px;
	height: 50px;
	font-size: 105%;
	line-height: 50px;
	text-align: center;
	border-right: 1px solid #F1F1F1;
	color: #FFFFFF;
	text-decoration: none;
	display: block;
	overflow: hidden;
	background-position: left top;
	background-size: auto 100%;
    background-repeat: repeat-x;
	text-shadow: 1px 1px #333;
	-moz-text-shadow: 1px 1px #333;
	-o-text-shadow: 1px 1px #333;
	-ms-btext-shadow: 1px 1px #333;
}

#nav li:first-child a {
	/*width: 50px;*/
	font-size: 80%;
	border-left: 1px solid #F1F1F1;
}

#nav.type2 { height: 40px; }
#nav.type2 li a {
	width: auto;
	height: 40px;
	font-size: 115%;
	line-height: 40px;
	padding: 0 1em;
}
#nav.type2 li:first-child a {
	width: auto;
	font-size: 85%;
}

#nav li.current a {
	-webkit-opacity: 0.9;
	-moz-opacity: 0.9;
	opacity: 0.9;
}


/* --- topimage(bx-slider) --- */
#topimage {	margin-bottom: 40px; }
#topimage img {	width: 100% !important; }


/* --- content --- */
#content { margin-top: 20px; }
#content.home { margin-top: 30px; }
#content.sideLeft #main { float: right; }
#content.sideLeft #sidebar { float: left; }
#content img {
	max-width: 100%;
	height: auto;
}
#content.wide #main { width: 100%; }
#Crumbs {
	width: 100%;
	margin: 0 auto;
	font-size: 93%;
}


/* --- main --- */
#main {
	width: 700px;
	margin-bottom: 50px;
	float: left;
}


/* --- sidebar --- */
#sidebar .widget-text { margin-bottom: 20px; }

#sidebar {
	width: 230px;
	margin-bottom: 50px;
	float: right;
}

#sidebar .company {}

#sidebar .company .inner { padding: 15px; }

#sidebar .company h2 { font-size: 108%; }

#sidebar .company .tel {
	text-align: center;
	font-size: 85%;
	margin-top: 15px;
}

#sidebar .company .tel span { font-size: 200%; }

#sidebar .banner {
	text-align: center;
	margin-bottom: 10px;
}

#sidebar .banner img { margin-bottom: 10px; }


/* --- footer --- */
#footer { background-color: #CCCCCC; }

#footer .inner { 
	padding: 30px 0;
	text-align: center;
}

#footer ul {
	display: inline-block;
	margin: auto;
}

#footer li {
	float: left;
	padding: 0 10px;
	border-left: 1px solid #FFFFFF;
}

#footer li:first-child { border-left: none; }

#footer .copyright {
	text-align: center;
	font-size: 78%;
	color: #FFFFFF;
	background-color: #666666;
}

#return {
	position: fixed;
	right: 30px;
	bottom: 30px;
	border: 2px solid #FFFFFF;
}

#return a {
	background-color: #666666;
	display: block;
	width: 48px;
	height: 48px;
	text-align: center;
	font-size: 200%;
	line-height: 48px;
	color: #FFFFFF;
}


/* --- heading --- */
h2 {
	font-size: 154%;
	font-weight: normal;
}

h2.title {
	padding: 2em 1em 0.5em;
	/*border: 1px solid #CCCCCC;*/
	border-bottom-width: 2px;
	border-bottom-style: solid;
	letter-spacing: 5px;
	margin-bottom: 50px;
	background-color: #FFF;
}

h2.title2 {
	padding: 0.5em 0.8em;
	font-size: 123.1%;
	font-weight: normal;
	border-bottom: 2px solid #CCCCCC;
}

h2.title3 {
	padding: 0.6em;
	font-size: 123.1%;
	font-weight: normal;
	color: #FFFFFF;
}

h3.title {
	font-size: 138.5%;
	margin-bottom: 30px;
	letter-spacing: 2px;
}

h4.title {
	font-size: 123.1%;
	letter-spacing: 2px;
	margin-bottom: 20px;
}

h5.title {
	font-size: 108%;
	margin-bottom: 20px;
}

.circle:before {
	content: '';
	display: inline-block;
	width: 0.6em;
	height: 0.6em;
	border: 5px double #CCCCCC;
	border-radius: 0.6em;
	-moz-border-radius: 0.6em;
	-ms-border-radius: 0.6em;
	-o-border-radius: 0.6em;
	-webkit-border-radius: 0.6em;
	margin-right: 10px;
	vertical-align: -0.2em;
}
.bold { font-weight: bold; }
.bar {
	padding-left: 1em;
	border-left: 3px solid #CCCCCC;
}
.line {
	padding: 0.3em;
	border-bottom: 1px solid #CCCCCC;
}
.bg {
	padding: 0.3em;
	background-color: #CCCCCC;
}


/* --- blog list --- */
div.blog-list { /*border: 1px solid #CCCCCC;*/ }

div.blog-list li {
	background-color: #FFFFFF;
	padding: 15px 10px 14px;
	border-bottom: 1px dotted #CCCCCC;
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

div.blog-list li .date {
	padding-right: 10px;
	font-size: 85%;
	color: #000;
}

div.blog-list li .date { display: block; }

div.blog-list li a { color: #333333; }

div.blog-list .next-list {
	text-align: right;
	padding: 5px;
	background-color: #FFF;
}


/* --- form --- */
input,
select,
textarea {
	padding: 4px;
	margin: 2px 0;
}
textarea { width: 100%; }


/* --- flow ---*/
div.flow { margin-bottom: 70px; }
div.flow ol {
	list-style: outside none none;
	padding-left: 0;
}
div.flow li {
	background-color: #F1F1F1;
	border: 2px solid #CCC;
	position: relative;
	margin-bottom: 40px;
}
div.flow li:after {
	content: '';
	display: block;
	border-width: 20px;
	border-style: solid;
	border-color: #CCC transparent transparent;
	width: 0;
	height: 0;
	position: absolute;
	bottom: -50px;
	left: 0;
	right: 0;
	margin: auto;
}
div.flow li:last-child:after { display: none; }

div.flow .number {
	background-color: #666;
	width: 60px;
	height: 60px;
	font: 200%/60px "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	color: #FFF;
	text-align: center;
	top: 0;
	left: 0;
	position: absolute;
}
div.flow .process {
	padding: 15px 15px 15px 80px;
	min-height: 60px;
}


/* --- faq --- */
div.faq { margin-bottom: 70px; }
div.faq li {
	margin-bottom: 40px;
	border-bottom: 1px solid #CCC;
	padding-bottom: 10px;
}
div.faq .question {
	font-size: 138.5%;
	color: #0066CC;
	position: relative;
	padding-left: 50px;
}
div.faq .question:hover { cursor: pointer; }
div.faq .question span {
	/*content:'Q';*/
	background-color: #99CCFF;
	width: 40px;
	height: 40px;
	font: 123.1%/40px "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	color: #FFF;
	text-align: center;
	border-radius: 40px;
	-moz-border-radius: 40px;
	-ms-border-radius: 40px;
	-o-border-radius: 40px;
	-webkit-border-radius: 40px;
	display: block;
	position: absolute;
	top: -5px;
	left: 0;
}
div.faq .answer { padding: 15px 15px 15px 50px; }


/* --- parts --- */
.catch1 {
	font-size: 200%;
	margin-bottom: 20px;
}
.catch2 {
	font-size: 150%;
	margin-bottom: 15px;
}

.frame-box1{
  display: inline-block;
  padding: 2em;
  border: 3px solid #F1F1F1;
  background-color: #FFFFFF; 
}
