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

.to_top,
.pcnone{
	display: none;
}
.spnone{
	display: block;
	}
p.gotoList{
	margin: 10px 5px;
	text-align: right;
	}

#headblock .logo_td img,
.unit_special,
div.unit_news,
.box{
	background-color: #fff;
	}


/****** Font ******/

/*Font-size*/
.cat_pankuzu,
.newsCat{
	font-size: 12px;
}
.box p.text_info::before,
p.attention,
#mainArticle figcaption{
    font-size: 0.8rem;
}
#headblock .headblock_pre,
#headblock .headblock_yomi,
#rel ol li{
    font-size: 0.9rem;
}
#headblock .headblock_access,
.block_table dl.menu dd h2,
#rel ol li a,
section#link .link_content a{
    font-size: 1rem;
}

/*Line-height*/
#headblock {
    line-height: 1.7;
}
.unit_special .unit_inner p{
	line-height: 2rem;
	}


/****** 共通header (#head) ******/
#head{
	margin: 0 auto;
    position: relative;
	text-align: left;
	}
#head_rogo{
	float: left;
	padding-top: 8px;
    padding-bottom: 0;
	}
/* #head_rogo img {
	width: 100%;
	height: auto;
} */
#head_system{
	float: right;
	width: 220px;
	margin-right: 0;
	padding:10px 0;
	text-align:right;
	}

/****** パンくず・カテゴリ ******/
.cat_pankuzu {
    padding-left: 0.5em;
    background: #fff;
}
.cat_pankuzu a{
    color: inherit;
}
.cat_pankuzu ul li {
	display: inline-block;
    margin: 0 0.3em;
}
.cat_pankuzu ul li:first-child{
    margin-left: 0;
}
.cat_pankuzu ul li:not(:last-child)::after {
	content: ">";
	margin-left: 0.3em;
}

/****** page header（#headblock） ******/
#headblock .unitblock_td {
	overflow: hidden;
}
#headblock .headblock_yomi {
    display: block;
}

/****** スペシャルコンテンツ ******/
.pr h2{
	color: #fff;
	margin: 0;
	font-size: 1rem;
	padding: 3px;
	}
.unit_special .unit_inner p:not(.gotoList),
.unit_special dl{
	padding-left: 6.5rem;
	}
.unit_special .unit_inner p,
div.unit_news ul{
	margin: 8px 0 0 0;
	}

