@charset "utf-8";
/* CSS Document */


/* ページの初期設定 */
html,body {
	width:100%;
	position: relative;
}

html{
	min-height:100%;
	font-size: 10px/*62.5%*/!important;/*=10px ベースのフォントサイズ*/
	background-color: #FFF;
}

body {	
	min-height:100vh;	
	line-height: 1.4;
	font-size: 1.4rem;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:var(--clr-bk);
	text-align: center;
	position:relative;
	
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
	
	/*-webkit-text-size-adjust: none;
	text-size-adjust: none;*/
	color:#333!important;
}

/* 画像の初期設定 */
img {
	width : 100%;
	height: auto;
	vertical-align: top;
	border: none;
}


/* リンクの初期設定 */
a {
	color: var(--clr-g);
	font-weight:bold;
	text-decoration: none;
	vertical-align: middle;
}


/*レイアウト*/
#wrapper {
	width: 100%;
	padding-top: 50px;
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    min-height: 100%;
	box-sizing: border-box;
	position: relative;
	text-align: left;
}
@media (max-width: 959px) {
	#wrapper {
		padding-top: 40px;
	}
}
@media (min-width: 960px) {
	#wrapper {
		padding-top: 50px;
	}
}
#wrap {
	width : 100%;
	box-sizing: border-box;
	/*border-radius:10px;*/
	position: relative;
}


.ui-dialog{
	z-index:100001;
}


/*/// header ///
//////////////////////////////////////////////// */
#header{
	width: 100%;
	position: fixed;
	top : 0;
	left: 0;
	box-sizing: border-box;
	background-color: #00957f;
	color: #FFF;
  	z-index: 5;
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
}
@media (max-width: 959px) {
  #header{
	height: 40px;
    padding: 0 10px;
  }
}
@media (min-width: 960px) {
  #header{
	height: 50px;
    padding: 0 20px;
  }
}
#header #logoArea{
	display : -webkit-inline-box;
	display : -ms-inline-flexbox;
	display : -webkit-inline-flex;
	display : inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	vertical-align: middle;
}
@media (max-width: 959px) {
	#header #logoArea{
		width : 40px;
		height: 40px;
	}
	#header #logoArea .logo{
		height: 30px;
	}
}
@media (min-width: 960px) {
	#header #logoArea{
		width: 40px;
		height: 50px;
	}
	#header #logoArea .logo{
		height: 40px;
	}
}
#header #logoArea .ttl{
  padding-left: 10px;
  color: #FFF;
  font-weight: bold;
  font-size: 1.0rem;
}

#header .userMenu {
	display: inline-block;
	cursor:pointer;
	user-select: none;
}
@media (max-width: 959px) {
	#header .userMenu {
		line-height: 40px;
	}
	#header .userMenu .name {
		display: none;
	}
}
@media (min-width: 960px) {
	#header .userMenu {
		line-height: 50px;
	}
}
#header .userMenuIn {
	position: absolute;
	right: 10px;
}
#header .userMenuList {
	box-shadow: 0 2px 5px 0 rgb(0 0 0 / 20%);
	cursor: default;
}
#header .userMenuList,
#header .userMenuList li:last-child,
#header .userMenuList li:last-child a {
	border-radius: 0 0 5px 5px;	
}
#header .userMenuList li{
	border-left  : 1px solid #DDD;
	border-right : 1px solid #DDD;
	background-color:#FFF;
}
#header .userMenuList li,
#header .userMenuList li a{
	min-width:120px;
	line-height: normal;
	display:block;
	color:#333;
	box-sizing: border-box;
}
#header .userMenuList li a{
	padding:10px;
	transition: all 0.3s ease;
}
#header .userMenuList li a{
	width: 100%;
	display : -webkit-inline-box;
	display : -ms-inline-flexbox;
	display : -webkit-inline-flex;
	display : inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
#header .userMenuList li a:hover {
	color: #00957f;
	text-decoration: none;
}
#header .userMenuList li a .icS { 
	transition: all 0.3s ease;
}
#header .userMenuList li a:hover .icS { 
	background-color: #00957f;
}
#header .userMenuList .li_bg_logout{
	padding: 5px;
	background-color: #99d5cc;
}
#header .userMenuList .li_bg_logout a{
	padding: 5px 5px 5px 10px;
	background-color: #FFF;
	border-radius: 5px;
	box-sizing: border-box;
}
#header .userMenuList .li_bg_copy{
	padding: 2px 0;
	font-size: 1.0rem;
	color: #e5f4f2;
	background-color: #00957f;
	text-align: center;
	line-height: 1.2;
}


