@charset "utf-8";

/* ----------------------------------------------------
	body
---------------------------------------------------- */
body {
	text-align:center;
	background:#FFF;
}

/* ----------------------------------------------------
	header
---------------------------------------------------- */
#header {
	width:1098px;
	margin:18px auto;
	text-align:left;
	line-height:1.0em;
}
#header #logo {
	width:300px;
	float:left;
}
#header #copy {
	width:500px;
	float:left;
	font-family:serif;
}
#header #sns {
	float:right;
	text-align:right;
	padding: 6px 0 0 0;
}
#header #sns .sharrre {
	float:left;
	margin: 0 0 0 15px;
	width: 66px;
}
#header #sns .sharrre .box a{
	text-decoration:none;
	color: #666;
	z-index: 10;
	position: relative;
}
#header #sns .sharrre .box a:hover{
	color: #000;
}
#header #sns .sharrre .count {
	display:block;
	font-size:11px;
	line-height:20px;
	height:20px;
	position:relative;
	text-align:center;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	border-radius:3px;
	border:1px solid #CCC;
	background: #FFF;
	float: right;
	margin: 0 0 0 -1px;
	z-index: 1;
	width: 35px;
}
#header #sns .sharrre .share {
	height:0;
	padding: 21px 0 0 0;
	width:30px;
	overflow: hidden;
	zoom: 1;
	float: left;
}
#header .tel {
	float: right;
}
#header #sns #twitter .share { background: url(../img/icn_tweet.gif) no-repeat 0 0; }
#header #sns #facebook .share { background: url(../img/icn_facebook.gif) no-repeat 0 0; }


/* ----------------------------------------------------
	navi
---------------------------------------------------- */
#navi {
	position: relative;
	border-top:1px solid #000000;
	border-bottom:1px solid #808080;
}
#navi-in {
	width:1098px;
	margin:0 auto;
}
#navi ul {
	width:1173px;
	padding: 0 0 0 0;
	float:left;
}
#navi p {
	width:170px;
	float:right;
}
#navi ul li {
	float:left;
	text-indent:-9999px;
}
#navi ul li a,
#navi ul li > span {
	display:block;
	height:53px;
	background:url(../img/navi.png) no-repeat left top;
}
#navi ul li div {
	display: none;
	position: absolute;
	top: 54px;
	left: 0;
	width: 100%;
	height: 235px;
	max-height: 235px;
	padding: 50px 0 15px;
	color: #FFF;
	background: url(../img/bg_nav_01.png) 0 0;
	z-index: 999;
	text-indent: 0;
}
#navi ul li div ul {
	float: none;
	width: 640px;
	margin: 0 auto;
}
#navi ul li div ul li {
	float: none;
	display: inline-block;
	*display: inline;
	*zoom: 1;
	width: 160px!important;
	margin: 0 20px 15px;
	text-indent: 0;
	vertical-align: top;
}
#navi ul li div ul li a {
	width: 160px!important;
	font-size: 83%;
	text-align: left;
	color: #666;
	background: none;
}
#navi ul li div ul li a:hover {
	text-decoration: underline;
	color: #999;
}
#navi ul li div ul li a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
}
#navi ul li div ul li a p {
	width: 160px!important;
	margin-top: 5px;
}

#navi ul li.home a {
	width:67px;
	background-position:0 0;
}
#navi ul li.news a {
	width:83px;
	background-position:-67px 0;
}
#navi ul li.models > span {
	width:100px;
	background-position:-150px 0;
}
#navi ul li.company a {
	width:116px;
	background-position:-250px 0;
}
#navi ul li.access a {
	width:96px;
	background-position:-366px 0;
}
#navi ul li.flow a {
	width: 127px;
    background-position: -462px 0;
	background-image: url(../img/navi4.png);
}
#navi ul li.guide a {
	width:129px;
	background-position:-462px 0;
}
#navi ul li.contact a {
	width:206px;
	background-position:-591px 0;
}
#navi ul li.recruit a {
	width: 113px;
    background-position: -943px 0px;
	background-image: url(../img/navi4.png);
}
#navi ul li.instajpn a {
	width: 59px;
    background-position: 0px 0px;
	background-image: url(../img/insta_03_s.png);
}
#navi ul li.instaint a {
	width: 59px;
    background-position: -59px 0px;
	background-image: url(../img/insta_03_s.png);
}

#navi ul li.home a:hover,
#home #navi ul li.home a {
	width:67px;
	background-position:0 -53px;
}
#navi ul li.news a:hover,
#news #navi ul li.news a {
	width:83px;
	background-position:-67px -53px;
}
#navi ul li.models > span:hover,
#models #navi ul li.models > span,
#prof #navi ul li.models > span {
	width:100px;
	background-position:-150px -53px;
}
#navi ul li.company a:hover,
#company #navi ul li.company a {
	width:116px;
	background-position:-250px -53px;
}
#navi ul li.access a:hover,
#access #navi ul li.access a {
	width:96px;
	background-position:-366px -53px;
}
#navi ul li.flow a:hover,
#flow #navi ul li.flow a {
	width:127px;
	background-position:-462px -53px;
}
#navi ul li.guide a:hover,
#guide #navi ul li.guide a {
	width:129px;
	background-position:-462px -53px;
}
#navi ul li.contact a:hover,
#contact #navi ul li.contact a {
	width:206px;
	background-position:-591px -53px;
}
#navi ul li.recruit a:hover,
#recruit #navi ul li.recruit a {
	width:113px;
	background-position:-943px -53px;
}
#navi ul li.instajpn a:hover,
#instajpn #navi ul li.instajpn a {
	width: 59px;
    background-position: 0px -53px;
	background-image: url(../img/insta_03_s.png);
}
#navi ul li.instaint a:hover,
#instaint #navi ul li.instaint a {
	width: 59px;
    background-position: -59px -53px;
	background-image: url(../img/insta_03_s.png);
}