/*開閉メニュー*/
.unit_special .sp-check {
	display: none;
}
.unit_special .sp-label {
	display: block;
	margin-bottom: 1px;
	position: relative;
	color: #fff;
    border-radius: 2px;
}
.unit_special .sp-label::after {
	box-sizing: border-box;
	content: "\f0fe";
	display: block;
	font-family: "Font Awesome 5 Free";
	padding: 5px 10px 5px 3.4px;
	position: absolute;
	right: 0px;
	top: 3px;
	font-weight: 900;
	color: #fff;
	font-size: 1.5rem;
}
.unit_special .sp-check:checked + .sp-label::after {
	content: "\f146";
}
.unit_special li.ticket label {
	background-image: url("/images/unit/icon_hankenservice.png");
	padding: 0.5em 0 0.5em 2em;
	background-repeat: no-repeat;
	background-size: 40px;
	background-position: 2px;
	text-indent: 0.5em;
	background-color: #B67C64;
}
.unit_special li.fctokyo label.sp-label {
	padding: 0.5em 1em 0.5em 7.5em;
	background: url("/images/unit/icon_fctokyoService_full.png") ,linear-gradient( 90deg, #06038D 25%, #DA291C 25%, #DA291C 50%, #06038D 50%, #06038D 75%, #DA291C 75%, #DA291C );
	background-repeat: no-repeat;
	background-position: 1.5%;
}
.unit_special .sp-content {
	height: 0;
	opacity: 0;
	padding: 0 10px;
	transition: .5s;
	visibility: hidden;
}
.unit_special .sp-check:checked + .sp-label + .sp-content {
	height: 100%;
	opacity: 1;
	padding: 10px;
	visibility: visible;
}
.unit_special .sp-check:checked + .sp-label + .sp-content h4{
    margin-top: 0.5em;
}

/*半券*/
.unit_special.ticket{
	border: 2px solid #ac2025;
	}
.unit_special.ticket h2{
	background: #ac2025;
	}
.unit_special.ticket .unit_inner{
	background: url("/images/unit/icon_hanken.png") no-repeat 3% center;
	background-size: 3rem;
	min-height: 3rem;
	}
.unit_special.ticket p.ticket_period{
	margin-top:20px;
	}
	
/*scratch*/
.unit_special.scratch{
	/*border: 2px solid #E8437E;*/
	border: 2px solid #005BAC;
	}
.unit_special.scratch h2{
	/*background: #E8437E;*/
	background: #005BAC;
	}
/*.unit_special.scratch .unit_inner{
	background: url("/images/unit/icon_scratch.png") no-repeat 1% center;
	background-size: 5rem;
	min-height: 3rem;
	}*/
.unit_special.scratch .unit_inner dl{
	padding:5px;
	margin: 5px;
	}
.unit_special.scratch .unit_inner dt{
	color: #4C4298;
	font-weight: 600;
	}
.unit_special.scratch .unit_inner dt span{
		margin:10px 4px 0 0;
		text-align:right;
	}
.unit_special .unit_inner dl dd{
	/*border-top: double 3px #E8437E;*/
	border-top: double 3px #005BAC;
	margin-top: -7px;
	margin-bottom: 5px;
	padding-top: 8px;
	}

/* 上部ホットニュース */
.newsCat {
	width: 5em;
	text-align: center;
	display: inline-block;
}
div.unit_news img{
	vertical-align: middle;
	}


/****** 本文(#mainArticle) ******/

.box{
	clear: both;
	overflow: hidden;
	}
.box:last-of-type {
	margin-bottom: 0;
    }
#mainArticle .box h2.title{
    box-sizing: border-box;
	}
#mainArticle figure {
	margin: 0 0 1em;
    overflow: hidden;
    text-align: center;
}
.pr_img img{
	margin: 0;
	max-width: 100%;
	}
#mainArticle .pr_img td{
    word-break: break-all;
}

#mainArticle figcaption {
	color: #666;
	float: left;
	line-height: 1.2;
	margin-bottom: 1em;
}
/* figcaption::before {
	content: "▲";
	margin-right: 0.2em;
} 定着するまでしばらく保留 */
.block_table {
    margin-bottom: 80px;
	}
.block_table dl.menu{
	margin-bottom: 10px;
	overflow: hidden;
	}
.block_table .right_td dl.menu{
	margin-bottom: 30px;
	}
.block_table dl.menu dd h2{
    line-height: 1.3rem;
    margin: 0;
	padding-left: 5px;
	}
.menu a:link,
.menu a:visited,
.menu a:active,
.menu a:hover {
    color: #333333;
}
.menu{
    width: 100%;
    margin-top: 0;
}
.menu img{
    width: 125px;
	height: 125px;
	margin: 5px;
}

.data_table {
	border: 1px solid;
	border-collapse: collapse;
	line-height: 150%;
    width: 100%;
}
.data_table .item_td{
    background-color: #eeeeee;
    border-right: 1px solid;
}
.data_table .item_td,
.data_table .data_td,
.job_table .job_item,
.job_table .job_value{
    padding: 0.5em;
}
.data_table .item_td,
.data_table .data_td{
    border-bottom: 1px solid;
    box-sizing: border-box;
}
.data_table .data_td img {
	margin-left: 0.5em;
}
.data_table .data_td p {
	margin: 0;
}

body:not(#home):not(#omatsuri):not(#event):not(#s_event) #container .pr_img a[href^="https://lin"]::after {
	content: none;
}

