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

/*News & Topics
==================================*/

div.news-topics {
	padding:0;
	margin:0 0 15px 0;
}

.news div.news-topics {
	background:#FFF;
	padding:0 5px;
	margin:0 0 10px 0;
}




div.news-topics a {
	text-decoration:none;
}


div.news-topics div.title-area {
	padding:5px 4px;
	font-size:12px;
	background:#fff;
	background-color:#D6EDF6;
	/*color:#33A4D5;*/
	color:#267BA0;
	}
	


div.news-topics  p.title {
	width:119px;
	float:left;
}

div.news-topics  p.title img{
	width:119px;
}

div.news-topics  p.history {
	text-align:center;
	padding:10px 10px 0 10px;
}

div.news-topics  p.history a{
	font-size:12px;
	width:100%;
	display:block;
	padding:8px 0;
	border:1px solid #c9c9c9;
	color:#333;
}

div.news-topics  p.history span{
	background:url("../../images/contents-ar001.png")  no-repeat 0 50%;
	background-size:7px 11px;
	padding:0 0 0 12px;
}

	



/*==================================
NEWS
==================================*/

div.news-topics div#news-area a {
	display:block;
}

div.news-topics div#news-area .list{
	border-bottom:1px dotted #b2b2b2;
	padding:10px 10px;
}

div.news-topics div#news-area dl {
	background-size:6px 8px;
	padding:0 10px 0 0;
}

div.news-topics div#news-area a dl {
	background:url("../../images/contents-ar001.png") #fff no-repeat right 50%;
	background-size:6px 8px;
}


div.news-topics div#news-area dl dt {
	padding-bottom:5px;
	color:#333;
	font-size:12px;
}

div.news-topics div#news-area dl dd {
	font-size:12px;
}

div.news-topics div#news-area a dl dd {
	color:#2168b1;
	font-size:12px;
}

div.news-topics div#news-area a:hover dl dd ,
div.news-topics div#news-area a:hover dt  {
	color:#F39A00 !important;
}


/*==================================
Gnavi
==================================*/

#gnavi {
	padding:0;
}

#gnavi .menu-area {
}



#gnavi h2 {
	padding:5px 8px;
	font-size:12px;
	background:#33A4D5;
	color:#ffffff;
}

#gnavi ul {
	border-left:1px solid #d2d2d2;
}

#gnavi .menu-area2  ul {
	/*box-sizing*/
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing:border-box;
}

#gnavi ul li {
	float:left;
	width:50%;
	border-bottom:1px solid #d2d2d2;
	background: #ffffff;
}

/*#gnavi ul li:last-child  {
	width:100%;*/
	/*box-sizing*/
	/*-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing:border-box;
	border-bottom:none;
}

#gnavi ul li:last-child  a{
	border-right:none;
}*/

#gnavi ul li.none  {
	float:none;
}

#gnavi ul li a {
	font-size:12px;
	padding: 14px 10px 14px 20px;
	display:block;
	background:url("../../images/contents-ar001.png") no-repeat 9px 50%;
	background-size:6px 8px;
	color:#444444;
	text-decoration:none;
	/*文字を省略するハック*/	
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}



#gnavi .menu-area2 ul li:nth-child(1) a,
#gnavi .menu-area2 ul li:nth-child(2) a {
	border-top:none;
	/*box-sizing*/
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing:border-box;
}

#gnavi ul li:nth-child(odd) a{
	border-right:1px solid #d2d2d2;
}

#gnavi ul li.line:nth-child(2) a {
	border-top:none;
}

#gnavi ul li a:hover {
	/*color:#C60;*/
	color:#33A4D5;
}

/*Junction
==================================*/

div.junction {
	padding:0;
}

div.junction h2 {
	padding:3px 10px;
	font-size:12px;
	background:#D6EDF6;
	border-bottom:1px solid #d2d2d2;
	color:#267BA0;
}

div.junction ul li {
	border-bottom:1px solid #d2d2d2;
	background: #ffffff; /* Old browsers */
}