/* ----------------------------------------------------
	contents
---------------------------------------------------- */

/* contents */
#contents {
	width:980px;
	margin:20px auto 24px auto;
	text-align:left;
}

#contents .ttl {
	height:26px;
	overflow:hidden;
}
#contents .ttl .name {
	width:50%;
	float:left;
}
#contents .ttl .more {
	width:50%;
	float:right;
	text-align:right;
}
#contents .ttl .more a {
	background:url(../img/brit_right.gif) no-repeat right center;
	padding:0 16px 0 0;
}
#contents .ttl .more .date {
	display:block;
	padding:7px 0 0 0;
}


/* ----------------------------------------------------
	all
---------------------------------------------------- */

/* search */
#contents #search {
	border:1px dotted #CCC;
	height:460px;
}
#contents #search h2 {
	background:#CCC;
	line-height:1.0em;
	font-size:12px;
	padding:7px 7px 7px 7px;
	margin:0 0 10px 0;
}
#contents #search .search-in {
	padding:0 14px 14px 14px;
}
#contents #search table.condition {
	width:100%;
}
#contents #search table.condition td {
	padding:10px 6px 0 6px;
}
#contents #search table.condition th {
	padding:10px 6px 0 6px;
	color:#AAA;
	white-space:nowrap;
	border-bottom:1px dotted #CCC;
}
#contents #search .freeword-popular {
	margin:5px 0;
}
#contents #search .freeword-popular p {
	line-height:20px;
	height:80px;
	overflow:hidden;
}
#contents #search .freeword-popular p a {
	white-space:nowrap;
	text-decoration:underline;
	margin-right:5px;
}

/* search button */
#contents #search input.bt1 {
	background:#666;
	color:#FFF;
	border:none;
	padding:0.5em;
	border:1px solid #666;
}
#contents #search input.bt1:hover {
	background:#000;
}

/* search freeword */
#contents #search input.freeword {
	padding:0.5em;
	border:1px solid #999;
}



/* search */
#items .top_hide{display: none;}
#items #search {
	border:1px dotted #CCC;
}
#items #search h2 {
	background:#CCC;
	line-height:1.0em;
	font-size:12px;
	padding:7px 7px 7px 7px;
	margin:0 0 10px 0;
	text-align: left;
}
#items #search .search-in {
	padding:0 14px 14px 14px;
}
#items #search table.condition {
	width:100%;
}
#items #search table.condition td {
	padding:10px 6px 0 6px;
	text-align: left;
}
#items #search table.condition th {
	padding:10px 6px 0 6px;
	color:#AAA;
	white-space:nowrap;
	border-bottom:1px dotted #CCC;
}
#items #search .freeword-popular {
	margin:5px 0;
}
#items #search .freeword-popular p {
	line-height:20px;
	height:80px;
	overflow:hidden;
}
#items #search .freeword-popular p a {
	white-space:nowrap;
	text-decoration:underline;
	margin-right:5px;
}
#items #search span{
	padding: 0 0 0 0!important;
}

/* search button */
#items #search input.bt1 {
	background:#666;
	color:#FFF;
	border:none;
	padding:0.5em;
	border:1px solid #666;
}
#items #search input.bt1:hover {
	background:#000;
}

/* search freeword */
#items #search input.freeword {
	padding:0.5em;
	border:1px solid #999;
}

/* slider */
.slider {
	height: 1%;
	overflow:hidden;
	padding: 5px 0 15px 0;
	border-top:1px dotted #CCC;
}
.slider .viewport {
	float: left;
	width: 924px;
	height: 326px;
	overflow: hidden;
	position: relative;
}
.slider .buttons {
	background:url("../img/bt_slider.png") no-repeat scroll 0 0 transparent;
	background-position: 0 -38px;
	display: block;
	margin: 90px 0 0 0;
	text-indent: -999em;
	float: left;
	width: 28px;
	height: 40px;
	overflow: hidden;
	position: relative;
}
.slider .next {
	background-position: 0 0;
	margin: 90px 0 0 0;
}
.slider .disable {
	visibility: hidden;
}
.slider .overview {
	list-style: none;
	position: absolute;
	padding: 0;
	margin: 0;
	width: 900px;
	left: 0 top: 0;
}
.slider .overview li {
	float: left;
	width: 185px;
	height: 326px;
	margin: 0;
	padding: 0;
}
.slider .overview li a {
	display:block;
	height: 310px;
	padding:8px;
}
.slider .overview li a:hover {
	background:#EEE;
}
.slider .overview li a p.pf {
	background:#E6E6E6;
	padding:4px;
}
.slider .overview li a p.name {
	margin:4px 0;
	line-height:1.4em;
}
.slider .overview li a table.prof {
	line-height:1.4em;
}
.slider .overview li a table.prof th {
	text-align:right;
}
.slider .overview li a table.prof th,
.slider .overview li a table.prof td {
	vertical-align:top;
	font-weight:normal;
}
.slider .overview li a table.prof td img {
	margin-right:2px;
}


