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

/* ----------------------------------
          　　　表示設定
------------------------------------- */
/* sp */
@media screen and (max-width: 767px) {
.sp-none {
	display: none;
}
}
/* sp-tab */
@media screen and (max-width: 1019px) {
.tab-none {
	display: none;
}
}
/* tab-pc */
@media screen and (min-width: 768px) {
.tab-pc-none {
	display: none;
}
}
/* pc */
@media only screen and (min-width: 1020px) {
.pc-none {
	display: none;
}
}


a[href^="tel:"] { cursor: default; }

/* ----------------------------------
          　　　画像
------------------------------------- */
img {
	max-width: 100%;
	height: auto;
	width: auto\9; /* ie8 */
}
.img-st01 li{margin:0 auto;
	text-align: center;
}

.img-st01 li p{
	text-align: left;
}
.img-st02 li{margin:0 auto;
	text-align: center;
}

.img-st02 li p{
	text-align: left;
}

.center{
	text-align: center;}
.right{
	text-align: right;}
.left{
	text-align: left;}
.aligncenter {
	display: block;
	text-align:center;
	margin: 0 auto;
}
/* tab-pc */
@media screen and (min-width: 768px) {

.alignright {
	float: right;
	padding-left: 1em;
}
.alignleft {
	float: left;
	padding-right: 1em;
}
}
/* sp */
@media screen and (max-width: 767px) {
.alignright,.alignleft {
	display: block;
	text-align:center;
	margin: 0 auto;
}
	
}


.img-st01,.img-st02{
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;

}
.fa-file-pdf,.fa-external-link-alt{
	padding:0 0.3em;
}

/* pc */
@media only screen and (min-width: 768px) {
.flex-box{
	display: flex;
	}
	.flex-img{
		width: 25%;
	}
	.flex-text{
		width: 70%;
		margin-left: 5%;
	}
.img-st01 li{
	width: 48%;
	padding: 2%;
}
	.img-st02 li{
	width: 24%;
	padding: 1%;
}
}

/* sp-tab */
@media screen and (max-width: 1019px) {
.flex-img{
		text-align: center;
	}	
}

/* ----------------------------------
          　見出し
-------------------------------------*/
.ttl01{
	width: 100%;
	background-size:100% auto;
	background-repeat: no-repeat;
}
.ttl1-img{
	width: 100%;
	height: 300px;
	margin: 0;
	padding: 0;
	background-repeat: no-repeat;
	background-size: cover;
}
#About .ttl1-img{
	background-image:url(../img/cont/ttl/ttl01-about.jpg);}
#Treat .ttl1-img{
	background-image:url(../img/cont/ttl/ttl01-treat.jpg);}
#Contactlens .ttl1-img{
	background-image:url(../img/cont/ttl/ttl01-contactlens.jpg);}
#Access .ttl1-img{
	background-image:url(../img/cont/ttl/ttl01-access.jpg);}
#Guide .ttl1-img{
	background-image:url(../img/cont/ttl/ttl01-gide.jpg);}
#Recruit .ttl1-img{
	background-image:url(../img/cont/ttl/ttl01-recruit.jpg);}
#Sitemap .ttl1-img{
	background-image:url(../img/cont/ttl/ttl01-sitemap.jpg);}


.ttl01 h1{
background-color: #2a82c5;
color: #fff;
text-align: center;
color: #fff;
padding: 0.5em 1.5em;
font-weight: 500;
font-size: 2.2em;
line-height: 0.8em;
}
.ttl01 h1 span{
	font-weight: 200;
	font-size: 0.4em;
}

.ttl02{
margin: 0 auto;
margin-bottom: 2em;
text-align: center;}

.ttl02 h2{
font-size: 1.8em;
position: relative;
display: inline-block;
color: #2a82c5;
padding: 0 55px;
}

.ttl02 h2:before,.ttl02 h2:after{
content: '';
position: absolute;
top: 50%;
display: inline-block;
width: 45px;
height: 2px;
border-top:double 4px #2a82c5;
border-bottom:solid 1px #2a82c5;
}

.ttl02 h2:before {left:0;}
.ttl02 h2:after {right: 0;}

.sec2 h3{
	font-weight: 500;
    background: #fff;
	font-size: 1.5em;
	border-top: 1px solid #2a82c5;
	padding:0.6em 1em;
	border-bottom: 3px solid #2a82c5; 
	margin: 1em 0;
}
.sec3 h4{
	font-weight: 500;
	font-size: 1.3em;
	padding:0.1em 0.6em;
	border-left: 8px solid #2a82c5; 
	margin: 0.8em 0;
}

/* sp-tab */
@media screen and (max-width: 1019px) {
.ttl1-img{
	height: 150px;
}
}
/* sp */
@media screen and (max-width: 767px) {
#pankuzu{padding: 0.5em 1em;}
.ttl01 h1{
font-size: 1.5em;
padding: 0.5em 1em;}

.ttl02 h2{
	font-size: 1.3em;
	}
.sec2 h3{
	font-size: 1.2em;
	padding:0.5em;
	}	
.sec3 h4{
	font-size: 1.1em;
	padding:0 0.5em;
	}	
}
/* ----------------------------------
          　　　余白
------------------------------------- */
.m-t10{
	margin-top:10px;}
.m-t20{
	margin-top:20px;}
.m-t30{
	margin-top:30px;}
.m-t140{
	margin-top:40px;}

.m-b10{
	margin-bottom:10px;}
.m-b20{
	margin-bottom:20px;}
.m-b30{
	margin-bottom:30px;}
.m-b40{
	margin-bottom:40px;}