div.junction ul li a {
	padding: 15px 10px 15px 25px;
	display:block;
	background:url("../../images/contents-ar002.gif") no-repeat 9px 48%;
	background-size:12px 12px;
	color:#444444;
	text-decoration:none;
}

div.junction ul li a:hover  {
	color:#C60;
}

/*Title (h1,h2,h3)
==================================*/

/*h1*/

div.h1-area {
	text-align:center;
	margin-bottom:20px;
	background-color:#333;
}

div.h1-area h1 {
	padding: 8px 0;
	color:#FFF;

}

/*h2*/

/*div.h2-area {
	padding:0 10px;
	margin-bottom:15px;
}
*/
div.h2-area .h2-deco{
	/*background-color: #f4f5f1;
    border-left: 7px solid #33A4D5;
    padding: 9px 10px 7px;*/
	color:#000;
	/*font-family:NewRodinPro-DB;*/
	text-align:left;
	margin: 0 0 10px;
	padding:1em 0px;
    border-top: 1px solid #33A4D5;
    border-bottom: 1px solid #33A4D5;
}

/*h3*/
div.h3-area {
	margin-top:15px;
	margin-bottom:5px;
	padding:0px;
}
div.h3-area .h3-deco{
	padding:6px 0;
}
div.h3-area h3 {
	position: relative;
    color:#FFF;
	background:#33A4D5;
    margin:0px;
    padding: 0.7em;
    /*box-shadow: 0 1px 2px #999;
    -moz-box-shadow: 0 1px 2px #999;
    -webkit-box-shadow: 0 1px 2px #999;
    -o-box-shadow: 0 1px 2px #999;
    -ms-box-shadow: 0 1px 2px #999;*/
	text-align:center;
	letter-spacing:0px;
}










/*h4*/

/*div.h4-area {
	margin-bottom:0px;
	padding:0 10px;
}

div.h4-area div.h4-deco{
	margin-bottom:0px;
	border-bottom:1px solid #d2d2d2;
}

div.h4-area div.h4-deco h4 {
	text-align:left;
	padding: 4px auto 10px 0px;
	font-family:NewRodinProN-B;
	color:#33A4D5;
	background:url("../../images/contents-tl001.gif") no-repeat left 48%;
	background-size:12px 12px;
}*/


/*Outline
==================================*/

div.outline {
	margin-bottom:20px;
	padding:0 10px;
}

div.outline p.img {
	width:280px;
	margin:0 auto;
	padding-bottom:5px;
	text-align:center;
	
}

div.outline p.cap {
	padding-bottom:5px;
	font-size:12px;
	text-align:center;
}

div.outline p.subtitle {
	padding-bottom: 5px;
	color: #f09023;
	font-size: 16px;
	font-weight: bold;
}

/*Text-area
==================================*/

div.tx-wrapper {
	margin-bottom:20px;
	padding:0 10px;
}

div.tx-wrapper p.img {
	width:280px;
	margin:0 auto;
	padding-bottom:5px;
	text-align:center;
}

div.tx-wrapper p.cap {
	padding-bottom:5px;
	font-size:12px;
	text-align:center;
}

ul.cms-contents-list-ul li {
	margin-left:20px;
    list-style-type: disc;
}

/*Photo+Photo
==================================*/

div.img-pat {
	margin-bottom:10px;
	padding:0 10px;
}

div.img-pat div.img-area {
	padding-bottom:10px
}

div.img-pat div.img-area p.img {
	width:280px;
	margin:0 auto 10px;
	text-align:center;
}

div.img-pat div.img-area p.cap {
	padding-bottom:5px;
	font-size:12px;
	text-align:center;
}

/*Anchor
==================================*/

div.anchor {
	margin-bottom:20px;
	padding:0 10px;
}

div.anchor div.anchor-deco {
	border:3px solid #c4c4c4;
}

div.anchor h2 {
	padding:5px 8px;
	border:1px solid #cccccc;
	background:#989696;
	font-size:12px;
	color:#fff;
}

div.anchor ul li {
	background: #ffffff;
	border-bottom:1px solid #c4c4c4;
}