/* -- sns -- */
.sns .fb-like,
.sns .twitter {
	float:left;
	width:120px;
}


/* banner */
#side .banner {
	margin:0 0 20px 0;
}

/* mordal keyword */
#contents .more {
	text-align:right;
}
#contents .more a {
	background:url(../img/brit_right.gif) no-repeat right center;
	padding:0 16px 0 0;
}
#keyword p {
	line-height:20px;
	text-align:left;
	padding:15px;
}
#keyword p a {
	white-space:nowrap;
	text-decoration:underline;
	margin-right:5px;
}


/* ----------------------------------------------------
	home
---------------------------------------------------- */

/* main */
#home #contents #main {
	width:100%;
	float:right;
}
/* side */
#home #contents #side {
	width:343px;
}

/* promo */
#promo {
	position: relative;
	width: 100%;
	margin-bottom: 30px;
	overflow: hidden;
}
#promo .inner {
	width: 780px;
	margin: 0 auto;
}
#promo ul {
	margin: 0 auto;
}
#promo ul li {
	width: 780px;
	min-width: 780px;
	height: 300px;
}
#promo .cover_left,
#promo .cover_right {
	position: absolute;
	height: 300px;
	top: 0;
	background: url(/img/bg_promo_01.png) repeat;
	z-index: 100;
}
#promo .cover_left {
	left: 0;
}
#promo .cover_right {
	right: 0;
}

/* bnhomeL */
#bnhomeL {
	width:987px;
	margin-bottom:10px;
}
#bnhomeL a:hover img {
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter:"alpha(opacity=80)";
}

/* bnhome */
#bnhome {
	width:987px;
	margin-bottom:20px;
}
#bnhome li {
	width:197px;
	float:left;
}
#bnhome li a:hover img {
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter:"alpha(opacity=80)";
}

/* news */
#home #contents #news {
	border:1px dotted #CCC;
	margin-bottom:20px;
}
#home #contents #news .news-in {
	padding:14px;
}

#home #contents #news .news-tn {
}
#home #contents #news .news-tn li {
	border-bottom:1px dotted #CCC;
}
#home #contents #news .news-tn li a {
	display:block;
	height:70px;
	color:#333;
	overflow:hidden;
}
#home #contents #news .news-tn li a:hover {
	background:#EEE;
}
#home #contents #news .news-tn li .tn {
	width:74px;
	float:left;
}
#home #contents #news .news-tn li .tn img {
	display:block;
	padding:8px 0 0 8px;
}
#home #contents #news .news-tn li .text {
	width:490px;
	float:right;
	padding:6px 0 0 0;
}
#home #contents #news .news-tn li .date {
	width:100px;
	float:left;
}
#home #contents #news .news-tn li .cate {
	width:300px;
	float:right;
	text-align:right;
	color:#BCB9A7;
}
#home #contents #news .news-tn li .entry {
	clear:both;
}

/* ----------------------------------------------------
	news
---------------------------------------------------- */

/* news */
#news #contents #main {
	width:611px;
	float:right;
}
/* side */
#news #contents #side {
	width:343px;
	float:left;
}

/* news */
#news #contents #news {
	border:1px dotted #CCC;
	margin-bottom:20px;
}
#news #contents #news .news-in {
	padding:0 14px 14px 14px;
}

#news #contents #news .news-tn {
	padding:10px;
}
#news #contents #news .news-tn li {
	border-bottom:1px dotted #CCC;
	padding:10px 0;
}
#news #contents #news .news-tn li .tn {
	width:130px;
	height:130px;
	background:#EEE;
	float:left;
}
#news #contents #news .news-tn li .text {
	width:415px;
	float:right;
}
#news #contents #news .news-tn li .text h3 {
	font-size:120%;
	margin-bottom:8px;
}

#news #contents #news .kanren,
#news #contents #news .link,
#news #contents #news .sns {
	padding:6px 0;
}
#news #contents #news .kanren li,
#news #contents #news .link li {
	border:none;
	padding:2px 0;
}
#news #contents #news .link li a {
	background:url(../img/brit_link.gif) no-repeat left center;
	padding:0 0 0 16px;
}

#news #contents #news a,
#news #contents #news a:link,
#news #contents #news a:visited {
	text-decoration:underline;
	color:#30BAEC;
}
#news #contents #news a:hover {
	color:#000;
}