.p-b50{
	margin-bottom:50px;}
.p-15{
	padding:15px;}
.p-0-15{
	padding:0 15px;}
.p-10{
	padding:10px;}

/* ----------------------------------
          　　　サイズ
------------------------------------- */
.w-20{
	width:20%;}
.w-30{
	width:30%;}
.w-40{
	width:40%;}
.w-50{
	width:50%;}
.w-60{
	width:60%;}
.w-70{
	width:70%;}
	
.w-80{
	width:80%;}
.w-90{
	width:90%;
	margin:0 auto;}
/* ----------------------------------
          　　　文字
------------------------------------- */
.colGB{
	color:#196e19;
	font-weight:500;}
.colRB{
	color:#FF0004;
	font-weight:500;}
.colbold{
	font-weight:500;}
.textBig{
	font-size:1.3em;}

.textMin{
	font-size:0.8em;}
.sec1 p{
	margin-bottom: 2em;
}
.marker-ye{
background: linear-gradient(transparent 70%, #fff7af 60%);}

.line{
    text-decoration: underline;
}

/* ----------------------------------
          　　　ボタン
------------------------------------- */

a.cp_btn {
display: block;
position: relative;
width: 230px;
padding: 0.8em;
text-align: center;
text-decoration: none;
color: #fff;
border:1px solid #eda02a;
background: #eda02a;
overflow: hidden;
z-index: 1 !important;
}
a.cp_btn:after {
content:"";
position: absolute;
top: 50%;
left: 50%;
height: 0;
width: 100%;
background : #fff;
opacity: 0;
transform: translateX(-50%) translateY(-50%) rotate(45deg);
transition: 0.3s;
z-index: -1;
}
a.cp_btn:hover {
color: #eda02a;
}
a.cp_btn:hover:after {
height: 350%;
opacity: 1;
}
a.cp_btn:active:after {
height: 450%;
opacity: 1;
}
/* ----------------------------------
          　　　背景色
------------------------------------- */
.bgcol-blue{
	background:#E9F7FF;}

/* ----------------------------------
          　　ボックス
------------------------------------- */
.caution{
	border: 1px solid #F9BBBC;
	background:#FCE3E3;
	padding: 1em;}

.caution2{
    color: #fff;
    font-weight: bold;
    text-align: center;
    margin-top: 2.5em;
    margin-bottom: 2em;
    font-size: 1.2em;
	background-color:#2a82c5;
    padding: 1em;}
/* ----------------------------------
          　　　リスト
------------------------------------- */
.disc {
	margin-left: 1em;
}
.disc li {
	list-style: disc;
}
.desimal{
	margin-left: 1em;	
}
.desimal li {
	list-style:decimal;}
.circle-inside {
	list-style: circle inside;
}
.list_basic01 li {
	margin-bottom: 4px;
}
.list_basic01 li:last-child {
	margin-bottom: 0;
}
.list_basic01 li .mark {
	position: absolute;
	left: 0;
	top: 0;
}
.list_basic02 li {
	margin-bottom: 1em;
}
/* ----------------------------------
          　　　dl
------------------------------------- */
.dl_basic01 dd {
	padding-bottom:1em;
	padding-left: 1.1em;
	border-bottom: 1px solid #ccc;
}
.dl_basic01 dt:first-child {
	border-top: 1px solid #ccc;
}
.dl_basic01 dt {
	font-weight: 500;
	position: relative;
	top: 0;
	left: 0;
	font-size:1.1em;
	padding-top: 0.5em;
	padding-left: 1.3em;
    margin-bottom: 0.8rem;
}
.dl_basic01 dt:before{
	content:''; 
	height:12px; 
	width:12px; 
	display:block; 
	position:absolute; 
	top:17px; 
	left:0px; 
	background-color:#2a82c5;
	box-shadow: 0 0 2px 2px rgba(255,255,255,0.2) inset
}
.dl_basic02{
    margin-bottom: 1.5em;
    background: #FFEBEB;
    padding: 1.5em;
}
.dl_basic02 dt{
    font-size: 1.1em;
    font-weight: bold;
    color: #FF0004;
    margin-bottom: 0.8em;
}


/* ----------------------------------
          　　　table
------------------------------------- */
.table_basic01 {
	width: 100%;
}
.table_basic01,.table_basic01 th, .table_basic01 td {
	border: 1px solid #ccc;
	border-collapse:collapse;
	padding: 0.8em 1em;
	box-sizing: border-box;
}
.table_basic01 thead th,.table_basic01 thead td {
	background-color:#F3F3F3;
}

.table_basic01 th{
	font-weight: normal;
	text-align:left;}


.table_basic02 {
	width: 100%;
	background: #fff;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
.table_basic02,.table_basic02 th, .table_basic02 td {
	border-collapse:collapse;}
	
.table_basic02 th, .table_basic02 td {
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 0.6em 0.8em;
	box-sizing: border-box;
}
.table_basic02 th {
	color: #333;
	background-color:#F3F3F3;
}

.table_basic02 thead th{
	background:#FFEAEA;}

/* sp */
@media screen and (max-width:767px) {
.table_basic01,.table_basic01 th, .table_basic01 td {
	padding: 0.2em 0.05em;
}
.table_basic02 {
	width: 100%;
}
.table_basic02, .table_basic02 thead, .table_basic02 tbody, .table_basic02 tr, .table_basic02 th, .table_basic02 td {
	width: 100%;
	display: block;
}
.table_basic02 th, .table_basic02 td {
	border-top: none;
	text-align:left;
	border-left: none;
}
}