/*/// contentns ///
//////////////////////////////////////////////// */
.contents{
	margin: 0 auto;
	text-align:center;
}
@media (max-width: 959px) {
 .contents{
	 width: 100%;
  }
}
@media (min-width: 960px) {
 .contents{
	 width: 980px;
	 padding-bottom: 50px;
  }
 .kanri.contents{
	 width: 100%;
  }
}

/*/// footer ///
//////////////////////////////////////////////// */
#footer{
	width:100%;
	position: fixed;
	bottom: 0;
	font-size:1.4rem;
	line-height:24px;

	color:#fff;
	background-color: rgba(255, 255, 255, 0.1); /* 背景色 */
	border: 1px solid rgba(255, 255, 255, 0.4); /* ボーダー */
	border-right-color: rgba(255, 255, 255, 0.2);
	border-bottom-color: rgba(255, 255, 255, 0.2);
	-webkit-backdrop-filter: blur(20px); /* ぼかしエフェクト */
	backdrop-filter: blur(20px);
	box-shadow: 0 5px 20px rgba(200, 200, 230, 0.5); /* 薄い影 */
	z-index: 5;
}


/*/// ダイアログ ///
//////////////////////////////////////////////// */
.dialog_sf_theme.ui-dialog {
	padding:0;
	overflow: inherit;
	border-radius: 0;
	border: 0;
}


/*/// ツールチップ ///
//////////////////////////////////////////////// */
.ui-tooltip {	
	position: absolute;
	z-index: 3;
}
body .ui-tooltip {
	padding: 8px;
	border-width: 2px;
	color: var(--clr-w);
	background: var(--clr-bk5);
	letter-spacing: 1px;
	border-radius: 4px;
	border: 0;
	box-shadow: none;
	font-size: 1.2rem;
}



/*/// pagerS（ページャー） ///
//////////////////////////////////////////////// */
.pagerS {
  text-align: center;
  font-size: 0;
}
.pagerS span,
.pagerS a {
  width : 25px;
  height: 25px;
  margin: 0 2px;
  display: inline-block;
  line-height: 25px;
  text-align: center;
  border-radius: 25px;
  background: #e5f4f2;
  color: var(--clr-g);
  font-size: 1.4rem;
  text-decoration: none;
  position: relative;
  transition: all 0.3s ease;
  vertical-align: middle;
  font-family: 'Arial', sans-serif;
}
.kanri .pagerS span,
.kanri .pagerS a { background: #e6f0fb; color: var(--clr-b);}
.pagerS .current {
  background: var(--clr-g);
  color: var(--clr-w);
}
.kanri .pagerS .current { background: var(--clr-b);}
.pagerS .current em {
  font-style: normal;
  color: var(--clr-w);
}
.pagerS a:hover,
.pagerS a:hover span,
.pagerS span:hover {
  background: var(--clr-g);
  color: var(--clr-w);
}
.kanri .pagerS a:hover,
.kanri .pagerS a:hover span,
.kanri .pagerS span:hover {
  background: var(--clr-b);
}
.pagerS .pager_prev,
.pagerS .pager_next {
  font-weight: bold;
  display: none;
}
.pagerS .pagecss .pager_prev,
.pagerS .pagecss .pager_next{
  display: inline-block;
}
@media only screen and (max-width: 959px) {
  .pagerS a,
  .pagerS span {
    display: none;
  }
  .pagerS .pager_prev,
  .pagerS .pager_next {
    display: inline-block;
    width: 40%;
    height: 50px;
    line-height: 50px;
    background: #eee;
    color: #fff;
    border-radius: 50px;
  }
  .pagerS .pager_prev::after {
    content: "最初へ";
  }
  .pagerS .pager_next::before {
    content: "最後へ";
  }
}

/* ページャー下部のログ表示を非表示にする */
[role='log'] { display: none;}


/*/// ttlS（ページタイトル） ///
//////////////////////////////////////////////// */
.ttlS{
	text-align: center;
	letter-spacing: 0.04em;
	line-height: 1;
}
.ttlS.type_s{
	width: 100%;
	padding: 2px 5px;
	margin-bottom: 10px;
	display: block;
	text-align: left;
	font-weight: bold;
	letter-spacing: 0.04em;
	line-height: 1;
	border-left: 5px solid;
	box-sizing: border-box;
	border-image: linear-gradient(to top, var(--clr-g), #00b15a) 1;
}
.kanri .ttlS.type_s{
	border-image: linear-gradient(to top, var(--clr-b), #0b88df) 1;
}
@media (max-width: 959px) {
	.ttlS{
		padding-bottom: 15px;
		font-size: 2.0rem;
	}
	.ttlS.type_s{
		font-size: 1.4rem;
	}
}
@media (min-width: 960px) {
	.ttlS{
		padding-bottom: 10px;
		font-size: 2.4rem;
	}
	.ttlS.type_s{
		font-size: 1.6rem;
	}
	.ttlS.type_s .btnS{
		font-size: 1.4rem;
	}
}



/*/// mustS（必須） ///
//////////////////////////////////////////////// */
.mustS{
	margin-right: 5px;
	padding: 0 3px;
	font-weight: normal;
	font-size: 0.8rem;
	color: #a51428;
	line-height: 14px;
	vertical-align: middle;
	border-radius: 2px;
	letter-spacing: 1px;
	display: inline-block;
	background-color:#fad2d7;
}

/*/// anyS（任意） ///
//////////////////////////////////////////////// */
.anyS{
	margin-right: 5px;
	padding: 0 3px;
	font-weight: normal;
	font-size: 0.8rem;
	color: #555;
	line-height: 14px;
	vertical-align: middle;
	border-radius: 2px;
	letter-spacing: 1px;
	display: inline-block;
	background-color:#DDD;
}

/*/// その他 ///
//////////////////////////////////////////////// */
.meishi_thumb{
	width:auto;
	height:auto;
	max-width:70px;
	max-height:80px;
}


/*/// ローディング ///
//////////////////////////////////////////////// */
#loader-bg,
#loader-bg2 {
	display: none;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: rgba(0,0,0,0.5);
	z-index: 1000;
}
#loader,
#loader2{
	max-width: 350px;
	display: none;
	text-align: center;
	color: #fff;
	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
	z-index: 1001;
}
#loader img,
#loader2 img{
	width: 100%;
	height: auto;
	display: inline-block;
}