div.anchor ul li a {
	display:block;
	margin-right:10px;
	padding:8px 15px 8px 26px;
	background:url("../../images/contents-ar005.gif")  no-repeat 10px center;
	background-size:12px 12px;
	color:#111111;
	text-decoration:none;
	font-size:13px;
}

div.anchor ul li a:hover {
	color:#C60;
}



/*Download
==================================*/

div.download {
	margin-bottom:20px;
	padding:0 10px;
}

div.download ul {
    list-style:none;
}

div.download ul li {
	margin-bottom:5px;
	border:1px solid #c9c9c9;
}

div.download ul li a {
	display:block;
	padding:8px 5px 8px 25px;
	background:url("../../images/contents-ic001.gif")  no-repeat 8px center;
	text-decoration:none;
	color:#444444;
}

/*Special
==================================*/

div.special {
	margin-bottom:20px;
	border-top:1px dotted #b2b2b2;
}

div.special-deco {
	padding:16px 10px 15px;
	border-bottom:1px dotted #b2b2b2;
}

div.special p.img-area {
	float:left;
	padding-right:10px;
}

div.special p.img-area img {
	border:1px solid #d9d0d0;
}

div.special h2 {
	padding:0 0 3px;
	color:#666666;
	font-size:16px;
}


/*To top
==================================*/

div.to-top {
	margin-bottom:20px;
	padding:0 40px;
}

div.to-top-deco {
	border:1px solid #c9c9c9;
	background:#FFFFFF;
}

div.to-top-deco a {
	display:block;
	padding:5px;
	color:#222222;
	text-decoration:none;
	text-align:center;
	
}

div.to-top-deco a span.ar {
	padding-left:15px;
	background:url("../../images/contents-ar004.gif") no-repeat 0 center;
	background-size:7px 5px;
	font-size:12px;
}


/* Table
=============================================================================*/
/*div.table-area {
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing:border-box;
	margin-bottom:20px;
	width:100%;
	padding:0 10px;
	
}

div.table-area div.table-scroll {
	height:10px;
	position:relative;
	margin-bottom:1px;
	background:url("../../images/contents-bg001.gif") no-repeat 0 0 #ebebeb;
}

div.table-area div.table-scroll img {
	display:block;
	position:absolute;
	top:0;
	right:0;
	width:12px;
	height:10px;
}
div.table-area table {
	width:100%;
	border-top:#d5beaa 1px solid;
	border-right:#d5beaa 1px solid;
}
table {
	width:100%;
}
table th ,
table td{
	padding:4px 0px;
	background:#FFFFFF;
	font-weight:normal;
	vertical-align:top;
	font-size:8px !important;
}
div.table-area table th ,
div.table-area table td {
	padding:4px 3px;
	border-bottom:#d5beaa 1px solid;
	border-left:#d5beaa 1px solid;
	background:#FFFFFF;
	font-weight:normal;
	vertical-align:top;
	font-size:8px !important;
}
table th span,
table td span,
table th ul li,
table td ul li
div.table-area table th span,
div.table-area table td span,
div.table-area table th ul li,
div.table-area table td ul li{
	font-size:8px !important;
}

div.table-area table th {
    background-color:#ffe9b5;
}

div.table-area table th.title {
    width:130px;
	text-align:right;
}

div.table-area table td.align-right{
	text-align:right;
}

div.table-area table th.nowrap ,
div.table-area table td.nowrap {
	/*white-space:nowrap;*/
}

div.table-area table td div.txt-wrapper {
	padding:0 0 5px 0;
}

div.table-area table td span.note-txt {
	display:block;
	padding:0 0 3px 0;
}

div.table-area table.border-none,
div.table-area table.border-none th,
div.table-area table.border-none td {
	border:solid #FFFFFF 1px;
	border-collapse:collapse;
}*/
/*list*/
div.list-area {
	margin-bottom:20px;
}
div.list-area ul {
	margin-bottom:20px;
	padding:0 10px;
}
div.list-area ul li {
	list-style-type: none;
	margin:0 0 5px 0;
	font-weight:normal;
}
div.list-area ul li.ttl {
	font-weight:bold;
	color:#1ead4c;
	list-style-type: none;
	display:block;
	border-bottom:1px solid #cccccc;
	margin:10px 0 5px 0;
}