/*動画コンテンツ*/
.yt { /* 動画をレスポンシブ表示、無駄な余白出さないようにパディング設定 */
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.yt iframe { /* 親要素内100%で動画を表示する */
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
.yt_video { /* 親要素内100%でサムネイル画像を表示する */
	position: absolute;
	width:100%;
	height:auto;
	top:0;
}
.yt_video img { /* 親要素内100%でサムネイル画像を表示する */
	width:100%;
	height:auto;
}
.yt_video::before { /* FontAwesomeで再生ボタンを画像上に。あっても無くても可 */
position: absolute;
  font-family: "Font Awesome 5 Brands";
  content: "\f167";
  color: #fff;
  background: #fc0d1c;
  padding: 15px 30px;
  font-size: 150%;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  opacity: .90;
  transition: .5s;
  border-radius: 8px;
  font-weight: 400;
}
}
.yt_video{ /* ホバー時にカーソル変える */
	cursor: pointer;
}


/****** 加盟店一覧(#rel) ******/
#rel ol{
	padding-left: 20px;
	}
#rel ol li{
	margin-bottom: 5px;
	}


/******　オンラインショッピング　******/
#onlineShopping .left_td ul li::before{
	content: "■";
	margin-right: 5px;
	color: #ff0000;
	}


/****** 調経(#chokei) ******/
#chokei ul{
	margin-bottom: 10px;
	}
#chokei ul li{
	clear: left;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px dotted #ccc;
	overflow: hidden;
	}
#chokei ul li:last-child{
	border-bottom: none;
	margin-bottom: 0;
	}
#chokei ul li .chokei_logo,
#chokei ul li .item_img{
    text-align: center;
    width: 54px;
	float: left;
}
#chokei ul li .item_img{
    width: 90px;
}
#chokei ul li .item_img img{
    height: 54px;
    margin: 0;
}
#chokei ul li .item_title{
	font-size: 14px;
    line-height: 140%;
    padding: 0 10px;
	margin-left: 145px;
}


/****** ものづくりデータベース(#scidb) ******/
#scidb div.right_td h3{
	margin-top: 0;
	}
#scidb table caption{
	text-align:left;
	font-size: 1.1rem;
	font-weight: bold;
	}
#scidb h3,
#scidb table caption{
	margin-bottom: 8px;
	}
#scidb table,
#scidb div.right_td div{
	margin-bottom: 20px;
	}
#scidb table{
	border-collapse: collapse;
	width: 100%;
    }
#scidb table th,
#scidb table td{
	border: 1px solid;
	padding: 5px 8px;
	}
#scidb table th{
	background-color: #eff5ff;
	}


/******* 事業所概要(#shopDetail) ******/
.data_table .data_td{
	word-break: break-all;
	}
.data_table .data_td.participate li {
	display: inline-block;
	width: 65px;
	font-size: 0.6rem;
	border-radius: 5px;
	margin-right: 0.8em;
	text-align: center;
	box-sizing: border-box;
	vertical-align: middle;
	line-height: 1.6;
}
.data_table .data_td.participate li img {
	width: 30px;
    height: 30px;
	display: block;
	margin: 0.5em auto 0;
	object-fit: contain;
}

/* 交通アクセス */
.access_content .originalMap img{
	max-width: 100%;
	}
.data_td iframe, #access iframe{
    width: 100%;
    height: 450px;
    border: none;
}