/*/// ツールチップ ///
//////////////////////////////////////////////// */
.ui-tooltip {	
	position: absolute;
	z-index: 3;
}
body .ui-tooltip {
	padding: 8px;
	border-width: 2px;
	color: /*var(--clr-w)*/#fff;
	background: /*var(--clr-bk5)*/#000;
	letter-spacing: 1px;
	border-radius: 4px;
	border: 0;
	box-shadow: none;
	font-size: 1.2rem;
}


/*/// ページタイトル ///
//////////////////////////////////////////////// */
.k_titleS{
	margin-top: 40px;
	color: lightslategrey;
	font-size: 2.4rem;
	line-height: 1;
}


/*/// リストヘッダー ///
//////////////////////////////////////////////// */
.listHeadS{
	box-sizing: border-box;
    /*box-shadow: white 0 2px 0 inset;	*/
	background-color: #f5f5f5;
	border-top: 1px solid #DDD;
}
@media (max-width: 959px) {
	.listHeadS {
		padding: 5px 10px;
	}
	.listHeadS .btnS.typeSort {
		width: inherit;
		height: 30px;
		line-height: 30px;
		margin-left: 5px;
		padding: 0 10px;
	}
}
@media (min-width: 960px) {
	.listHeadS{
		height : 50px;
		padding: 10px 20px;
		/*border-radius: 10px 10px 0 0;*/
	}
	.listHeadS .typeSort {
		margin-left: 10px;
	}
}


/*/// 見出しタグ ///
//////////////////////////////////////////////// */
.tagS{
	margin-left: 5px;
	padding: 0 5px;
	display: inline-block;
	font-weight: normal;
    line-height: 1.5;
	letter-spacing: 1px;
    vertical-align: middle;
    color: #FFF;
    background-color: #c00;
    border-radius: 2px;
	box-sizing: border-box;
}
.tagS.tag_Fs { font-size: 0.7em;}
@media (max-width: 959px) {
	.btnS{
		width: auto;
		padding: 5px;
	}
}


/*/// 検索件数 ///
//////////////////////////////////////////////// */
.rtndata {
    font-size: 1.0rem;
}
.rtndata em {
    font-size: 1.2rem;
}