/*Link area
==================================*/

div.linkarea {
	padding:0;
}

div.linkarea h2 {
	padding:5px 10px;
	font-size:12px;
	background:#D6EDF6;
	border-bottom:1px solid #d2d2d2;
	border-top:1px solid #d2d2d2;
	color:#267BA0;
}

div.linkarea ul li {
	border-bottom:1px solid #d2d2d2;
	background: #ffffff; /* Old browsers */
}

div.linkarea ul li a {
	padding: 15px 10px 15px 23px;
	display: block;
	background: url("../../images/contents-ar001.png") no-repeat 10px 48%;
	background-size:6px 8px;
	color: #444444;
	text-decoration: none;
}

div.linkarea ul li a:hover {
	color:#C60;
}

/*Google map
==================================*/

span.map {
	display:block;
}

span.map a {
	display:block;
	padding:5px 0 5px 25px;
	background:url("../../images/contents-map.gif") no-repeat left center;
}

/* Space Color
=============================================================================*/

#main .margin-b000{margin-bottom:0 !important;}
#main .margin-b010{margin-bottom:10px !important;}
#main .margin-b025{margin-bottom:25px !important;}
#main .margin-b050{margin-bottom:50px !important;}
#main .margin-b075{margin-bottom:75px !important;}
#main .margin-b100{margin-bottom:100px !important;}
#main .margin-b150{margin-bottom:150px !important;}

