/*
 * For SANKAI CSS File
 *
 * SANKAI CSS File $Id: SANKAI.css 14 2019-12-16 09:58:46Z t-yasuka $
 */

/*
Display Size
    0~319
    320~399
    400~599
    600~899
    900~
*/
/*****************************************************/
/*  Common                                           */
/*****************************************************/

.innerbody {	
	width:100%;
	margin:0 auto;
}

footer {
	font-family: "游ゴシック体", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS UI Gothic", "sans-serif";
}

.fsitemap {
	/*font-family: "游ゴシック体", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS UI Gothic", "sans-serif";*/
	font-size:12px;
}

.copyrights {
	/*font-family: "游ゴシック体", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS UI Gothic", "sans-serif"; */
	font-size:12px;
	line-height:14px;
}

/* - - - - - - - - - - - - - - - - - - - - - - - - - -
    TOP Menu area
- - - - - - - - - - - - - - - - - - - - - - - - - - - */

.ribon {
	width:100%;
	height:40px;
	background-color:black;
}

.top-menu {
	position:fixed;
	width:40px;
	height:40px;
	right:0px;
	top:0px;
	z-index:999;
	line-height:20px;
	background-color:black;
	opacity:1;
	color:#aaaaaa;
	
	 font-size:22px;
}

.pulldownmenu:visited {
	color:#aaaaaa;;
}

.pulldownmenu:hover {
	color:white;
}

.pulldownmenu {
	display: flex;
	position:absolute;
	right:0;
	margin:10px;
	padding:0;
	width:20px;
	/*padding-bottom:10px;*/
	font-family: "游ゴシック体", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS UI Gothic", "sans-serif";
	font-size:20px;
	text-decoration: none;
}
.pulldownmenu > li {/*親階層のみ幅を25%にする*/
	width: 40px;
}
/*全てのリスト・リンク共通*/
.pulldownmenu ul {
	position: relative;
}

.pulldownmenu li {
	list-style: none;
	right:10px;
}
.pulldownmenu li a {
	background: black;
	border-left: 1px solid #888888;
	color: #888888;
	display: block;
	/*height: 1.5em;*/
	/*line-height:1.5em;*/
	text-align: left;
	text-decoration: none;
	right:10px;
}

/*子階層以降共通*/
.pulldownmenu li li {
	display:block;
	width:10em;	/*プルダウンメニューの幅*/
	height:0;
	overflow: hidden;
	transition: .3s;
	font-size:14px;
	/*right:10px; */
}
.pulldownmenu li li a {
	border-top: 1px solid #888888;
	height:1.6em;
	/*right:10px; */
	padding:0;
	padding-left:5px;
	margin:0;
	/*background-color:brown;*/
}

.pulldownmenu li li a:hover {
	color:white;
	background-color:#888888;
}


.pulldownmenu li:hover > ul > li {
	height: 1.6em;
	padding:0;
	margin:0;
	vertical-align:middle;
	overflow: visible;
	/*right:10px; */
}

.pulldownmenu > li ul {
	position:absolute;
	/*width:500px; */
	right:0px;
}


/* - - - - - - - - - - - - - - - - - - - - - - - - - -
    Footer sitemap
- - - - - - - - - - - - - - - - - - - - - - - - - - - */

.ftsitemap ul {
	display: table;
	margin: 5px auto;
	text-align:center;
	letter-spacing:-0.5em;
	/*font-size:0; */
	/*border-collapse: collapse;*/
}

.ftsitemap ul li {
	display: inline-block;
	letter-spacing:normal;
	font-size: 12px;
	padding-left: 3px;
	padding-right: 3px;
	/*margin-left: 0px;
	margin-right: 0px; */
	min-width: 3em;
	border-left: 1px solid #FFA500;
	border-right: 1px solid #FFA500;
}

.footer_tb {
	padding:0;
	margin:0;
	margin-left:20px;
	font-size:12px;
	line-height:1.5em;
	width:100%;
	border-collapse: collapse;
	/*border:solid 1px black;*/
}