/* calendar */
#news #contents #calendar {
	width:343px;
	margin-bottom:20px;
}
#news #contents #calendar .navi {
	background:#808080;
	width:100%;
}
#news #contents #calendar .navi td {
	padding:5px;
	text-align:center;
	line-height:1.0em;
}
#news #contents #calendar .navi td a {
}
#news #contents #calendar .navi td a:hover {
	color:#CEC3BC;
}
#news #contents #calendar .navi td.month {
	text-align:left;
	width:100px;
}
#news #contents #calendar .navi td.prev {
	text-align:left;
}
#news #contents #calendar .navi td.next {
	text-align:right;
}
#news #contents #calendar .navi td.prev a {
	display:block;
	background:url(../img/brit_cal_prev.gif) no-repeat left center;
	padding:0 0 0 14px;
	color:#FFF;
}
#news #contents #calendar .navi td.next a {
	display:block;
	background:url(../img/brit_cal_next.gif) no-repeat right center;
	padding:0 14px 0 0;
	color:#FFF;
}
#news #calendar .date {
	border-collapse: separate;
	border-spacing: 5px;
	border:1px solid #CCC;
	border-top:none;
}
#news #calendar .date a {
	text-decoration:underline;
	color:#000;
}
#news #calendar .date td,
#news #calendar .date th {
	text-align: center;
	padding:6px;
	line-height:1.0em;
}
#news #calendar .date th {
	border:1px solid #CCC;
	font-weight:normal;
}
#news #calendar .date td {
	color:#999;
	background-color: #EBEBEB;
	font-weight:normal;
}


/* ----------------------------------------------------
	models
---------------------------------------------------- */


/* main */
#models #contents #main {
	width:611px;
	float:right;

}
/* side */
#models #contents #side {
	width:343px;
	float:left;
}

/* result */
#models #contents #result {
	border:1px dotted #CCC;
	margin-bottom:20px;
}
#models #contents #result .condition {
	background:#E6E6E6;
}
#models #contents #result .condition p.freeword {
	font-weight:normal;
	line-height:1.0em;
	padding:8px 5px;
}
#models #contents #result .condition p.freeword span {
	font-size:160%;
	color:#5B341D;
}

#models #contents #result .list {
	padding:10px 0 10px 23px;
}
#models #contents #result .list li {
	width:188px;
	float:left;
	text-align:center;
}
#models #contents #result .list li a {
	display:block;
	height:280px;
	margin:0 auto;
	padding:2px 0;
	text-align:left;
}
#models #contents #result .list li a:hover {
	background:#EEE;
}
#models #contents #result .list li a p.pf {
	background:#E6E6E6;
	padding:1px;
	margin:12px;
	width:144px;
	height:216px;
	overflow:hidden;
}
#models #contents #result .list li a p.pf img {
	width:144px;
	height:216px;
}
#models #contents #result .list li a p.name {
	margin:0 11px 4px 11px;
	line-height:1.4em;
}

#models #contents #result .pager {
	text-align:center;
	padding:20px;
	margin:0 14px;
	border-top:1px dotted #CCC;
}
#models #contents #result .pager li {
	display:inline;
	line-height:1.0em;
}
#models #contents #result .pager li a {
	padding:4px 8px;
	background:#ECECEC;
	color:#666;
}
#models #contents #result .pager li.current a,
#models #contents #result .pager li a:hover {
	background:none;
	border:none;
	color:#000;
}
#models #contents #result .pager li.prev a {
	border:none;
	background:url(../img/brit_left.gif) no-repeat left center;
	padding:4px 8px 4px 16px;
}
#models #contents #result .pager li.next a {
	border:none;
	background:url(../img/brit_right.gif) no-repeat right center;
	padding:4px 16px 4px 8px;
}



/* ----------------------------------------------------
	prof
---------------------------------------------------- */

/* main */
#prof #contents #main {
	width:485px;
	float:left;
}
/* side */
#prof #contents #side {
	width:460px;
	float:right;
}

/* spec */
#prof #contents #spec {
	background:#F2F2F2;
	margin-bottom:20px;
}
#prof #contents #spec .txt {
	float:right;
	width:398px;
}
#prof #contents #spec .txt .txt-in {
	padding:20px 24px;
}
#prof #contents #spec h3 {
	font-size:180%;
	font-weight:normal;
	font-family:'�ｭ�ｳ �ｰ譏取悃',serif;
	line-height:1.2em;
	margin:0 0 24px; 0;
	padding-top:14px;
	border-top:1px dotted #CCC;
}
#prof #contents #spec h3 small {
	display:block;
	font-size:70%;
	letter-spacing:0.2em;
}
#prof #contents #spec .txt table {
	margin-bottom:24px;
}
#prof #contents #spec .txt table th,
#prof #contents #spec .txt table td {
	padding:3px 14px 3px 0;
	vertical-align:top;
}
#prof #contents #spec .txt table th {
	font-weight:normal;
	color:#5B341D;
}

#prof #contents #spec .txt .action {
	width:364px;
}
#prof #contents #spec .txt .action li {
	float:left;
	margin-right:14px;
}
#prof #contents #spec .txt .action li a:hover img {
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter:"alpha(opacity=80)";
}

#prof #contents #spec .img {
	float:left;
	width:580px;
}

/* news */
#prof #contents #news {
	background:url(../img/main_frame_center2.gif) repeat-y;
	height:320px;
}
#prof #contents .main-frame-top {
	background:url(../img/main_frame_top2.gif) no-repeat;
	height:12px;
}
#prof #contents .main-frame-bottom {
	background:url(../img/main_frame_bottom2.gif) no-repeat;
	height:32px;
}
#prof #contents #news .news-in {
	padding:0 14px 14px 14px;
}