/*Color*/
span.cms-pallet-01 { color: #000000;}
span.cms-pallet-02 { color: #FF0000;}
span.cms-pallet-03 { color: #853434;}
span.cms-pallet-04 { color: #AAAAAA;}
span.cms-pallet-05 { color: #008000;}
span.cms-pallet-06 { color: #808000;}
span.cms-pallet-07 { color: #008080;}
span.cms-pallet-08 { color: #999999;}
span.cms-pallet-09 { color: #000080;}
span.cms-pallet-10 { color: #CC6600;}
span.cms-pallet-11 { color: #800080;}




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

/* COMMON*/

/* ==================================================== */
.clearfix {display:block;}
.clear { clear:both; }
.clear hr { display:none; }
#top_of_page {
	height: 42px;
	line-height:44px;
	margin-bottom:15px;
}
.pagetop div {
	border: 3px solid #E61F18;
	margin: 10px 10px 0;
	text-align: center;
	height: 42px;
	line-height: 44px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	font-size: 87.5%;
}
.pagetop span {
	display: inline-block;
	position: relative;
}
.pagetop span:after {
	content: "";
	position: absolute;
	left: 0;
	top: 12px;
	display: inline-block;
	width: 11px;
	height: 17px;
	/*background-image:url(../../images/pagetop.png);
	background-size:11px 17px;
	background-position: 0 -30px;*/
}
.flickity_frame{
	margin:0px auto 30px;
}
.staff{
	margin:20px auto 0px;
}
.staff_ph{
	text-align:center;
}
.message{
	background-color:#D6EDF6;
	border-radius:5px;
	position:relative;
	color:#000;
	padding:20px;
	font-size:0.9em;
	line-height:165%;
	text-align:justify;
}
.message:after {
	position: absolute;
 	content: " ";
 	height: 0;
 	width: 0;
	bottom: 100%;
 	left: 50%;
	 border:10px solid transparent;
 	border-bottom:10px solid #D6EDF6;
 	margin-left: -10px;
}
.message p{
	text-align:right;
	margin-top:20px;
}




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

/* Google Maps*/

/* ==================================================== */
.google-maps {
position: relative;
padding-bottom: 50%; // これが縦横比
height: 0;
overflow: hidden;
}
.google-maps iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}





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

about_01

==================================*/
#mission{
	font-size:15px;
	margin:15px 0px;
	line-height:150%;
	font-weight:bold;
}
.idealist
,.idealist li{
	padding:0px;
	margin:0px;
}
 
.idealist li{
	list-style-type:none !important;
	list-style-image:none !important;
	margin: 5px 0px 5px 0px !important;
}
 
.list_a01{
	counter-reset:li;
	margin-left:20px !important;
}
 
.list_a01 li{
	position:relative;
	display: block;
	padding:8px 0px 8px 40px; 
}
 
li.list_a01-count:after{
	counter-increment: li;
	content: counter(li);
	position: absolute;	
	left: -16px;
	top: 2px;
	background: #D6EDF6;
	height: 30px;
	width: 30px;
	line-height: 32px;
	border: 2px solid #33A4D5;
	text-align: center;
	border-radius: 30px;
}
 
li.list_a01-count:before{
	content:''; 
	display:block; 
	position:absolute; 
	box-shadow: 0 0 2px 2px rgba(255,255,255,0.2) inset;
	top:11px; 
	left:15px; 
	height:0; 
	width:0; 
	border-top: 8px solid transparent;
	border-right: 7px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 13px solid #33A4D5;
}
#ceo{
	width:50%;
	height:auto;
}
/*--------------------------------------
  TABLE
--------------------------------------*/
.office{
	width:100%;
    margin:10px auto;
	/*border:#33A4D5 1px solid;*/
	font-size:13px;
}
.office th{
    padding:5px;
	display:block;
	background-color:#EEE;
	text-align:center;
}
.office td{
	padding:5px;
	display:block;
	text-align:justify;
}
.office td ol li{
	list-style:disc inside;
	text-align:justify;
	margin-bottom:5px;
}
@media only screen and (min-width: 780px) {
.office{
	width:100%;
    margin:5px auto;
	/*border:#33A4D5 1px solid;*/
}
.office tr{
    border-bottom:#6699ff 1px solid;
}
.office tr:last-child{
	border:none
 }
.office th{
	width:40%;   
    padding:5px 10px;
	display:table-cell;
	border-right:#6699ff 1px solid;
	text-align: left;
}
.office td{
	width:60%;   
    padding:5px 10px;
	display:table-cell;
	text-align: left;
}
}




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

contact

==================================*/
#back{
	text-align:center;
	margin:20px auto;
}




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

WORKS

==================================*/
#works{
	margin:30px 0px;
	padding:0px 2%;
}
#works ol{
}
#works ol li{
	width:100%;
	padding:0px;
	margin:0px auto;
}
#works ol li img{
	width:50%;
	height:auto;
	margin:0px auto 10px;
	text-align:center;
}
.works_img{
    border-radius:200px;
    -webkit-border-radius:200px;
    -moz-border-radius:200px;
	text-align:center;
}
#works .staff{
	width:70%;
	height:auto;
	margin:25px auto 5px;
	text-align:center;
}
#works ol li h5{
	width:80%;
	text-align:center;
	font-size:14px;
	margin:30px auto 15px;
}
h5 {
	position: relative;
	padding: .5em .75em;
	/*background-color: #E61F18;*/
	background-color:#222;
	color:#FFF;
}
h5::after {
	content: '';
	position: absolute;
	top: -20px;
	left: 0;
	width: -webkit-calc(100% - 20px);
	width: calc(100% - 20px);
	height: 0;
	border: 10px solid transparent;
	border-bottom-color:#777;
}
#works p{
	line-height:1.3em;
	font-size:12px;
	text-align:justify;
	color:#111;
}
#works ol li h6{
	text-align:center;
	font-size:13px;
	margin:0px auto 0px;
}
.defaultlist
,.defaultlist li{
	padding:0px;
	margin:0px auto;
	font-size:12px;
	line-height:140%;
	width:85%;
}
.defaultlist li{
	float:none;
	/*list-style-type:none !important;
	list-style-image:none !important;*/
	margin: 2px 0px 2px 0px !important;
}
.list4 li{
	position:relative;
	padding-left:0px;
	list-style:outside url(../../images/check.png);
}
/*.list4 li:after, .list4 li:before{
	content:''; 
	display:block; 
	position:absolute; 
	top:4px; 
	left:8px; 
	height:11px; 
	width:4px; 
	background:#E61F18; 
	border-radius:10px;
	transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
}
.list4 li:before{
	top:8px; 
	left:3px;
	height:8px; 
	transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	-o-transform:rotate(-45deg);
}
*/