/* 支払い方法 */
#shopDetail .payM-check {
	display: none;
}
#shopDetail .paymentMethods {
	display: block;
	/* margin-bottom: 15px; */
}
#shopDetail .paymentMethods::after {
	box-sizing: border-box;
	content: "\f0fe";
	font-family: "Font Awesome 5 Free";
	padding: 5px 10px 5px 3.4px;
	font-weight: 400;
	font-size: 1rem;
	vertical-align: middle;
	margin-left: 10px;
}
#shopDetail .payM-check:checked + .paymentMethods {
	border-bottom: 1px solid;
    padding-bottom: 5px;
    margin-bottom: 1px;
}
#shopDetail .payM-check:checked + .paymentMethods::after {
	content: "\f146";
}
#shopDetail .payM-content {
	height: 0;
	opacity: 0;
	padding: 0 10px;
	transition: .5s;
	visibility: hidden;
}
#shopDetail .payM-check:checked + .paymentMethods + .payM-content {
	height: 100%;
	opacity: 1;
	padding: 10px;
	visibility: visible;
    margin-bottom: 15px;
}
#shopDetail #payM-qrcode .paymentMethods,
#shopDetail #payM-qrcode.payM-check:checked + .paymentMethods + .payM-content {
    margin-bottom: 0;
}
#shopDetail .payM-content li {
	display: inline-block;
	margin-right: 5px;
}
#shopDetail .payM-content li:not(:last-child)::after {
    content: "／";
    margin-left: 5px;
}
#shopDetail .payM-content li:last-child{
    margin-right: 0;
}

/* 基本情報下部　外部リンク */
.goChofuds a,
.goMonodukuri a,
.job_list_link a,
.goOmiyage,
.goSpecial a,
.goCosite a,
.job_list_link a{
	padding: 8px 10px;
	display: block;
	border: 1px solid #ccc;
	border-radius: 8px;
	margin: 10px 0;
	text-decoration: none;
	text-align: center;
	}
.goCosite a img{
    height: 1.5rem;
    vertical-align: middle;
	margin-right: 5px;
	}


/****** 求人(#job) ******/
.job_content h3 {
    font-weight: normal;
    }
#job .job_content p{
	margin-bottom: 5px;
	}
#job .job_content p img{
	max-width: 100%;
	height: auto;
	}
.job_table{
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 30px;
}
.job_table td{
    border-collapse: collapse;
    vertical-align: top;
    padding-left: 5px;
    padding-right: 5px;
}


/******　関連リンク(#link)　******/
.link_content{
	margin-left: 20px;
	}
.link_content li {
    list-style-type: square;
    margin-bottom: 1.3em;
}


/****** サイドメニュー(.left_td) ******/
.left_td .menu_std{
	overflow: hidden;
    margin-top: 0;
	}


/****** footer (#footer) ******/
#footer {
	padding-top: 15px;
}
footer,
#copyright{
    text-align: center;
    background: #6f3b1b;
}
footer,
#copyright,
#footer li a{
    color: #fff;
}
#footer li {
	display: inline-block;
	margin: 5px 15px;
}
footer .snsLink {
	font-size: 22px;
}
#copyright{
    font-size: 13px;
	}


/****** WEB ICON ******/
.headblock_1page::before,
.headblock_login::before,
.headblock_access::before,
.headblock_tel::before,
.footer_tel::before,
#scidb h3::before,
#scidb table caption::before,
.box p.text_info::before,
p.gotoList::before,
p.attention::before,
.cat_list ul li a::before,
.cpn_notes::before,
.left_td dl.menu.blogbox dd::before,
#footer ul:not(.snsLink):not(#copyright) li::before,
body.freeshop #unit_side .sideBox.shopSearch li::before,
body.freeshop #unit_side .sideBox.project li::before,
body.freeshop #unit_side .sideBox.chokei li:not(:first-child)::before,
.neighbor h3 a::before{
	font-family: "Font Awesome 5 Free";
    margin-right: 0.2em;
}
.box p.text_info::before,
p.gotoList::before{
    margin-right: 0;
    margin-left: 0.2em;
    }
.cat_list ul li a::before,
.headblock_access::before,
.headblock_tel::before,
.headblock_1page::before,
.headblock_login::before,
.footer_tel::before,
p.attention::before,
.cpn_notes::before,
#footer ul:not(.snsLink):not(#copyright) li::before,
body.freeshop #unit_side .sideBox.chokei li:not(:first-child)::before,
.neighbor h3 a::before{
	font-weight: 600;
    }
.headblock_login::before {
	content: "\f2f6"; /* sign-in-alt */
    }