#prof #contents #news .news-tn li {
	border-bottom:1px dotted #CCC;
	width:415px;
}
#prof #contents #news .news-tn li a {
	display:block;
	height:64px;
	color:#333;
	overflow:hidden;
}
#prof #contents #news .news-tn li a:hover {
	background:#EEE;
}
#prof #contents #news .news-tn li .text {
	padding:6px 0 0 0;
}

/* starring */
#prof #contents #starring {
	border-top:1px dotted #CCC;
	padding:20px 0 6px 0;
}
#prof #contents #starring table th,
#prof #contents #starring table td {
	padding-bottom:14px;
	vertical-align:top;
}
#prof #contents #starring table th {
	white-space:nowrap;
	width:15%;
	font-weight:normal;
}
#prof #contents #starring table td {
	width:85%;
}


/* imageviewer */

#viewer {
	width: 580px;
}
#viewer div {
	width: 430px;
	height: 645px;
	float:left;
	overflow: hidden;
	position: relative;
	background:#EEE;
}
#viewer div img {
	top: 0;
	left: 0;
	position: absolute;
}

#viewer ul {
	width:132px;
	float:right;
	margin:20px 0 0 0;
}

#viewer ul li {
	background:#FFF;
	padding:1px;
	margin-bottom:8px;
}
#viewer ul li img {
	width:130px;
	height:195px;
}

#viewer .active {
	background:#CEC2BB;
	filter:alpha(opacity=80)!important;
	-moz-opacity: 0.8!important;
	opacity: 0.8!important;
}

#viewer ul:after {
	content: ".";
	height: 0;
	clear: both;
	display: block;
	visibility: hidden;
}

#viewer ul {
	display: inline-block;
	overflow: hidden;
}


/* ----------------------------------------------------
	footer
---------------------------------------------------- */
#footer {
	border-top:2px solid #CCC;
}
#footer-in {
	width:980px;
	margin:0 auto;
	padding:18px 0;
	text-align:left;
}
#footer-in #f-info {
	width:315px;
	float:left;
}
#footer-in #f-link {
	width:600px;
/* 	height:210px; */
	border-left:1px dotted #CCC;
	float:right;
}
#footer-in #f-info #fnavi {
	margin:16px 0 24px 0;
}
#footer-in #f-info #fnavi li {
	background:url(../img/brit_fnavi.gif) no-repeat left center;
	padding:2px 0 2px 12px;
	font-size:10px;
}
#footer-in #f-info #fnavi li a {
	text-decoration:none;
}
#footer-in #f-info #fnavi li a:hover {
	text-decoration:underline;
}
#footer-in #f-link ul {
	padding:0 0 0 20px;
}
#footer-in #f-link ul li {
	padding:0 0 10px 0;
}
#footer a:link {
	color: #666;
	text-decoration:none;
}
#footer a:visited {
	color: #666;
	text-decoration:none;
}
#footer a:hover {
	color: #000;
	text-decoration:none;
}


/* ----------------------------------------------------
	contact
---------------------------------------------------- */

/* bigbox */
#contact #contents .bigbox {
	margin: 15px 0 0 0;
	border:1px dotted #CCC;
}
#contact #contents table.bigbox {
	border-right:1px dotted #CCC;
	border-bottom:1px dotted #CCC;
}

/* form */
#contact #contents form {
	margin:20px auto;
	width:760px;
	text-align:center;
}

/* step */
#contact #contents form .step {
	margin:20px auto;
}

/* table */
#contact #contents table {
	border-right:1px dotted #CCC;
	border-bottom:1px dotted #CCC;
}
#contact #contents table th,
#contact #contents table td {
	border-left:1px dotted #CCC;
	border-top:1px dotted #CCC;
	padding:15px;
	vertical-align:top;
	text-align:left;
}
#contact #contents table th {
	background:#F5F5F5;
	font-weight:normal;
	white-space:nowrap;
}
#contact #contents table input,
#contact #contents table textarea {
	padding:0.3em;
}
#contact #banner{
	border: none!important;
	margin: 0 auto 20px!important;
}
#contact #banner th{
	background-color: #fff!important;
	border: none!important;
}
#contact #banner td{
	border: none!important;
}


/* search button */
#contact #contents input.bt1 {
	background:#666;
	color:#FFF;
	border:none;
	padding:0.5em;
	margin:15px;
	border:1px solid #666;
}
#contact #contents input.bt1:hover {
	background:#000;
}

/* text size */
#contact #contents h3 {
	font-size:large;
	font-weight:normal;
	margin:2.0em 0 1.0em 0;
}

#contact .error {
color:#FF0000;
font-weight:bold;
}

/* ----------------------------------------------------
	access
---------------------------------------------------- */

/* bigbox */
#access #contents .bigbox {
	border:1px dotted #CCC;
}
#access #contents table.bigbox {
	border-right:1px dotted #CCC;
	border-bottom:1px dotted #CCC;
}

/* table */
#access #contents table {
	border-right:1px dotted #CCC;
	border-bottom:1px dotted #CCC;
}
#access #contents table th,
#access #contents table td {
	border-left:1px dotted #CCC;
	border-top:1px dotted #CCC;
	padding:15px;
	vertical-align:top;
	text-align:left;
}
#access #contents table th {
	background:#F5F5F5;
	font-weight:normal;
	white-space:nowrap;
}

