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

:root {
	--corporate-color: #0073c0;
	--sub-corporate-color: #0073c0;
	--active-color: #e8f6fd;
	--textLink-color: #333;
	--caution-color: #db2100;
	--disable-bg-color: #f5f5f5;
	--disable-font-color: #bbb;
}

.contents {
  align-items: center;
  width: 1024px;
  margin: 20px auto 40px auto;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
}

.page_ttl{
  display: block;
  background-color: var(--corporate-color);
  font-size: 2.6rem;
  line-height: 1;
  color:#fff;
  font-weight: bold;
  padding: 11px 20px;
  margin-bottom: 32px
}

.wrap{
  padding: 50px 40px 40px 40px;
  border: 1px solid #E5E5E5;
  border-radius: 10px;
  margin-top: 40px;
}
.hatena_icon{
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url(../images/hatena_icon.svg);
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
}
.hatena_icon:hover{
	cursor: pointer;
}
.section{
  margin-bottom: 56px;
}
.section:last-child{
  border-bottom: none;
  margin-bottom: 0;
}


/* 見出し */
.section_ttl{
  font-size: 2.1rem;
  line-height: 1;
  margin-bottom: 20px;
  position: relative;
  font-weight: 600;
}
.section_ttl_icon{
  width: 40px;
  margin-right: 10px;
  vertical-align: middle;
}

/* ボタン */
.line-btn {
  display: inline-block;
  position: relative;
  padding: 11px 65px 11px 30px;
  border: 1px solid #c3c3c3;
  border-radius: 4px;
  transition: border-color 0.3s, background-color 0.3s;

  &.line-btn--caution {
	color: var(--caution-color);
  }
}
/* ボタン内矢印 */
.line-btn::before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  right: 10px;
  background: var(--corporate-color);
  border-radius: 50%;
  transform: translateY(-50%);
}
.line-btn::after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  position: absolute;
  top: 50%;
  right: 16px;
  border-top: 2px solid white;
  border-right: 2px solid white;
  transform: translateY(-50%) rotate(45deg);
}
/* ボタンhover効果 */
.line-btn:hover {
  border-color: var(--corporate-color);
  background-color: #f2fafe;
}
.webguide_section{
	display: flex;
    gap: 20px;
    justify-content: center;
}
.section_btn{
  margin-top: 24px;
  text-align: center;
}


/* モーダルpc */
/*モーダルTEL関係*/
.tell_body{
	overflow:hidden;
	width:96%;
	max-width:560px;
	padding:2% 2% 2% 2%;
	margin:0 auto;
	}
.tell_body_head{
	display:table;
	width:100%;
	margin-bottom:0.5rem;
	}
.tell_body_title{
	width:75%;
	float:left;
	font-size:1.7rem;
	font-weight:bold;
	}
.tel_body_out{
	overflow:hidden;
	width:15%
	float:right;
	}
.tell_body_time{
	overflow:hidden;
	width:100%;
	margin-bottom:0.5rem;
	}
.tell_body_uke{
	overflow:hidden;
	width:100%;
	margin-bottom:1rem;
	}
.tell_body_main{
	overflow:hidden;
	width:100%;
	max-width:600px;
	}
.tell_body_main p{
	overflow:hidden;
	margin-right:2%;
	float:left;
	height:50px;
	display:table-cell;
	vertical-align:middle;
	padding:0 3%;
	background-color:#dcf4ff;
	text-align:center;
	}
.tell_body_main p span{
	height:50px;
	display:table-cell;
	vertical-align:middle;
	table-layout: fixed;
	font-size:1.4rem;
	padding:0 0.5rem;
	}
.tell_body_main ul{
	/*overflow:hidden;*/
	width:59%;
	float:left;
	/*height:60px;*/
	margin:0 0 3% 3%;
	}
.tell_body_main ul li{
	display:table;
	/*overflow:hidden;*/
	width:100%;
	float:left;
	height:21px;

	}
.tell_body_main ul li span{
	/*overflow:hidden;*/
	display:table-cell;
	vertical-align:middle;
	text-align:center;
	table-layout: fixed;
	}

/* モーダル1 */
.modal_content3 {
  /* position: relative; */
  display: none;
  background: #FFF;
  padding: 1.5rem 1.5rem;
  margin: 40px auto;
  border: 0px solid #aaa;
  border-radius: 10px;
  max-width: 560px;
}