/*/// 絞り込みエリア ///
//////////////////////////////////////////////// */
.submitareaS{
	box-sizing: border-box;
	background-color: #e5f4f2;
}
.kanri .submitareaS{
	background-color: #f5f5f5;
}
@media (max-width: 959px) {
  .submitareaS{
    width : calc(100% - 20px);
    margin: 20px auto;
    padding: 20px;
    border-radius: 20px;
    box-sizing: border-box;
	}
}
@media (min-width: 960px) {
	.submitareaS{
		width : 100%;
		height: 80px;
		margin: 30px auto;
		border-radius: 100px;
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		text-align: center;
	}
	.kanri .submitareaS{
		width: 980px;
	}
}
.submitareaS .ttl{
	margin-right: 10px;
	font-weight: bold;
}
.submitareaS select{
  background-color: #FFF;
}
@media (max-width: 959px) {
  .submitareaS .submitarea_dl{
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
  }
  .submitareaS .submitarea_dl dd{
    -webkit-box-flex:1;
    -ms-flex:1 1 10%;
    flex:1 1 10%;
  }
  .submitareaS .submitarea_dl .ttl{
    width: 60px;
    margin-top: 10px;
  }
  .submitareaS .submitarea_dl .select_lbl{
    -webkit-box-flex:1;
    -ms-flex:1 1 10%;
    flex:1 1 10%;
  }
  .submitareaS .submitarea_dl select{
    width: 100%;
  }
  .submitareaS .submitarea_dl + .submitarea_dl{
    margin-top: 10px;
  }
}
@media (min-width: 960px) {
  .submitareaS .submitarea_dl dt,
  .submitareaS .submitarea_dl dd{
    display: inline-block;
    vertical-align: middle;
  }
  .submitareaS .submitarea_dl + .submitarea_dl{
    margin-left:15px; 
  }
}


/*/// checkmarkS ///
//////////////////////////////////////////////// */
.checkmarkS{
	margin-top: 50px;
	display: inline-block;
}
@media (max-width: 959px) {
	.checkmarkS{
		width : 150px;
		height: 150px;
	}
}
@media (min-width: 960px) {
	.checkmarkS{
		width : 200px;
		height: 200px;
	}
}
.checkmarkS img{
	width : 100%;
	height: auto;
  animation: zoomIn 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
@keyframes zoomIn {
  0% {
    transform: scale(0.8);
    opacity: 0;
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}


/*/// txt_compS ///
//////////////////////////////////////////////// */
.txt_compS{
	margin-top: 30px;
	font-size: 2.2rem;
	font-weight: bold;
	color: #00957f;
	display: inline-block;
}


/*/// meishidataS（名刺データ） ///
//////////////////////////////////////////////// */
.meishidataS{
	padding: 10px 20px;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
}
.meishidata_dlS{
	width: 180px;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}
.meishidata_dlS + .meishidata_dlS{
	margin-left: 10px;
}
.meishidata_dlS>dt,
.meishidata_dlS>dd{
	text-align: center;
}
.meishidata_dlS>dt{
	line-height: 30px;
	background-color: #b2dfd8;
	border-radius: 10px 10px 0 0;
	font-weight: bold;
}
.kanri .meishidata_dlS>dt{
	background-color: #b6d2f3;
}
.meishidata_dlS>dd{
	padding: 15px;
	box-sizing: border-box;
	border-radius: 0 0 10px 10px;
	background-color: #e5f4f2;
	-webkit-box-flex:1;
	-ms-flex:1;
	flex:1;
}
.kanri .meishidata_dlS>dd{
	background-color: #e6f0fb;
}
.meishidata_dlS .data_img {
	width : 150px;
	height: 106px;
	margin: 0 auto;
	position: relative;
	background-color: #CCC;
}
.meishidata_dlS .data_img img {
	width : auto;
	max-width : 150px;
	max-height: 106px;
	vertical-align: middle;
}

.meishidata_dlS .data_img .data_cancel{
	width : 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	display: block;
	position: absolute;
	top  : -10px;
	right: -10px;
	border-radius: 50%;
	box-sizing: border-box;
	background-color: #999;
	color: #FFF;
	font-size: 25px;
}
.meishidata_dlS .data_btn{
	margin-top: 10px;
}
.meishidata_dlS .data_btn .btnS{
	width: 100%;
}
@media (max-width: 959px) {
	.meishidata_dlS .data_btn .btnS{
		padding: 10px;
		font-size: 1.2rem;
	}
}
@media (min-width: 960px) {
	.meishidata_dlS .data_btn .btnS{
		padding: 10px 15px;
	}
}
.meishidata_dlS .data_day{
	margin-top: 10px;
	color: #999;
	line-height: 1;
}
@media (max-width: 959px) {
	.meishidata_dlS .data_day{
	    margin-top: 5px;
		font-size: 1.0rem;
		line-height: 1;
	}
}
@media (min-width: 960px) {
	.meishidata_dlS .data_day{
		font-size: 1.2rem;
	}
}