.headblock_access::before {
	content: "\f54b"; /* shoe-prints */
	transform: rotate(-90deg);
	float: left;
    }
.headblock_tel::before,
.footer_tel::before {
	content: "\f87b"; /* phone-square-alt */
    }
#scidb h3::before,
#scidb table caption::before{
	content: "\f085"; /* fa-cogs */
	}
p.attention::before{
	content: "\f071"; /* exclamation-triangle */
	}
.cpn_notes::before {
	content: "\f3ff"; /*ticket-alt*/
    }
body.freeshop #unit_side .sideBox.shopSearch li::before,
body.freeshop #unit_side .sideBox.project li::before{
	content: "\f152"; /* caret-square-right */
    }
.box p.text_info::before,
p.gotoList::before{
    content: "\f35a"; /* arrow-alt-circle-right */
	}
body.freeshop #unit_side .sideBox.chokei li:not(:first-child)::before,
.neighbor h3 a::before{
	content: "\f0a9"; /* arrow-circle-right */
	}
.cat_list ul li a::before{
	content: "\f138"; /* chevron-circle-right */
}
#footer ul:not(.snsLink):not(#copyright) li::before{
    content: "\f0da"; /* caret-right */
	}
.left_td dl.menu.blogbox dd::before {
	content: "\f044";
	margin-right: 5px;
	margin-left: 5px;
	font-weight: 600;
	font-size: 0.8rem;
}
body:not(#home):not(#omatsuri):not(#event) #container #sns.block_table a[href^="https://"]::after{
    content: none;
}

/*media Queries ブレイクポイント　PC対応用
----------------------------------------------------*/
@media print , screen and (min-width: 741px) {
.pc_none {
	display: none;
	}

.attn_box {
    text-align: center;
}

.headcat ul {
  width: 1000px;
  margin: 0 auto;
}    
    
 /****** main ******/
#mainContents {
	margin-top: 0.8em;
} 
/* 店舗名(#headblock) */
#headblock{
	overflow: hidden;
	} 
#headblock .headblock_tel{
	margin-bottom: 3px;
	}
/*枠*/
.block_table .right_td,
.block_table .left_td{
	display: table-cell;
	padding-top: 0;
	} 
.block_table .right_td{
	padding-top: 0;
	}   
.box .pr_img{
	float: none;
	}
.pr_img img{
	float: left;
	}
#mainArticle figure {
	float: left;
	clear: left;
    }
#mainArticle figure img{
    width: 700px;
    }
#mainArticle figure img.resizeImg{
    max-width: 320px;
    max-height: 320px;
    margin-right: 1em;
    height: auto;
    width: auto;
    }
/*ものづくりデータベース*/
#scidb table th{
	width: 30%;
	}
/******footer******/
.footer_tel::before{
    margin-left: 2em;
    }
}

/*media Queries ブレイクポイント　スマホ対応用
----------------------------------------------------*/
@media screen and (max-width: 740px) {

.sp_none{
	display: none;
	}
body #wrapper{
	width: 100%;
	box-sizing: border-box;
	}
main {
	margin: 0 0.5em;
}
#head,
#head ul{
	width: 99%;
	overflow: hidden;
	}
#head_system,
#unit_container,
#headblock,
#headblock .headblock_access,
#mainArticle,
.block_table,
.block_table .right_td{
	max-width: 740px;
	width: 100%;
	}
div.unit_special,
div.unit_news{
	width: 100%;
    box-sizing: border-box;
	}
#head_system,
.headblock_1page,
.headblock_login,
#head_system_lower{
	display: none;
	}
#headblock td,
table.pr_img,
table.data_table td,
table.data_table th,
#scidb table th,
#scidb table td{
	display: block;
	float: none;
	}
#head_system{
	margin-bottom: 20px;
	}
#headblock .headblock_name {
    font-size: 1.5rem;
    }
#headblock .tel_info{
	clear: both;
	}
#headblock .headblock_access{
	margin-bottom: 5px;
	}