.footer_tb .f1 {
	text-align-last:justify;
}

.footer_tb th {
	width:5em;
	justify-content: space-between;
	font-weight: normal;
	/*text-align:start;*/
	padding:0;
	margin:0;
	/*border:solid 1px red;*/
}

.footer_tb td {
	width:calc(100% - 5em);
	padding:0;
	margin:0;
	/*border:solid 1px blue;*/
}

.footer h5 {
	margin-top:10px;
	margin-bottom:0px;
	padding:0;
	line-height:1.5em
}

/* - - - - - - - - - - - - - - - - - - - - - - - - - -
    Goto top
- - - - - - - - - - - - - - - - - - - - - - - - - - - */

#FloatButton {
	display: none;
}

#page_top {
	width: 40px;
	height: 40px;
	position: fixed;
	right: 5px;
	bottom: 5px;
	background-image: url("../images/GoTop.png");
	background-color: #88aaff;
	color: #ffffff;
	opacity: 0.6;
}

#page_top a {
	position: relative;
	display: inline-block;
	width: 40px;
	height: 40px;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
	overflow: hidden;
}

#Prev_Page {
	width: 40px;
	height: 40px;
	position: fixed;
	right: 52px;
	bottom: 5px;
	background: #88aaff;
	opacity: 0.6;
}

#Prev_Page a {
	position: relative;
	display: block;
	width: 40px;
	height: 40px;
	text-decoration: none;
	background-image: url("../Pictures/GoBack.png");
	background-color: #FFCB72;
	color: #ffffff;
}



/*****************************************************/
/*  index.html                                       */
/*****************************************************/

.LogoIBox {
	display:block;
	width:98vw;
}

.LogoBBox {
	position:absolute;
	left:5px;
	bottom:0px;
}

.address_flexbox {
	display:flex;
	flex-wrap: wrap;
}

.addressbox {
	font-size:calc(9.793px + 0.6896vw);
	display:block;
	margin:0 auto;
}

.addressbox table {
	display:block;
	margin:0 auto;
	padding-left:5px;
}

.googlemap_area {
	margin:0 auto;
	display:inline-block;
	width:51%;
	height:48vw;
}

/*****************************************************/
/*  Office.html                                      */
/*****************************************************/

.OfficeBox {
	display:block;
	width:100%;
	margin:0;
	padding:0;
	/*background-image:url(images/Office.jpg);*/
	background-size: cover;
	background-position: bottom right;
	background-repeat: no-repeat
}

.OfficeBox p {
	text-indent: 1em;
	font-size:calc(9.793px + 0.69vw);
	
}

.Greeting {
	display:block;
	position:relative;
	text-align:left;
	vertical-align: top;
	margin:0px;
	padding:10px;
	background-color:white;
	width:calc(50% - 20px);
	margin-left:calc(50% - 10px);
}

.BusinessDescBox{width:100%;
	height:58em;
	display:block;
	position:relative;
	padding-top:50px;
	padding-bottom:50px;
	margin-top:0px;
	
	background-repeat:no-repeat;
	background-position:left center;
	background-size:cover;
}

.__BusinessDescription:before {
	content: "";
    display: block;
    padding-top: 100%; /* 1:1 */
}

.BusinessDescription table {
	border-collapse:collapse;
	table-layout:fixed;
	line-height:1.5em;
	/*font-size:10px;*/
}

.BusinessDescription th {
	text-align-last:justify;
	vertical-align: top;
	margin-top: 0.25em;
	margin-bottom:0.25em;
	padding-left:0.25em;
	padding-right:0.25em;
	/*width:20%;*/
	/*
	background-color:rgba(0,0,0,0);*/
	background-color:#eeeeee;
	border: solid 1px #aaaaaa;
}