/* search button */
#contact #contents input.bt1 {
	background:#666;
	color:#FFF;
	border:none;
	padding:0.5em;
	margin:15px;
	border:1px solid #666;
}
#contact #contents input.bt1:hover {
	background:#000;
}


/* ----------------------------------------------------
	company
---------------------------------------------------- */

/* bigbox */
#company #contents .bigbox {
	border:1px dotted #CCC;
}
#company #contents table.bigbox {
	border-right:1px dotted #CCC;
	border-bottom:1px dotted #CCC;
}

/* table */
#company #contents table {
	border-right:1px dotted #CCC;
	border-bottom:1px dotted #CCC;
}
#company #contents table th,
#company #contents table td {
	border-left:1px dotted #CCC;
	border-top:1px dotted #CCC;
	padding:15px;
	vertical-align:top;
	text-align:left;
}
#company #contents table th {
	background:#F5F5F5;
	font-weight:normal;
	white-space:nowrap;
}
#company #contents table ol {
	list-style:decimal;
	margin-left:2.5em;
}


/* ----------------------------------------------------
	guide
---------------------------------------------------- */

#guide #contents .ttl {
	border-bottom:1px solid #CCC;
	margin-bottom:2.0em;
}
#guide #contents h6,
#guide #contents p,
#guide #contents dl,
#guide #contents table {
	margin:1.0em 5.0em;
}

#guide #contents ul,
#guide #contents ol {
	margin:1.0em 8.5em;
}
#guide #contents ul {
	list-style:disc;
}


#guide #contents h3 {
	margin:5.0em 0 1.0em 0;
	padding:0.4em 0.5em;
	line-height:1.0em;
	font-size:larger;
	background:#EEE;
}
#guide #contents h4 {
	margin:2.0em 0.5em 1.0em 0.5em;
	padding:0.5em 0;
	line-height:1.0em;
	font-size:larger;
	border-bottom:1px solid #CCC;
}
#guide #contents h5 {
	margin:1.0em 3.0em;
	padding:0.5em 0;
}
#guide #contents .indent {
	text-indent:-1.0em;
	display:block;
	margin-left:1.0em;
}
#guide #contents .indent2 {
	text-indent:-2.0em;
	display:block;
	margin-left:2.0em;
}
#guide #contents .caution {
	color:#AA0000;
}
#guide #contents .abc {
	font-weight:bold;
}
#guide #contents .caption {
	font-size:smaller;
}
#guide #contents .gotop {
	text-align:right;
	margin:0;
	padding:0;
}
#guide #contents .pnavi {
	margin:0;
	padding:0;
	list-style:none;
	border-left:1px solid #CCC;
}
#guide #contents .pnavi li {
	float:left;
	border-right:1px solid #CCC;
	padding:0 0.8em 0 0;
	margin:0 0 0 0.8em;
}

.visible-sp { display: none; }
#flow section { margin-bottom: 100px; }
#flow h2 {
	font-size: 2rem;
    text-align: center;
    margin: 30px auto;
}
#flow #promo,
#home #vi_list { position: relative; }
#flow .mainvisual {
	position: absolute;
    bottom: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	width: 100%;
    height: max-content;
	z-index: 2;
}
#flow .mainvisual h1,
#flow .mainvisual h2 { margin: 50px auto; color: #fff; text-align: center; position: relative; }
#flow .mainvisual h1 { font-size: 3rem; }
#flow .mainvisual h2 { font-size: 3rem; text-shadow: 2px 2px 3px black; }
#flow .mainvisual p {
	margin: 20px auto;
	color: #fff;
	text-align: center;
	position: relative;
	letter-spacing: 0.1rem;
    line-height: 2em;
    font-size: 21px;
	text-shadow: 1px 1px 3px #000;
    font-weight: bold;
}
#home #main #vi_list {
	/* height: calc(100vh - 80px); */
	margin-bottom: 0;
	width: 100%;
	overflow: hidden;
	height: 85vh;
} 
#flow #promo .overray,
#home #vi_list .overray {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.2);
	background-image: url(../img/flow_bit.png);
	z-index: 1;
}
/* 
#home #vi_list .overray.overray_clear {
	animation: fadeOut 10s ease 1 normal;
	-webkit-animation: fadeOut 10s ease 1 normal;
	animation-fill-mode: forwards;
} */
#home #vi_list #main_dam .main-image img {
	animation: fadeOut2 13s linear 0s 1 normal;
	-webkit-animation: fadeOut2 13s linear 0s 1 normal;
	animation-fill-mode: forwards;
	width: 100%;
	margin-top: -15%;
    object-fit: cover;
}
/*
#home #vi_list #main_dam {
	animation: fadeOut3 15s ease 1 normal;
	-webkit-animation: fadeOut3 15s ease 1 normal;
	animation-fill-mode: forwards;
} */
/*
@keyframes fadeOut {
	0% { -webkit-animation-timing-function: ease-out; opacity: 1.0; }
	50% { -webkit-animation-timing-function: ease-out; opacity: 0.7; }
	75% { -webkit-animation-timing-function: ease-out; opacity: 0.5; }
	90% { -webkit-animation-timing-function: ease-out; opacity: 0.2; } 
	100% { -webkit-animation-timing-function: ease-out; opacity: 0;}
} */
@keyframes fadeOut2 {
	/* 0% { -webkit-animation-timing-function: ease-out; transform: scale(1.0); }
	50% { -webkit-animation-timing-function: ease-out; transform: scale(1.1); } */
	100% { -webkit-animation-timing-function: linear; transform: scale(1.1); }
}
/*
@keyframes fadeOut3 {
	0% { opacity:1 ; }
	100% { opacity: 0; }
} */
.list-round-box { margin: 50px auto; position: relative; }
#promo ul.list-round {
	display: inline;
    text-align: center;
	margin: 50px auto;
}
#promo ul.list-round li {
	display: table-cell;
    padding-right: 10px;
    vertical-align: middle;
	width: auto;
    min-width: 166px;
    height: auto;
}
#promo ul.list-round li .list-round-wrap {
    display: table;
}
#promo ul.list-round li .list-round-innner, 
#promo ul.list-round li .list-round-wrap {
	width: 166px;
    height: 166px;
}
#promo ul.list-round li .list-round-innner {
	background: #fff;
	position: relative;
    display: table-cell;
    vertical-align: middle;
    border-radius: 50%;
	letter-spacing: 0.1rem;
    line-height: 1.8em;
	font-weight: bold;
    font-size: 17px;
    box-shadow: 1px 1px 4px black;
}
#promo ul.list-round li .list-round-innner .t-large {
    font-size: 24px ;
}
ul.list-service {
	display: flex;
	flex-wrap: wrap;
}
ul.list-service li:nth-child(n-5) {
    border-top: 1px solid #efeff0;
}
ul.list-service li {
    box-sizing: border-box;
    width: 25%;
    width: calc(100% / 4);
    overflow: hidden;
    color: #1c1b1b;
    letter-spacing: normal;
    list-style-type: none;
    background: #fff;
	padding: 20px;
	text-align: center;
}
.list-service-text {
    display: block;
    width: 100%;
	margin-bottom: 20px;
	font-size: 1rem;
	min-height: 5em;
}
.list-service-img {
    width: 100%;
    margin-bottom: 1.5rem;
    overflow: hidden;
    text-align: center;
	margin: 0;
}
.list-service-img img {
    width: 50%;
    max-height: 100%;
}
.featurebox {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 50px auto 30px;
}