#headblock .headblock_access, #headblock .headblock_tel {
	width: 49%;
	float: left;
	margin: 0 0 0.5em;
}
    
/******　Special　******/
/*　ホットニュース　*/
.unit_news{
	clear: both;
}
/*　スペシャルコンテンツ　*/
.unit_special.ticket .unit_inner{
	background: url("/images/unit/icon_hanken.png") no-repeat 3% center;
	background-size: 3rem;
	}
/*.unit_special.scratch .unit_inner{
	background: url("/images/unit/icon_scratch.png") no-repeat 1% center;
	background-size: 5rem;
	}*/ 

/*****　本文　*****/
#mainArticle .pr_img{
	width: 99%;
	}
#mainArticle .pr_img img{
	text-align: center;
	max-width: 100%;
	display: block;
    margin-right: 0;
	}
#mainArticle .title{
	font-weight: bold;
	padding: 5px 0;
	width: 100%;
	}
.box {
	margin: 1em 0;
}
/*　事業所詳細＆求人＆ものづくり（table設定）　*/
.data_table,
.data_table .item_td,
.data_table .data_td
/*.job_table,
.job_table .job_item,
.job_table .job_value*/{
	width: 99%;
	border: none;
	}
.data_table .data_td,
.job_table .job_value{
	padding: 0.5em 0.5em 1.5em;
    line-height: 1.7;
	}
.data_table .item_td,
.job_table .job_item{
	border: 1px solid;
	padding-left: 5px;
	}
.data_td iframe,
#access iframe{
	height: 300px;
	}
#tabpage h2{
    font-size: 18px;
	}
.job_table{
    font-size:14.5px;
    width:100%;
    border:solid 1px;
    border-collapse: collapse;
    line-height:150%;
    background-color:#ffffff;
    margin-bottom:30px;
}
.job_table td{			
    border:solid 1px;
    border-collapse: collapse;
    background-color:#ffffff;
    vertical-align:top;
    padding-left:5px;
    padding-right:5px;
}
.job_table .job_item{
    background-color:#eeeeee;
    width:100px;
}
/*ものづくりデータベース*/
#scidb table td{
	border: none;
	}
#scidb table th{
	padding-bottom: 3px
	}
#scidb table td{
	padding-bottom: 13px;
	}
#scidb table caption{
	}

/******　左メニュー　******/
.side_info{
    display: none;
}

/******footer******/
#footer{
        width: 100%;
    }
.unit_footer .footer_tel{
	display: block;
	}
#footer #copyright ul li{
	line-height: 100%;
	font-size: 0.7rem;
	}

}

/*media Queries ブレイクポイント　タブレット対応用
----------------------------------------------------*/
@media screen and (max-width: 645px) {
    
/*　スペシャルコンテンツ　*/
.unit_special .unit_inner p{
	line-height: 1.5rem;
	}

}

/*media Queries ブレイクポイント　極小スマホ対応用
----------------------------------------------------*/
@media screen and (max-width: 400px) {

.spnone{
	display: none;
	}
.pcnone{
	display: block;
	}
/*求人*/
#job .job_content p span{
	font-size: 0.75rem;
	color: #ff0000;
	}
    
}

/*印刷見切れ対策
----------------------------------------------------*/
@media print {
/*body,
.box {
    overflow: visible!important;
	}
.box{
	page-break-inside: avoid;
	}
.unit_special .sp-label::after{
    content: none;
    }
.unit_special .sp-content {
	height: 100%;
	opacity: 1;
	padding: 10px;
	visibility: visible;
}
   */
body {
  -webkit-print-color-adjust: exact;
}
#page-top,
.social-media li:nth-child(2){
    display: none;
    }
#shopDetail .paymentMethods::after{
    content: none;
    }
#shopDetail .payM-content {
	height: auto;
	opacity: 100;
	visibility: visible;
}
#shopDetail .payM-check + .paymentMethods {
	border-bottom: 1px solid #000A02;
	padding-bottom: 5px;
	margin-bottom: 1px;
}
    
}