@charset "utf-8";

/* ==================================================

TFBファクトリーズ株式会社 デザイン室 スタイルシート

================================================== * /


/* 共通
--------------------------------------------------------------------*/
body,div,p,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,td,th,form {
	margin:0;
	padding:0;
	font-style:normal;
	font-weight:normal;
	font-size:100%;
}
article,aside,figure,figcaption,footer,header,nav,section {
	display:block;
}
li {
	list-style-type:none;
}
li img {
	vertical-align:top;
}
table {
	border-collapse:collapse;
}
td,th {
	vertical-align:top;
}
th {
	text-align:left;
}
img {
	vertical-align:bottom;
}
a img {
	border:none;
}
body {
	font-family:"Lucida Grande", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, sans-serif;
	margin:0;
	text-align:center;
	font-size:80%;
	line-height:1.33;
	color:#323232;
}
.fs {
	font-size:85%;
}
.fl {
	font-size:125%;
}
.b {
	font-weight:bold;
}
.c {
	text-align:center;
}
.r {
	text-align:right;
}
a:link,
a:visited {
	color:#0064b4;
	text-decoration:none;
}
a:hover,
a:active {
	color:#0064b4;
	text-decoration:underline;
}
.cf:before,
.cf:after {
	content:"";
	display:table;
}
.cf:after {
	clear:both;
}
.cf {
	zoom:1;
	overflow:hidden;
}
.warning {
	color:#e61e1e;
	background-color:#f5f5f5;
	border:solid 1px #c8c8b4;
	padding:12px 15px 11px;
	margin:15px 0 2px;
}

header {
	background:url(../common/header_line.gif) repeat-x bottom;
	padding-bottom:10px;
}
.header-i {
	margin:0 auto;
	width:960px;
	text-align:left;
}
header h1 {
	float:left;
	width:470px;
	padding-top:30px;
}
header .header-tel {
	float:left;
	width:270px;
	padding-top:35px;
}
header .header-contact {
	float:left;
	width:220px;
}
nav {
	padding:20px 0 15px;
}
.tm {
	margin:0 auto;
	width:960px;
}
.tm li {
	float:left;
}
.main {
	padding:20px 0 80px;
	text-align:left;
}
.main-i {
	margin:0 auto;
	width:960px;
}
.service-menu {
	margin:0 auto;
	width:548px;
}
.service-menu li {
	float:left;
}
.title-area {
	padding:20px 0;
	text-align:center;
}
.bottom-contact-area {
	margin:0 auto;
	width:960px;
	padding-top:70px;
}
.bottom-contact-area-i {
	position:relative;
}
.bottom-contact-area-i .bottom-contact {
	position:absolute;
	top:22px;
	right:45px;
}
.bottom-link {
	padding-bottom:12px;
	font-size:85%;
}
.bottom-link a {
	color:#969696;
}
footer {
	background-color:#919192;
	padding:15px 0 14px;
	font-size:85%;
	color:#fff;
}

.copy {
	padding-bottom:10px;
	font-weight:bold;
	font-size:125%;
	color:#76ab53;
}
.in {
	padding:0 10px;
}

/* トップ
--------------------------------------------------------------------*/
#top h3 {
	padding:60px 0 15px;
	text-align:center;
}
#top .slider-area {
	position:relative;
	margin:0 auto;
	width:960px;
	height:412px;
}
#top .flex-prev {
	position:absolute;
	z-index:1000;
	background:url(../img/back_ro1.png) 0 0 no-repeat;
	width:22px;
	height:41px;
	text-indent:-9999px;
	top:170px;
	left:10px;
}
#top .flex-prev:hover {
	background:url(../img/back_ro2.png) 0 0 no-repeat;
}
#top .flex-next {
	position:absolute;
	z-index:1000;
	background:url(../img/next_ro1.png) 0 0 no-repeat;
	width:22px;
	height:41px;
	text-indent:-9999px;
	top:170px;
	right:10px;
}
#top .flex-next:hover {
	background:url(../img/next_ro2.png) 0 0 no-repeat;
}
#top .flex-control-nav {
	position:absolute;
	bottom:0;
	left:0;
}
#top .flex-control-paging li a {
	width:10px;
	height:10px;
	border-radius:0;
	background:#c8c8c8;
	-webkit-box-shadow:none;
	-moz-box-shadow:none;
	-o-box-shadow:none;
	box-shadow:none;
}
#top .flex-control-paging li a:hover {
	background:#646464;
}
#top .flex-control-paging li a.flex-active {
	background:#646464;
}
#top .service-area {
	background:url(../img/service_bk.gif) repeat-x;
}
#top .service-area ul {
	margin:0 auto;
	width:876px;
}
#top .service-area ul li {
	float:left;
	width:225px;
}
#top .service-area ul li.last {
	float:left;
	width:201px;
}

#top .copy {
	padding:40px 0 10px;
	font-weight:bold;
	font-size:125%;
	color:#76ab53;
}
#top .links li {
	float:left;
	width:245px;
}