.featurebox {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 30px;
}

.featurebox .featureimage {
	width: 30%;
}
.featurebox .featureimage img {
	width: auto;
	max-width: 100%;
}
.featurebox .featuretext {
	width: 30%;
}
.featurebox .featurecontent {
	width: 45%;
	margin: 20px 0;
}
.featurebox .featurecontent img,
.featurebox .featuretext img {
	width: auto;
	max-width: 100%;
	margin-bottom: 10px;
}
.featurebox .featurecontent h3,
.featurebox .featuretext h3 {
	font-size: 1.5rem;
	font-weight: normal;
	margin-bottom: 20px;
}
.featurebox .featurecontent h3 span,
.featurebox .featuretext h3 span {
	display: inline-block;
    width: 40px;
    height: 40px;
    margin-right: 1rem;
    line-height: 40px;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    background: #3f3f3f;
    border-radius: 50%;
}
.featurebox .featurecontent,
.featurebox .featuretext { font-size: 1rem; }
.contact-box {
	display: block;
    max-width: 590px;
    padding: 2rem 3rem;
    margin: 0 auto 30px;
    text-align: center;
    background: #f6f6f6;
}
.contact-box-title {
	font-size: 1.5rem;
}
.contact-box-desc,
p.font1rem {
	font-size: 1rem;
}
hr {
	display: block;
    height: 1px;
    padding: 0;
    margin: 1em 0;
    border: 0;
    border-top: 1px solid #ccc;
}
.contact-box-icon {
    font-size: 2rem;
    margin-bottom: 0;
}
/*
.c-icon {
    font-family: 'condenseicon';
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    line-height: 1;
    text-transform: none;
    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
} */
.ta-center { text-align: center; }
.contactbtn {
	color: #fff!important;
    background-color: #3f3f3f;
	position: relative;
    box-sizing: border-box;
    display: inline-block;
    width: auto;
    max-width: 100%;
    padding: 0.7rem 3rem;
    margin: 0 auto;
    text-align: center;
    text-decoration: none;
    letter-spacing: .035rem;
    cursor: pointer;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid #3f3f3f;
    border-radius: 30px;
    transition-duration: 200ms;
    transition-property: background-color;
    font-size: 1rem;
}
.contactbtn:hover {
	color: #3f3f3f !important;
    background-color: #fff;
}
.contactbtn:after {
    position: absolute;
    right: 10px;
    content: '＞';
    transition: .3s;
}
.table-service {
	width: 100%;
	max-width: 800px;
	margin: 0 auto 30px;
	table-layout: auto;
	border: 1px solid #8d8d8d;
	text-align: center;
}
table.table-service .head th {
	text-align: center;
}
table.table-service .head th:empty {
	background-color: #fff;
	border: 1px solid #fff;
}
table.table-service .primary {
    width: 25%;
    padding: 1rem 1rem .5rem;
    color: #fff;
    background: #8d795b;
}
table.table-service th {
    color: #fff;
    background: #acacac;
}
table.table-service th, table.table-service td {
    padding: 1rem;
    font-weight: normal;
    line-height: 1.554;
    border: 1px solid #c4c4c4;
}
table.table-service td {
    background: none;
}
table.table-service .row-label {
    display: none;
}
table.table-service .odd {
    background: #efeff0;
}
.ta-left {
    text-align: left;
}
.fw-bold {
    font-weight: 700;
}
.text-primary {
    color: #8d795b;
}
.fs-xlarge { font-size: 2.5rem; }
.staffbox {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 10px;
}
.staffpro { 
	max-width: 270px;
    text-align: center;
    margin: 20px;
}
.staffpro img { width: auto; max-width: 100%; }
.staffpro p.protitle {
	position: relative;
    z-index: 1;
    margin: 1rem 0 0.5rem;
    font-weight: bold;
    font-size: 1rem;
    line-height: 1.6 !important;
}
.staffpro p { font-size: 0.7rem; }
.staffpro .protitle span {
	background: linear-gradient(180deg, transparent 65%, #ffed7c 65%);
}

#flow ul.flowlist { padding: 0; }
#flow ul.flowlist li { list-style-type: none; }
#flow ul.flowlist dd { margin-left: 0; font-size: 1rem; }
#flow ul.flowlist > li { position: relative; }
#flow ul.flowlist > li:not(:last-child) { margin-bottom: 40px; }
#flow ul.flowlist > li:not(:first-child)::before {
	content: "";
	height: 60px;
	display: block;
	border-left: 4px dotted #e5e5e5;
	position: absolute;
	top: -40px;
	left: -webkit-calc(10% + 30px - 2px);
	left: calc(10% + 30px - 2px);
	z-index: 10;
}
#flow ul.flowlist > li dl {
	width: auto;
	padding: 20px 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border: 2px solid rgb(119,119,119);
	border-radius: 10px;
	position: relative;
}
#flow ul.flowlist > li:not(:last-child) dl::before,
#flow ul.flowlist > li:not(:last-child) dl::after {
	content: "";
	border: solid transparent;
	position: absolute;
	top: 100%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