.BusinessDescription td {
	padding-left:0.25em;
	padding-right:0.25em;
	margin-top: 0.25em;
	margin-bottom:0.25em;
	/*line-height:1.4em;*/
	/*width:80%;*/
	/*
	
	background-color:rgba(0,0,0,0);
	*/
	background-color:#ffffff;
	border: solid 1px #aaaaaa;
}

.BusinessDesc {
	display:block;
	/*width:288px;*/
}

.AABusinessDescription:before {
	content: "";
	display: block;
	padding-top: 100%; /* 1:1 */
}

.BusinessDescription .f1 {
	width:4em;
}

.BusinessDescription .f2 {
	width:8em;
	text-align-last:justify;
	border-right:none;
	border-bottom:none;
	margin-right:0px;
	margin-left:0px;
	padding-right:0px;
	padding-left:0px;
	
}
#WorkStyleRef {
	text-decoration: none;
}

#WorkStyleRef:visited {
	color:black;
}

.BusinessDescription .f3 {
	width:calc(calc(100% - 13em) - 4px);
	border-left:none;
	border-bottom:none;
}

.BusinessDescription .top {
	border-bottom: none;
}

.BusinessDescription .mid {
	border-bottom: none;
	border-top: none;
}

.BusinessDescription .bot {
	border-top: none;
}


/*****************************************************/
/*  Responsive Definitions                           */
/*****************************************************/

@media (min-width: 0px) and (max-width: 319px) {
	body {
		min-width: 320px;
	}

	.LogoIBox {
		width:320px;
	}
	
	.LogoCapTxt {
		font-size:10px;
	}

	.addressbox {
	font-size:12px;
		
	}

	.googlemap_area {
		width:300px;
		height:300px;
	}

	
	h1 {
		font-size:26px;
	}
	
/*	.BusinessDescription table {
		width:288px;
		font-size:10px;
	} */
	
	.Greeting {
		width:calc(100% - 20px);
		margin-left:0%;
	}
	
	.BusinessDescBox {
		font-size:10px;
	}
	.BusinessDesc {
		width:288px;
		font-size:10px;
	}
	
}

@media (min-width: 320px) and (max-width: 640px) {
	.LogoCapTxt {
		font-size:calc(2.275px + 2.4vw);
	}

	h1 {
		font-size:26px;
	}

	.googlemap_area {
		
		width:300px;
		height:300px;
	}

	.Greeting {
		width:calc(75% - 20px);
		margin-left:calc(25% - 0px);
	}

	.BusinessDescBox {
		font-size:10px;
	}

	.BusinessDesc {
		width:288px;/* calc(320px - 32px); */
		font-size:10px;
	}

}

@media (min-width: 641px) and (max-width: 900px) {
	.LogoCapTxt {
		font-size:calc(2.275px + 2.4vw);
	}

	.Greeting {
		width:calc(50% - 20px);
		margin-left:50%;
	}
	
	.BusinessDescBox {
		font-size:calc(5.076923px + 0.76923vw);
	}

	.BusinessDesc {
		width:50%;
		font-size:calc(5.076923px + 0.76923vw);
	}
	.BusinessDescription .f1 {
		width:7em;
	}
	
}

@media (min-width: 901px) {
	body {
		width: 100%;
	}
	
	.innerbody {
		width:900px;
		margin:0 auto;
	}
	
	.LogoIBox {
		width:900px;
	}

	.LogoBBox {
		width:900px;
		position:absolute;
		left:calc( calc( calc(100vw - 900px) / 2 ) + 5px);
		bottom:0px;
	}

	.addressbox {
		font-size:16px;
	}


	.googlemap_area {
		height:450px;
	}

	
	
	.LogoCapTxt {
		font-size:24px;
	}

	
	.Greeting {
		width:calc(50% - 20px);
		margin-left:50%;
	}
	
	.BusinessDescBox {
		font-size:12px;
	}
	
	.BusinessDesc {
		width:450px;
		font-size:12px;
	}

	.BusinessDescription .f1 {
		width:8em;
	}

}