.modal_head{
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}
.modal_ttl{
  font-size: 1.7rem;
  font-weight: 600;
}
.close_btn{
  width: 75px;
}
.modal_close{
  text-align: center;
}




/*モーダル2*/

.cam{
	overflow:hidden;
}
.cam dt{
	margin:10px 0 0 0 ;
	}

/*.cam dd{
	text-align:right;
	}*/

.lock {
    overflow:hidden;
}

.modal_content4 {
    /* position:relative;
    display:none;
    margin:30px; */
    padding:1.5rem 1.5rem;
    border:0px solid #aaa;
    background:#fff;
	max-width:560px;
	border-radius: 10px;      /* 角丸の指定 */
}

.modal_content4 p {
	line-height: 1;
}

.modal_overlay {
    z-index:10001;
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:120%;
	background: rgb(128,128,128); /* または background-color: rgb(128,128,128); */
  	background: rgba(128,128,128,0.6);
	opacity: 0.6;
    filter: alpha(opacity=60);
  	-ms-filter: "alpha(opacity=60)";
    -khtml-opacity: 0.6;
    -moz-opacity: 0.6;  }

.modal_wrap {
    z-index:10002;
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    overflow:auto;
}

.modal_open4 {
    text-decoration:none;
	cursor:pointer;
}

.modal_open:hover {
    cursor:pointer;
    color:#f00;
}


.modal_close_pr3 {
	float:right;
	width:52%;
	max-height:30px;
	margin:0 4%;
	}

.modal_close:hover {
    cursor:pointer;
    color:#f00;
}


/* モーダルpc */
.tell_body04_pc{
	max-width:806px;
	padding:1.5rem;
	overflow:hidden;
	/* width:86%; */
	}
.tell_head_pc04{
	display:flex;
	justify-content: space-between;
	width:100%;
	margin-bottom: 12px;
	}
.tell_head_title_pc04{
	font-size:1.8rem;
	font-weight: 600;
	}

.tell_body04_pc_out{
	overflow:hidden;
	margin-bottom:1rem;
	padding-bottom:1rem;
	border-bottom: 1px #666 solid;
	}
.tell_head_pc4_mb{
	font-size:1.5rem;
	margin-bottom:1rem;
	padding-top:0.5rem;
	margin-bottom:1rem !important;
	}
.color_b{
	color: var(--corporate-color);
}
.tell_body04_pc_midashi_out{
	display:flex;
	width:100%;
	margin-bottom:1rem;
	}
.tell_body04_pc_midashi{
	display:inline-block;
	padding:1rem 0.2px 1rem 0.2px !important;
	background-color:#dcf4ff !important;
	text-align:center !important;
	width:122px !important;
	height: 40px;
	}
.tell_body04_pc_midashi span{
	text-align:center;
	font-size: 1.4rem;
	}

.tell_body04_pc_midashi02{
	display: flex;
	margin-left: 10px;
	justify-content: space-between;
    width: 75%;
	padding-bottom:0.3rem;
	align-items: center;
}
.tell_body04_pc_midashi03{
	display: flex;
	margin-left: 10px;
	justify-content: space-between;
    width: 75%;
	padding-bottom:0.3rem;
}

.tell_body04_pc_midashi02 li span {
	display:table-cell;
	padding:0 2.6rem;
	font-size:1.5rem;
	font-weight: bold;
	}
.tell_body04_pc_midashi03 li span {
		display:table-cell;
		padding:0 2.6rem;
		font-size:1.5rem;
		font-weight: bold;
		}
.tell_boder{
	color:#1eaaea;
	border: 1px #1eaaea solid;
	font-weight:normal !important;
	}
.tell_head_pc4_mb02{
	font-size:1.3rem;
	margin-bottom:1.2rem;

	}
.tell_pc04_foot a{
	display: inline-block;
	font-size: 12px;
	position: relative;
	padding-left: 20px;
	right: 0;
	text-align: right;
	float: right;
	}
.tell_pc04_foot a:hover{
	text-decoration: underline;
}

.tell_pc04_foot a::before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    position: absolute;
    top: 50%;
    left: 0px;
    background: var(--corporate-color);
    transform: translateY(-50%);
}
.tell_pc04_foot a::after {
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    position: absolute;
    top: 50%;
    left: 2px;
    border-top: 2px solid white;
    border-right: 2px solid white;
    transform: translateY(-50%) rotate(45deg);
}