#flow ul.flowlist > li:not(:last-child) dl::before {
	border-width: 22px;
	border-top-color: rgb(119,119,119);
}
#flow ul.flowlist > li:not(:last-child) dl::after {
	border-width: 20px;
	border-top-color: #fff;
  }
#flow ul.flowlist > li dl dt {
	font-size: 20px;
	font-weight: 600;
	color: rgb(119,119,119);
	-ms-flex-preferred-size: 20%;
	/* flex-basis: 30%; */
	width: 250px;
	margin-right: 2vw;
	text-align: center;
}
#flow ul.flowlist > li dl dt .icon {
	font-size: 12px;
	color: #fff;
	background: rgb(119,119,119);
	background: -moz-linear-gradient(left, rgba(119,119,119,1) 0%, rgba(221,221,221,1) 100%);
	background: -webkit-linear-gradient(left, rgba(119,119,119,1) 0%,rgba(221,221,221,1) 100%);
	background: linear-gradient(to right, rgba(119,119,119,1) 0%,rgba(221,221,221,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#777', endColorstr='#ddd',GradientType=1 );
	padding: 5px 10px;
	margin-bottom: 10px;
	display: block;
	border-radius: 20px;
	position: relative;
	z-index: 100;
}

/* ----------------------------------------------------
	company
---------------------------------------------------- */

/* bigbox */
#company #contents .bigbox {
	border:1px dotted #CCC;
}
#company #contents table.bigbox {
	border-right:1px dotted #CCC;
	border-bottom:1px dotted #CCC;
}

/* table */
#company #contents table,
#recruit #contents table {
	border-right:1px dotted #CCC;
	border-bottom:1px dotted #CCC;
}
#company #contents table th,
#company #contents table td,
#recruit #contents table th,
#recruit #contents table td {
	border-left:1px dotted #CCC;
	border-top:1px dotted #CCC;
	padding:15px;
	vertical-align:top;
	text-align:left;
}
#company #contents table th,
#recruit #contents table th {
	background:#F5F5F5;
	font-weight:normal;
	white-space:nowrap;
}
#company #contents table ol {
	list-style:decimal;
	margin-left:2.5em;
}
#recruit #contents table ol {
	list-style:decimal;
}
#recruit #contents table th {
	border-right: 1px dotted #CCC;
	border-bottom: 1px dotted #CCC;
}
#recruit #contents table td {
	border-left: 1px dotted #CCC;
	border-bottom: 1px dotted #CCC;
	border-top:1px dotted #CCC;
}
.recruit h2 {
	font-size: 20px;
	margin: 50px 0 10px;
	border-left: 6px solid gray;
	padding: 0 0 0 10px;
}
/* flexbox */
.box {
	margin: 10px 0;
}
.flexbox { display: flex; flex-wrap: wrap; margin: 30px 0; justify-content: space-evenly; }
.flexbox .box { margin: 10px; width: 40%; }
.flexbox .box a.link-button-1column { width: auto; padding: 10px 50px; }
.flexbox .onebox { margin: 10px; width: 90%; }
/* aアンカー */
a.link-button-1column {
	background-color: gray;
	color: white;
	padding: 2% 0;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	display: block;
	width: 350px;
	margin: 0 auto;
	transition: all 0.2s ease 0s;
}
a.link-button-1column:hover {
	opacity: 0.6;
}