/* コンセプト
--------------------------------------------------------------------*/
#concept .photo {
	padding-top: 40px;
	text-align: center;
}
#concept .text {
	padding: 60px 100px 20px;
	font-size: 120%;
}

/* サービス案内　共通
--------------------------------------------------------------------*/
#package .title-area,
#graphic .title-area,
#photography .title-area,
#pet .title-area {
	padding:40px 0 20px;
	text-align:center;
}
#service h3.next {
	padding-top:20px;
}
#service .top-image {
	padding-bottom:50px;
	text-align:center;
}
#service .main-area {
	background:url(../service/img/line_bk.gif) repeat-x;
}
#service .service-area {
	padding-top:75px;
}
#service .service-area .service-left {
	float:left;
	width:390px;
}
#service .service-area .service-left li {
	float:left;
	width:130px;
	margin-bottom:10px;
}
#service .service-area .service-right {
	float:right;
	width:520px;
}
#service .service-area .service-right th,
#service .service-area .service-right td {
	border-bottom:solid 1px #fff;
	padding:15px 0 14px;
	vertical-align:middle;
}
#service .service-area .service-right th {
	width:58%;
}
#service .service-area .service-right th p {
	padding-left:20px;
	font-weight:bold;
}
#service .service-area .service-right td {
	border-left:solid 1px #fff;
	background-color:#ececec;
}
#service .service-area .service-right td p {
	text-align:center;
	font-weight:bold;
}
#service .service-area .service-right .kome {
	padding-top:15px;
	font-size:85%;
	line-height:160%;
	color:#646464;
}
#package #service .service-area .service-left img {
	border:solid 1px #62cef5;
}
#package #service .service-area .service-right th {
	background-color:#62cef5;
}
#graphic #service .service-area .service-left img {
	border:solid 1px #f6b42d;
}
#graphic #service .service-area .service-right th {
	background-color:#ffe900;
}
#photography #service .service-area .service-left img {
	border:solid 1px #e6b9ff;
}
#photography #service .service-area .service-right th {
	background-color:#e6b9ff;
}
#pet #service .service-area .service-left img {
	border:solid 1px #d1da32;
}
#pet #service .service-area .service-right th {
	background-color:#d1da32;
}

/* 会社案内
--------------------------------------------------------------------*/
#company .profile {
	margin-top:20px;
	border-top:solid 3px #c8c8c8;
}
#company .profile th,
#company .profile td {
	border-bottom:dotted 1px #c8c8c8;
	padding:15px 0 14px;
}
#company .profile th.last,
#company .profile td.last {
	border-bottom:solid 1px #c8c8c8;
}
#company .profile th {
	width:120px;
}
#company .profile th p {
	padding-left:10px;
	font-weight:bold;
}
#company .profile .text {
	margin-top:14px;
	border-top:dotted 1px #c8c8c8;
	padding-top:15px;
}

/* ワークフロー
--------------------------------------------------------------------*/
#workflow .title-area {
	padding:20px 0 30px;
}

/* 個人情報の取扱いについて
--------------------------------------------------------------------*/
#privacy h3 {
	padding-bottom:15px;
}
#privacy .privacy-area {
	margin-top:20px;
	border-top:solid 3px #c8c8c8;
}
#privacy .privacy-top {
	padding:20px 0 14px;
	border-bottom:dotted 1px #c8c8c8;
}
#privacy .privacy {
	padding:15px 0 14px;
	border-bottom:dotted 1px #c8c8c8;
}
#privacy .privacy-last {
	padding:15px 0 14px;
	border-bottom:solid 1px #c8c8c8;
}
#privacy .kome {
	padding-top:7px;
	font-size:85%;
}

/* お問い合わせ
--------------------------------------------------------------------*/
#form-page .main-i {
	margin-top:20px;
	border-top:solid 3px #c8c8c8;
	padding-top:20px;
}
#form-page h3 {
	padding-bottom:15px;
}
#form-page .kome {
	padding-top:5px;
	font-size:85%;
}
#form-page .kome span {
	color:#c84632;
}
#form-page form {
	margin-top:20px;
	border-top:solid 1px #c8c8c8;
}
#form-page form th,
#form-page form td {
	padding:10px 0;
	border-bottom:dotted 1px #c8c8c8;
}
#form-page form th {
	width:180px;
}
#form-page form th div {
	padding-left:10px;
	font-weight:bold;
}
#form-page .require {
	color:#c84632;
	padding-left:3px;
}
#form-page .add-info {
	color:#969696;
	font-size:85%;
	padding-top:8px;
}
#form-page .btn {
	text-align:center;
	padding-top:15px;
}
#form-page .privacy {
	padding-top:70px;
	font-size:85%;
}
#form-page .middle-info {
	padding-top:15px;
}
#form-page .last-info {
	text-align:center;
	padding:120px 0 140px;
}