/*  20200617 */
p.add_navi{
	padding-left: 113px;
    position: relative;
    margin-top: 10px;
    font-size: 1.5rem;
	font-weight: bold;
}

.modal_content4 p.add_navi::after{
	content: "";
	display: inline-block;
    width: 40px;
    height: 41px;
    background-image: url(../images/lg16-67401.gif);
	background-size: contain;
    background-repeat: no-repeat;
	vertical-align: middle;
	margin-left: 5px;
}


.modal_content4 p.note_navi{
	width: 300px;
	font-size: 1.3rem;
	line-height: 1.6rem;

}

.navDial_note {
	margin-bottom: 6%;
	letter-spacing: .03em;
	line-height: 1.6;
	box-sizing: border-box;
}

.mt30{
	margin-top: 30px;
}



/*========= モーダル表示のためのCSS ===============*/

/*モーダルを開くボタン*/
.modal-open,.modal-open2{
	cursor: pointer;
}
/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container,.modal-container2{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	background: rgba(0,0,0,50%);
	padding: 40px 20px;
	overflow: auto;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
    box-sizing: border-box;
}
/*モーダル本体の擬似要素の指定*/
.modal-container:before,.modal-container2:before{
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}
/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active,.modal-container2.active{
	opacity: 1;
	visibility: visible;
	z-index: 1000;
	transform: translate(0%,0%);
}

.modal-cts{
	position: fixed;
	top: 5%;
	left: 0%;
	width: 100%;
	height: 100%;
	transform: translate(0%, calc(0% + 20px));
}

.modal-container.active .modal-cts,.modal-container2.active .modal-cts{
	animation-name:modalUpAnime;
	animation-duration:.5s;
	animation-timing-function:ease-in-out;
	animation-fill-mode:forwards;
	}

	@keyframes modalUpAnime{
	  from {
		opacity: 0;
	  transform: translateY(20px);
	  }

	  to {
		opacity: 1;
	  transform: translateY(0);
	  }
	}

/*モーダル枠の指定*/
.modal-body{
	position: relative;
	display: inline-block;
	vertical-align: middle;
	max-width: 640px;
	width: 90%;
	margin-bottom: 3rem;
}
.modal-body2{
	position: relative;
	display: inline-block;
	vertical-align: middle;
	max-width: 806px;
	width: 100%;
}
/*モーダルを閉じるボタンの指定*/
.modal-close,.modal-close2{
	position: absolute;
	display: flex;
    align-items: center;
    justify-content: center;
	top: 20px;
	right: 40px;
	width: 40px;
	height: 40px;
	font-size: 40px;
	color: #fff;
	cursor: pointer;
}
/*モーダル内のコンテンツの指定*/
.modal-content{
	background: #fff;
	text-align: left;
	padding: 15px 15px 55px 15px;
	font-size: 0.8em;
	line-height: 1.6;
	border-radius: 10px;
}

.modal-container h2,.modal-container2 h2{
	font-size: 1.1em;
    font-weight: bold;
    margin: 0px 0 25px 0;
	padding: 10px 0;
	border-bottom: 4px solid #0069B5;
}

.modal-container p,.modal-container div,.modal-container2 div{
	/* margin-bottom: 1em; */
}
.modal-container li,.modal-container2 li{

}
.modal-container p span,.modal-container2 p span{
	font-weight: 600;

}

.modal-body div.modal-close:last-child,.modal-body2 div.modal-close2:last-child{
	position: relative;
	width: auto;
	height: auto;
	top: 0;
	right: 0;
}

.modal-body div.modal-close:last-child img,.modal-body2 div.modal-close2:last-child img{
	position: absolute;
	bottom: 30px;

}

.section_btn a:not(:first-child) {
	margin-left: 50px;
	/* color: #ff2800; */
}

.link_list_item{
  position: relative;
  padding-left: 24px;
  margin-bottom: 13px;
  line-height: 1;
}
.link_list_item:last-child{
  margin-bottom: 0;
}
.link_list_item span{
  font-size: 1.2rem;
  letter-spacing: 0;
}
.link_list_item:hover{
  text-decoration: underline;
}

/* 頭の矢印 */
.link_list_item::before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 0px;
  background: var(--corporate-color);
  border-radius: 50%;
  transform: translateY(-50%);
}
.link_list_item::after {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  position: absolute;
  top: 50%;
  left: 5px;
  border-top: 2px solid white;
  border-right: 2px solid white;
  transform: translateY(-50%) rotate(45deg);
}
