@charset 'utf-8';

html,body{
	font-size:16px;
}
body{
	font-family:'Poppins','Century Gothic',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	color:#222;
	font-feature-settings:'palt';
}
/* ie object-fit */
.object-fit-img {
  object-fit: cover;
  object-position: bottom;
  font-family: 'object-fit: cover; object-position: bottom;'
}

a{
	text-decoration:none;
	color:#0096e0;
	font-size:0.9rem;
}
img{
	display:block;
	max-width:100%;
}
li{
	list-style-type:none;
}
button{
	background:none;
	border:0;
}
p{
	line-height:2;
	letter-spacing:1px;
}
h2{
	font-weight:normal;
}
.container{
	max-width:960px;
	margin:0 auto;
}
header .container{
	display:flex;
	justify-content:space-between;
	align-items:center;
	padding:20px 0;
}
.header{
	display:flex;
}
.header h1{

}
.header h1 a{
	display:flex;
	align-items:center;
	color:#222;
	font-family:'游明朝',serif;
	font-size:1.5rem;
	transition:all .3s;
}
.header h1 a:hover{
	opacity:0.8;
}
.header h1 img{
	height:43px;
	margin-right:15px;
}
/* edgeブラウザ対策 */
.header h1 span {
    display: table;
    table-layout: fixed;
	position: static;
	z-index: 99;
}
/* edge対策　END */

.header-nav{
    max-width:50%;
}
.search{
	height:30px;
	margin-bottom:6px;
}
.search .gsc-control-cse{
	padding:0;
}
.search .gsc-search-box-tools .gsc-search-box .gsc-input{
	padding:0;
}
.search .gsc-search-button-v2{
	border:0;
	border-radius:0;
	background:#959595;
	width:43px;
	height:26px;
	padding:0;
}
.search .gsc-search-button{
	margin:0;
	cursor:pointer;
	transition:all .3s;
}
.search .gsc-input-box{
	padding:1px;
	width:175px;
	margin-left:auto;
}

.news-iframe {
	width: 541px;
	height: 380px;
	max-width:100%;
}

.contact{
    text-align:right;
}
.contact a{
	display:inline-block;
	background:#00bc96;
	padding:7px 0;
	width:139px;
	text-align:center;
	color:#fff;
	font-size:0.85rem;
	letter-spacing:1px;
	transition:all .3s;
}
.contact a:hover{
	opacity:0.8;
}
.access{
	margin-right:5px;
}
.access::before{
	content:'\f3c5';
	font-family:'Font Awesome 5 Free';
	display:inline-block;
	margin-right:5px;
	font-weight:bold;
}
.contact .tel{
	background:#0096e0;
}
.tel::before{
	content:'\f2a0';
	font-family:'Font Awesome 5 Free';
	display:inline-block;
	margin-right:5px;
	font-weight:bold;
}
.main-menu{
	border-top:1px solid #ababab;
	border-bottom:1px solid #ababab;
}
.main-menu ul{
	max-width:960px;
	height: 60px;
	margin:0 auto;
	display:flex;
	justify-content:space-between;
	text-align:center;
	position:relative;
	background:#fff;
	z-index:5;
}
.main-menu li{
	border-left:1px solid #ababab;
	box-sizing:border-box;
	text-align:center;
	width:100%;
}
.drop-menu{
	visibility:hidden;
	opacity:0;
	position:absolute;
	left:0;
	width:100%;
	background:#fff;
	border:1px solid #ababab;
	box-sizing:border-box;
	padding:20px 20px 15px;
	text-align:left;
	z-index:3;
	transition:all .3s;
}
.drop-menu h3{
	font-weight:normal;
	margin-bottom:5px;
	margin-left:10px;
	padding-right:10px;
	text-indent:-10px;
}
.drop-menu h3::before{
	content:'';
	display:inline-block;
	width:2px;
	height:25px;
	margin-right:9px;
	background:#ababab;
	vertical-align:text-bottom;
}
.drop-menu ul{
	flex-wrap:wrap;
	justify-content:flex-start;
}
.drop-menu li{
	text-align:left;
	border:0;
	display:inline-block;
	width:20%;
}
.main-menu .drop-menu li:nth-last-child(1){
	border:0;
}
.drop-menu li::before{
	content:'>';
	display:inline-block;
	margin-right:10px;
	color:#0096e0;
	vertical-align:middle;
}
.main-menu .drop-menu a{
	font-family:'sans-serif';
	font-weight:normal;
	font-size:0.8rem;
	display:inline-block;
}
.main-menu li:hover .drop-menu{
	visibility:visible;
	opacity:1;
	top:100%;
}
.main-menu li:nth-last-child(1){
	border-right:1px solid #ababab;
}
.main-menu a{
	height: 100%;
	color:#222;
	font-family:'游明朝',serif;
	font-weight:bold;
	font-size:0.95rem;
	letter-spacing:1px;
	transition:all .3s;
	line-height: 1.3;
	display: flex;
    align-items: center;
    justify-content: center;
}
.main-menu a:hover{
	color:#888;
}
.main-visual{
	position:relative;
	overflow:hidden;
	height:350px;
	background:#0094ec;
	animation:bright .8s;
}
@keyframes bright{
	0%{filter:brightness(1);}
	50%{filter:brightness(1.2);}
	100%{filter:brightness(1)}
}
.main-img{
	position:absolute;
	top:50%;
	left:46%;
	transform:translateX(-50%) translateY(-50%);
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
}
.slide-area{
	border-radius:50%;
	width:690px;
	height:690px;
	overflow:hidden;
	margin-right:30px;
	filter:drop-shadow(5px 5px 10px rgba(0,0,0,0.3));
}
.slide-area img{
    max-width:none;
	height:100%;
	object-fit:cover;
}
.main-catch h2{
	font-family:'游明朝',serif;
	font-size:1.8rem;
	font-weight:normal;
	letter-spacing:2px;
	color:#fff;
	line-height:1.3;
	transition:all 1s;
	animation:brighttext 1s 1.5s;
}
@keyframes brighttext{
	0%{text-shadow:0 0 0 rgba(255,255,255,0);}
	50%{text-shadow:0 0 13px rgba(255,255,255,.8);}
	100%{text-shadow:0 0 0 rgba(255,255,255,0);}
}
.main-catch h2>span{
	display:block;
	width:433px;
}
.main-catch .letter {
  display: inline-block;
  line-height: 1em;
}
.main-bg{
    height:100%;
}
.main-bg img{
	height:100%;
	object-fit:cover;
	margin:auto;
}
.top-banner{
	background: repeating-linear-gradient(-45deg, #dfdfdf, #dfdfdf 1px, #fff 2px, #fff 4px);
	padding:20px 0;
}
.banner-area{
	display:flex;
	justify-content:space-around;
	flex-wrap: wrap;
}
.banner-area li{
	width:calc((100%/2) - 30px);
	/*width:297px;*/
	height:146px;
	background-image:url(../images/banner/top-banner01-bg.jpg);
	background-size: cover;
    background-repeat: no-repeat;
	box-shadow:1px 10px 10px 0 rgba(0,0,0,0.2);
	transition:all .3s;
	margin: 10px;
}
.banner-area li:hover{
	box-shadow:1px 10px 20px 0 rgba(0,0,0,0.4);
}
.banner-area li:nth-child(2){
	background-image:url(../images/banner/top-banner02-bg.jpg);
}
.banner-area li:nth-child(3){
	background-image:url(../images/banner/top-banner03-bg.jpg);
}
.banner-area li:nth-child(3) span{
	letter-spacing:0;
}
.banner-area a{
	display:flex;
	align-items:center;
	height:100%;
	color:#fff;
	font-family:'游明朝',serif;
	font-size:1rem;
	letter-spacing:1px;
	position:relative;
}
.banner-area .arrow{
	position:absolute;
	top:46%;
	right:13px;
	transform:translateY(-50%) rotate(45deg);
	width:10px;
	height:1px;
	background-color:#fff;
}
.banner-area .arrow:nth-of-type(2){
	top:auto;
	bottom:49%;
	transform:translateY(50%) rotate(-45deg);
}
.banner-area a:hover .arrow{
	animation: ahovertop .4s;
}
.banner-area a:hover .arrow:nth-of-type(2){
	animation: ahoverbottom .3s linear .1s;
}
@keyframes ahovertop{
	0%{opacity:0;top:10px;right:40px}
	100%{opacity:1;top:46%;right:13px;}
}
@keyframes ahoverbottom{
	0%{opacity:0;bottom:10px;right:40px}
	50%{opacity:0;bottom:20px;right:40px}
	100%{opacity:1;bottom:49%;right:13px;}
}
.banner-img{
	width:126px;
	height:126px;
	border-radius:50%;
	overflow:hidden;
	margin:0 15px;
}
.banner-img img{
	height:100%;
	object-fit:cover;
	transition:all .3s;
}
.banner-area a:hover img{
	transform:scale(1.2);
}
.main-content{
	background-image:url(../images/contents-bg.jpg);
	background-attachment:fixed;
	background-size:cover;
	background-position:center;
	padding:20px 0 50px;
}
.about{
	text-align:center;
	padding:50px 0;
}
.about-title{
	font-family:'游明朝',serif;
	position:relative;
}
.about-title h2{
	font-size:1.9rem;
	font-weight:normal;
	margin-bottom:75px;
}
.about-title span{
	position:absolute;
	left:50%;
	transform:translate(-50%);
	width:1px;
	height:60px;
	background:#222;
	top:125%;
	animation:lineflow 3s infinite;
}
@keyframes lineflow{
	0%{opacity:0.8;height:0;}
	50%{opacity:1;height:60px;}
	70%{opacity:1;height:60px;}
	80%{opacity:1;height:60px;}
	100%{opacity:0;height:60px;}
}
.about p{
	font-family:'游明朝',serif;
	font-size:1rem;
	font-weight:bold;
	line-height:3;
}
.btn-area{
	margin-top:35px;
}
.btn-area .btn{
	display:inline-block;
	border:1px solid #222;
	color:#222;
	width:230px;
	line-height:3;
	letter-spacing:2px;
	position:relative;
	transition:all .3s;
	text-align: center;
}
.btn-area .btn:hover{
	background:#222;
	box-shadow:0 10px 15px 0 rgba(0,0,0,0.3);
	color:#fff;
}
.btn-area .btn .arrow{
	position:absolute;
	top:42%;
	right:13px;
	transform:translateY(-50%) rotate(45deg);
	width:10px;
	height:1px;
	background-color:#222;
}
.btn-area .btn .arrow:nth-of-type(2){
	top:auto;
	bottom:43%;
	transform:translateY(50%) rotate(-45deg);
}
.btn-area .btn:hover .arrow{
	background:#fff;
	animation: morebtntop .4s;
}
.btn-area .btn:hover .arrow:nth-of-type(2){
	animation: morebtnbottom .2s linear .1s;
}
@keyframes morebtntop{
	0%{opacity:0;top:0px;right:20px}
	100%{opacity:1;top:42%;right:13px;}
}
@keyframes morebtnbottom{
	0%{opacity:0;bottom:0px;right:20px}
	50%{opacity:0;bottom:0;right:20px}
	100%{opacity:1;bottom:43%;right:13px;}
}
.service,.news{
	max-width:960px;
	background:rgba(255,255,255,0.3);
	box-shadow:0 7px 16px 0 rgba(0,0,0,0.3);
	margin:0 auto 50px;
	padding:30px;
	box-sizing:border-box;
}
.contents-title{
	text-align:center;
}
.contents-title h2{
	font-size:1.2rem;
	position:relative;
	letter-spacing:5px;
	margin:10px auto 33px;
}
.contents-title h2::before,
.contents-title h2::after{
	content:'';
	display:block;
	position:absolute;
	top:-15px;
	left:50%;
	transform:translateX(-50%);
	background-image:url(../images/title-line.png);
	background-size:contain;
	width:18px;
	height:5px;
}
.contents-title h2::after{
	top:auto;
	bottom:-15px;
}
.service-list ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
}
.service-item{
	width:290px;
	height:65px;
	border:1px solid #ababab;
	box-sizing:border-box;
	margin-right:15px;
	margin-bottom:15px;
}
.service-item:nth-child(3n){
	margin-right:0;
}
.service-item a{
	display:flex;
	align-items:center;
	color:#222;
	height:100%;
	letter-spacing:3px;
	background:#faf8fb;
	position:relative;
	transition:all .3s;
}
.service-item a:hover{
	box-shadow:0 10px 10px 0 rgba(0,0,0,0.1);
}
.service-item a .arrow{
	position:absolute;
	top:43%;
	right:13px;
	transform:translateY(-50%) rotate(45deg);
	width:10px;
	height:1px;
	background:#dc444f;
}
.service-item a .arrow:nth-of-type(2){
	top:auto;
	bottom:46%;
	transform:translateY(50%) rotate(-45deg);
}
.service-item a:hover .arrow{
	animation: servicehovertop .4s;
}
.service-item a:hover .arrow:nth-of-type(2){
	animation: servicehoverbottom .2s linear .1s;
}
@keyframes servicehovertop{
	0%{opacity:0;top:0px;right:20px}
	100%{opacity:1;top:43%;right:13px;}
}
@keyframes servicehoverbottom{
	0%{opacity:0;bottom:0px;right:20px}
	50%{opacity:0;bottom:0;right:20px}
	100%{opacity:1;bottom:46%;right:13px;}
}
.service-item img{
	width:52px;
	margin:0 20px;
}
.news{
	margin-bottom:0;
}
.news .container{
	display:flex;
}
.kyoshitu{
	background:#fff;
	padding:20px;
	margin-right:20px;
}
.news-title{
	display:flex;
	justify-content:space-between;
	align-items:center;
	border-bottom:1px solid #b8b8b8;
	padding-bottom:10px;
}
.news-title h2{
	color:#5e5e5e;
	font-size:1.2rem;
	letter-spacing:3px;
}
.news-title h2::before{
	content:'';
	display:inline-block;
	background-image:url(../images/title-line02.png);
	background-size:contain;
	width:8px;
	height:27px;
	margin-right:15px;
	vertical-align:middle;
}
.news-title a{
	letter-spacing:2px;
	position:relative;
	padding-right:18px;
}
.news-title a .arrow{
	position:absolute;
	top:32%;
	right:5px;
	transform:translateY(-50%) rotate(45deg);
	width:7px;
	height:1px;
	background:#0096e0;
	transition:all .3s;
}
.news-title a .arrow:nth-of-type(2){
	top:auto;
	bottom:30%;
	transform:translateY(50%) rotate(-45deg);
}
.news-title a:hover .arrow{
	right:0;
}
.news-list{
	padding: 0 40px 0 10px;
	margin:10px 0;
}
.news-list li{
	border-bottom:1px dotted #aaa;
	padding:20px 0 10px;
}
.news-cat time{
	font-size:0.9rem;
	font-weight:bold;
	color:#8c8c8c;
	letter-spacing:1px;
	margin-right:15px;
	position:relative;
}
.news-cat time::before{
	content:'';
	display:inline-block;
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	left:-14px;
	border-left:5px solid #ccc;
	border-top:4px solid transparent;
	border-bottom:4px solid transparent;
}
.news-cat span{
	background:#ff5260;
	display:inline-block;
	padding:8px 15px;
	font-size:0.8rem;
	font-weight:bold;
	letter-spacing:1px;
	color:#fff;
}
.sns-area{
}
.face-book{
	width:299px;
	height:400px;
	border:1px solid #aaa;
	box-sizing:border-box;
	margin-bottom:20px;
	overflow:hidden;
}
.face-book iframe{
	max-width:100%;
}
.instagram-banner a{
	display:block;
	transition:all .3s;
}
.instagram-banner a:hover{
	box-shadow:0 5px 15px 0 rgba(0,0,0,0.2);
	filter:brightness(1.1);
}
span.news-icon01{
	background:#ff5260;
}
span.news-icon02{
	background:#00b1bc;
}
span.news-icon03{
	background:#008a6e;
}
.news-text h3{
	font-weight:normal;
	font-size:0.9rem;
	letter-spacing:1px;
	line-height:1.8;
	margin-top:12px;
}
.g-map iframe{
	width:100%;
	display:block;
}
.links-area{
	background:#a0c7dc;
	padding:20px 0;
}
.links-area .container{
	padding:0 30px;
}
.links-area .slick-prev:before{
	content:'\f0a8';
	font-family:'Font Awesome 5 Free';
	font-weight: bold;
}
.links-area .slick-next:before{
	content:'\f0a9';
	font-family:'Font Awesome 5 Free';
	font-weight: bold;
}
.links-area .slick-slide img{
	margin:auto;
}
.links-area ul{
	display:flex;
	justify-content:center;
}
.links-area li{
	margin:0 5px;
}
.links-area a{
	display:block;
	transition:all .3s;
}
.links-area a:hover{
	filter:brightness(1.3);
}
footer{
	color:#fff;
}
.contact-form a{
	transition:all .3s;
}
.contact-form a:hover{
	opacity:0.7;
}
.footer{
	background-image:linear-gradient( 90deg, rgb(0,150,224) 0%, rgb(0,150,224) 49%, rgb(0,128,191) 63%, rgb(0,157,255) 100%);
}
.footer .container{
	display:flex;
	justify-content:space-around;
	padding:40px 20px;
}
.ft-name{
	display:flex;
	margin-bottom:10px;
}
.ft-name img{
	height:33px;
	margin-right:10px;
}
.ft-name span{
	font-family:'游明朝',serif;
}
.ft-address{
	font-size:0.8rem;
	margin-bottom:10px;
}
.ft-tel{
	color:#fff;
	font-size:1.3rem;
	letter-spacing:1px;
	display:block;
	margin-bottom:5px;
}
.ft-tel span{
	font-size:0.9rem;
}
.ft-tel::before{
	content:'\f2a0';
	font-family:'Font Awesome 5 Free';
	font-weight:bold;
	display:inline-block;
	margin-right:5px;
}
.fax{
	font-size:0.8rem;
	letter-spacing:1px;
	display:block;
	margin-bottom:10px;
}
.ft-mail{
	display:inline-block;
	font-size:0.9rem;
	background:#fff;
	width:200px;
	padding:10px 0;
	text-align:center;
	margin-bottom:10px;
}
a.ft-mail:hover{
	opacity:0.9;
	box-shadow:0 5px 20px 0 rgba(0,0,0,0.3);
}
.ft-mail::before{
	content:'\f0e0';
	font-family:'Font Awesome 5 Free';
	display:inline-block;
	font-weight:bold;
	margin-right:5px;
}
.ft-sns{
	margin-bottom:30px;
}
.ft-sns a{
	display:inline-block;
	color:#fff;
}
.ft-sns span{
	display:inline-block;
	font-size:29px;
	margin-right:15px;
}
.ft-nav{
	display:flex;
}
.ft-nav li{
	margin-right:13px;
}
.ft-nav a{
	color:#fff;
	display:block;
	font-size:0.8rem;
	letter-spacing:1px;
}
.ft-nav a::before{
	content:'>';
	display:inline-block;
	margin-right:5px;
}
.footer .requir,
.news-list .requir{
	font-size:0.7rem;
	line-height:1.5;
	margin-top:20px;
}
.consultation table{
	margin-bottom:20px;
}
.consultation th,
.consultation td{
	border:1px solid #fff;
	text-align:center;
	font-weight:normal;
	font-size:1.1rem;
	padding:14px 10px 14px 14px;
	letter-spacing:4px;
}
.consultation th{
	padding:14px 15px 14px 19px;
}
.consultation dl{
	font-size:0.75rem;
	letter-spacing:1px;
	line-height:1.4;
}
.consultation dt{
	margin-bottom:5px;
	margin-right:10px;
	float:left;
}
.consultation dt:nth-of-type(2){
	letter-spacing:1.5px;
}
.consultation dd{
	margin-bottom:15px;
	margin-left:112px;
}
.consultation dd::after{
	content:'';
	display:block;
	clear:both;
}
.copy p{
	color:#276684;
	font-size:0.7rem;
	text-align:center;
	letter-spacing:0px;
	padding:15px 0;
}

#sp-btn{
    display:none;
    position:fixed;
    z-index:20;
    top:8px;
    right:10px;
}
#sp-btn button{
    width:45px;
    height:45px;
    background:#0096e0;
    border:0;
    cursor:pointer;
}
#sp-btn span{
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    margin:auto;
    width:30px;
    height:1px;
    background:#fff;
    transition:all .3s;
}
#sp-btn span:nth-child(1){
    top:-15px;
}
#sp-btn span:nth-child(3){
    top:15px;
}
#sp-btn.active span:nth-child(1){
    top:0;
    transform:rotate(135deg);
}
#sp-btn.active span:nth-child(2){
    width:0;
    opacity:0;
}
#sp-btn.active span:nth-child(3){
    top:0;
    transform:rotate(-135deg);
}

#page-top{
    display:none;
    position:fixed;
    bottom:10px;
    right:10px;
    z-index:20;
}
#page-top a{
	display:block;
	width:50px;
	height:30px;
	transition:all .3s;
}
#page-top a:hover{
	transform:scale(1.2);
}
#page-top a span{
	font-size:2rem;
	color:#0096e0;
	background:linear-gradient(0deg,#50ffdc,#49c3ff);
	position: absolute;
    left: 0;
    bottom: 0;
    top: 0;
    display: block;
    margin: auto;
    width: 28px;
    height: 1px;
    transform: rotate(-40deg);
}
#page-top a span:nth-child(2){
	left: auto;
    right: 1px;
    transform: rotate(40deg);
}
@keyframes t-anim{
	0%{transform:translateY(0);opacity:1;}
	50%{transform:translateY(-50%);opacity:0.5;}
	60%{transform:translateY(-100%);opacity:0;}
	65%{transform:translateY(150%);opacity:0;}
	70%{transform:translateY(150%);opacity:1;}
	100%{transform:translateY(0);opacity:1;}
}


/* -----------------
下層ページ
------------------ */
.bg-breadcrumb {
	background-color: #ECECEC;
	background: repeating-linear-gradient(-45deg, #dfdfdf, #dfdfdf 1px, #fff 2px, #fff 4px);
	width: 100%;
}
.breadcrumb {
	padding: 7px 0;
	line-height: 0.7rem;
}
.breadcrumb li {
	display: inline;
	font-size: 0.7rem;
	color: #5e5e5e;
}
.breadcrumb a {
	font-size: 0.7rem;
}
.breadcrumb li::before {
	content: ">";
	color: #0096e0;
	padding: 0 5px;
}
.breadcrumb li:last-child::before {
	color: #5e5e5e;
}
.page-title {
    color: #5e5e5e;
    font-size: 1.2rem;
    letter-spacing: 3px;
	padding: 12px 0;
}
.page-title::before {
    content: '';
    display: inline-block;
    background-image: url(../images/title-line02.png);
    background-size: contain;
    width: 8px;
    height: 27px;
    margin-right: 15px;
    vertical-align: middle;
}
.staff_list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 5px;
}
.staff_list li {
	width: 49%;
	border: 1px solid #dfdfdf;
	display: flex;
	justify-content: space-between;
	position: relative;
	margin-top: 15px;
}
.staff_img {
	width: 36%;
}
.staff_data {
	width: 58%;
	padding: 8px;
}
.tag {
	padding: 10px 16px;
	color: #fff;
	background: #888;
	position: absolute;
	right: 0;
	top: 0;
	font-size: 0.9em;
}
.tag.blanks {
	background: #fff;
}
.name {
	font-size: 1.2rem;
	padding: 6px 0 0;
	border-bottom: dotted 1px #aaa;
	line-height: 2;
}
.position {
	display: block;
	font-size: 0.8rem;
	line-height: 1;
	margin-bottom: 5px;
}
.yomi {
	font-size: 0.8rem;
	line-height: 1;
	color: #959595;
	position: absolute;
    right: 10px;
    top: 48px;
}
.data dt {
	font-weight: bold;
	font-size: 0.8em;
	margin-top: 1em;
}
.data dd {
	font-size: 0.8em;
	margin-bottom: 1em;
}
.belong_title {
    margin: 40px 0 5px;
    font-size: 0.8rem;
}
.belong_item li {
    padding: 10px 0;
    letter-spacing: 0.8px;
	line-height: 1.4;
	font-size: 1.2rem;
	border-bottom: 1px solid #dfdfdf;
}
.belong_item li:first-child {
	border-top: 1px solid #dfdfdf;
}
.belong_note {
	font-size: 0.95rem;
}
.text_area {
	padding: 0 20px 10px;
	font-size: 0.9rem;
}
.text_area p {
	margin-top: 1em;
}
.text_area p:first-child {
	margin-top: 0;
}
.page_footer {
	margin-top: 60px;
}

.research {
	margin-top: 5px;
}
.research li {
	line-height: 1.8;
    letter-spacing: .9px;
	margin: 4em 1em 0;
}
.research li:first-child {
	margin-top: 0;
}
.research li:first-child::before {
	content: "１.";
}
.research li:nth-child(2)::before {
	content: "２.";
}
.research li:nth-child(3)::before {
	content: "３.";
}
.research li:nth-child(4)::before {
	content: "４.";
}

.research_box {
	display: flex;
	justify-content:space-between;
}
.research_box h3 {
	line-height: 1;
}
.research_box .number_01::before {
	content: "１.";
}
.research_box .number_02::before {
	content: "２.";
}
.research_box .number_03::before {
	content: "３.";
}
.research_box .number_04::before {
	content: "４.";
}
.research_box .number_01::before , .research_box .number_02::before , .research_box .number_03::before , .research_box .number_04::before {
	margin-left: -1em;
}
.research_txt {
    margin: 0 1em 30px;
	width: calc(100% - 139px);
}
.research_box .research_icon {
	width: 110px;
	height: auto;
}
.research_box .img_02 {
	width: 16%;
	height: auto;
	margin-left: auto;
}
.research_box .img_03 {
	width: 23%;
	height: auto;
}
.research_box .img_04 {
	width: 42%;
	height: auto;
}
.research_box .img_05 {
	width: 65%;
	height: auto;
}
.research_box .img_06 {
	width: 107%;
	height: auto;
}
.research_box .img_07 {
	width: 44%;
	height: auto;
}

.text_area p.img_under_space {
	margin: 20px 0;
}
.page-title02 {
	color: #5e5e5e;
    font-size: 1rem;
    letter-spacing: 2px;
	margin: 30px 0 0;
	padding: 0.7em 1em;
	background: #f4f4f4;
	border-left: solid 5px #0d94e1;
	border-bottom: solid 2px #d7d7d7;
	margin-bottom: 1em;
}
.container .page-title02:first-of-type {
    margin-top: 0;
}
.page_contents {
	margin-top: 30px;
}
.medical_item {
	margin-top: 30px;
}
.medical_list {
	margin-top: 20px;
}
dl {
	line-height: 1.7;
    letter-spacing: 1px;
}
.media_title strong {
	color: #258ACB;
}
.medical_item dl span {
	display: block;
	padding: 0 0 8px 0;
	height: 7em;
}
.medical_item dt {
	float: left;
	clear: both;
}
.media_content .hosoku {
    line-height: 2;
    letter-spacing: 1px;
	font-size: 14px;
	margin-top: 0;
}
.media_content.media_img {
	font-size: 1.2em;
	margin-top: 1.5em;
}
.media_content.media_img:first-child {
	margin-top: 0.5em;
}
.media_img {
	height: 5em;
	padding-left: 6.5em;
}
.media_img.brain {
	background: url(../images/icon1.png) left top / contain no-repeat;
}
.media_img.docter {
	background: url(../images/icon2.png) left top / contain no-repeat;
}
.small dt {
	width: 5em;
}
.small dd {
	padding-left: 5em;
}
.table {
	width: 920px;
	margin-top: 1em;
	text-align: center;
}
.table td {
	padding: 12px 8px;
	width: 5%;
}
.table , .table td , .table th {
	border: 1px solid #222;
}
.table_bg_color {
	background: #d3e8f2;
}
.overflow-x+.hosoku {
	margin-top: 0;
	margin-bottom: 0.5em;
}
.dl_month {
	background: url(../images/month.png) left top / contain no-repeat;
	padding-left: 20px;
}
.dl_month dd , .dl_month dt {
	padding: 9px 3px;
}
.medical_item h6 {
	padding: 2.2em 0.5em 0.5em;
	border-bottom: 1px solid #000;
}
.medical_ul {
	margin-left: 2em;
}
.medical_ul li {
	line-height: 1.4;
	list-style-type: disc;
}
.bounenkai-img span {
    display: block;
	margin-top: 5px;
}
.bounenkai {
	display: flex;
	justify-content: space-between;
}
.page_info {
	width: 100%;
	margin-top: 5px;
}
.page_info th {
	width: 8em;
}
.page_info td a {
	word-break: break-all;
}
.page_info th , .page_info td {
	padding: 10px 12px;
	border: solid 1px #ccc;
	line-height: 1.4;
}

.flex01 {
	display: flex;
	justify-content: space-between;
}
.order_change {
	order: 2;
}
.width_80 {
	width: 80%;
}
.messege {
	line-height: 2.2;
    letter-spacing: .8px;
}
.years {
    font-size: 1.2rem;
    background-color: #ECECEC;
    background: repeating-linear-gradient(-45deg, #dfdfdf, #dfdfdf 1px, #fff 2px, #fff 4px);
    width: 100%;
    padding: 12px;
    margin-top: 20px;
	margin-bottom: 12px;
	box-sizing: border-box;
}
.achieve {
	margin-left: 2em;
}
.achieve li {
	list-style-type: disc;
	line-height: 1.6;
	padding-bottom: .8em;
}

.access_table {
	width: 100%;
}
.access_table th , .access_table td {
	border: 1px solid #dfdfdf;
	padding: 18px;
	line-height: 1.4;
}
.access_table th {
	width: 5em;
}

.sitemap>li , .sitemap>li>a {
	font-size: 1rem;
	line-height: 3;
}
.sitemap_child>li {
	font-size: 0.9rem;
	margin-left: 1em;
}
.sitemap a {
	color: #5e5e5e;
}
.sitemap a:hover {
	text-decoration: underline;
}
.sitemap li::before {
    content: '>';
    display: inline-block;
    margin-right: 10px;
	color: #0096e0;
    vertical-align: middle;
}
.sitemap_child li::before {
    content: '-';
    display: inline-block;
    margin-right: 10px;
	color: #0096e0;
    vertical-align: middle;
}
.height_100p {
	height: 150vh;
	width: 100%;
}

/* 加齢黄斑変性 */
.amd_dl_title {
	background-color: #ECECEC;
    background: repeating-linear-gradient(-45deg, #dfdfdf, #dfdfdf 1px, #fff 2px, #fff 4px);
	padding: 5px 8px;
}
p.amd_dl_title.marginT {
	margin-top: 15px;
}
.amd_dl_list {
	margin-top: 5px;
}
.amd_dl_list li {
margin: 0 0 5px 2em;
	list-style-type: disc;
}
.amd_dl_list li a {
    line-height: 1.7;
}
.amd_dl_list li a[href$=".doc"] {
	background: url(../images/word_icon.png) right center / contain no-repeat;
	padding-right: 2em;
}
.amd_dl_list li a[href$=".xls"] {
	background: url(../images/excel_icon.png) right center / contain no-repeat;
	padding-right: 2em;
}

/* ロービジョン外来 */
.comment {
    position: relative;
    margin: 2em 0 0.5em;
    padding: 0.5em 1em;
    border: solid 3px #85CEFA;
    border-radius: 8px;
}
.comment .comment-title , .comment .comment-title02 {
    position: absolute;
    display: inline-block;
    top: -10px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 17px;
    background: #FFF;
    color: #68C2F9;
    font-weight: bold;
}
.comment p {
    margin: 0;
    padding: 18px 14px 34px;
}
.text_area .comment p {
    line-height: 2;
}
.comment-title::after {
	content: "";
	background: url(../images/comment_icon.png) left  center / 100% no-repeat;
	padding-right: 1.5em;
	margin-left: 5px;
}
.comment-title02::after {
	content: "";
	background: url(../images/comment_icon02.png) left  center / 100% no-repeat;
	padding-right: 1.5em;
	margin-left: 5px;
}

/* 角膜内皮移植 */
/* アコーディオンA */
.ac-box{
width: 97%;
margin: 20px auto 5px;
}

/*ラベル*/
.ac-box label{
font-size: 0.9rem;
font-weight: bold;
background: rgb(0, 150, 224);
margin: auto;
line-height: 50px;
position: relative;
display: block;
height: 50px;
cursor: pointer;
color: #fff;
transition: all 0.5s;
padding-left: 1.5em;
}

/*ラベルホバー時*/
.ac-box label:hover{
background: rgb(48, 187, 255);
-webkit-transition: all .3s;
transition: all .3s;
}

/*チェックを隠す*/
.ac-box input{
display: none;
}

/*チェックのアイコン（↓）*/
.ac-box label:after{
font-family:"FontAwesome";
content:" \f078";
position: absolute;
right: 1em;
}

/*チェックのアイコン（↑）*/
.ac-box input:checked ~ label::after {
color: #fff;
font-family:"FontAwesome";
content:" \f077";
}

/*中身を非表示にしておく*/
.ac-box div{
height: 0px;
padding: 0px;
overflow: hidden;
opacity: 0;
transition: 0.5s;
}

/*クリックで中身を表示*/
.ac-box input:checked ~ div{
height: auto;
padding: 5px;
background: #f5f3d4;
opacity: 1;
margin-top: 5px;
}

/*表示内容の調整*/
.ac-box div p{
color: #000;
line-height: 2;
letter-spacing: 1px;
font-size: 0.9rem;
padding: 18px 14px 34px;
text-align: justify;
}
.example_body {
	margin:50px 10px 20px;
}
.example_body div {
    width: 15%;
    float: left;
    margin: 0 auto;
}
.example_body div p {
	text-align: center;
    padding: 0;
}
.example_body p {
    padding-left: 16%;
}
.example_content.voice {
	background: url(../images/comment_icon02.png) left top 5px / 14% no-repeat;
	padding-left: 16%;
}
.example_title {
	display: block;
	font-weight: bold;
	font-size: 0.9rem;
	color: #238acc;
	padding: 15px 12px 3px 12px;
	position: relative;
	background-color: #eee;
}
.example_title::after {
	position: absolute;
	top: 0;
	right: 0;
	content: '';
	width: 0;
	border-width: 0 16px 16px 0;
	border-style: solid;
	border-color: #fff #fff #ddd #ddd;
	box-shadow: -1px 1px 2px rgba(0, 0, 0, .1);
}
.example_text {
	display: block;
	padding: 0 12px 12px 12px;
	background-color: #eee;
	line-height: 3;
	font-size:0.85rem;
}
.example_text>span {
	border-bottom: dotted 1px #888;
}

.ac-small p{
	margin-bottom: 0px;
}
.sitepolicy_date , .privacy_date {
    line-height: 1.5;
    letter-spacing: 1px;
    font-size: 0.9rem;
    text-align: right;
}
.privacy_dl_list {
	margin-top: 5px;
}
.privacy_dl_list li {
    margin: 0 0 5px 2em;
    list-style-type: disc;
	line-height: 2;
}
.privacy_dl_list li a[href$=".pdf"] {
    background: url(../images/pdf_icon.png) right center / contain no-repeat;
    padding-right: 2em;
}
/****** 手紙風メッセージ ******/
.kakomi-smart2 {
 position: relative;
 margin: 0 auto 2em;
 padding: 3em 1em .8em;
 width: 90%; /* ボックス幅 */
 border-style: solid;
 border-width: 5px 0 0 0;
 border-color: #0d94e1; /* 枠の色 */
 background-color: #fff6e6;
 color: #5e5e5e; /* テキスト色 */
 box-shadow: 0 0 3px #999; /* 影の色 */
 line-height: 2;
 letter-spacing: 1px;
 font-size: 0.9rem;
}
.title-smart2{
 position: absolute;
 top: 8px;
 left: 15px;
 color: #5e5e5e; /* タイトル色 */
 font-size: 1.1em;
 font-weight: bold;
 border-style: none none double;
 border-color: #907b6e; /*タイトル下線 */
 border-width: 3px;
 line-height: 1.4;
}
.kakomi-smart2.lady {
	border-color: #ee8992;
}
.research_box_ttl {
	position: relative;
}
.research_box_ttl h3{
	padding-left: 2em;
}
.research_box_btn span {
    content: "";
    width: 15px;
    height: 1.8px;
    background-color: #000;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
	transition: all 0.3s;
}
.research_box_btn span:nth-child(1) {
    transform: translateY(-50%) rotate(90deg);
}
.research_box_btn.open span:nth-child(1) {
    transform: rotate(0deg);

}

/****** 教授のページ ******/
.greeting {
	display: flex;
	align-items: center;
	padding: 1em;
	margin-bottom: 30px;
	background: #eef9ff;
	outline: 1px solid #b5d9ed;
    outline-offset: -8px;
}
.greeting > img {
	margin-right: 15px;
	filter: brightness(1.05);
}

/****** 臨床研究についてのお知らせのページ ******/
.research_info_con {
	min-height: calc(100vh - 550px);
    height: 100%;
}
.research_info {
	margin: 0 0 30px;
}
.research_info li a {
	display: block;
	padding: 10px 5px;
	border-bottom: 1px dotted #ccc;
	transition: .3s all;
	line-height: 1.6;
}
.research_info li:first-child a {
	border-top: 1px dotted #ccc;
}
.research_info li a:hover {
	background: rgb(0,150,224, 0.2);
}

@media screen and (max-width:976px){
	.service-item{
		width:calc(50% - 10px);
		margin:5px;
	}
	.service-item:nth-child(3n){
		margin-right:auto;
	}
	.example_body div {
    	width: 50%;
    	float: none;
    	margin: 0 auto;
	}
	.example_body div p {
    	text-align: center;
	}
	.example_body p {
		padding: 0;
	}
}
@media screen and (max-width:768px){
    header{
        position:fixed;
        z-index:10;
        background:#fff;
        width:100%;
        box-shadow:0 3px 10px 0 rgba(0,0,0,0.2);
    }
    header .container{
        padding:10px 0;
    }
    .header h1{
        margin-left:10px;
    }
    .header h1 a{
        font-size:1rem;
    }
    .header h1 span{
        width:100px;
        line-height:1.3;
    }
	.main-visual{
		height:380px;
	}
    .main-img{
        flex-direction:column;
        top:17%;
        left:50%;
    }
    .slide-area{
        width:800px;
        height:auto;
        margin-right:0;
		filter:drop-shadow(2px 2px 5px rgba(0,0,0,0.3));
    }
    .slide-area img{
        object-position:0 160px;
    }
    .main-catch h2{
        font-size:1.3rem;
        margin-top:10px;
		text-align:center;
    }
    .main-catch h2>span{

    }
    .main-bg img{
        object-position:-1050px 150px;
    }
    .banner-area{
        display:block;
    }
    .banner-area li{
        width:95%;
        background-repeat:no-repeat;
        background-size:cover;
        margin:0 auto 20px;
    }
    .banner-area li:nth-last-child(1){
        margin-bottom:0;
    }
    .about p{
        padding:0 15px;
        line-height: 2.5;
        font-size:0.9rem;
        letter-spacing:0.2px;
    }
    .service, .news{
        padding:10px;
    }
    .service-item img{
        width:30px;
        margin:0 15px;
    }
    .service-item a{
        padding-right:20px;
    }
    .news .container{
        display:block;
    }
    .kyoshitu{
        margin-right:auto;
    }
    .face-book{
        width:auto;
        text-align:center;
    }
    .g-map iframe{
        height:300px;
    }
    .instagram-banner{
        margin-bottom:10px;
    }
    .instagram-banner a:hover{
        box-shadow:none;
    }
    .instagram-banner img{
        margin:auto;
    }
    .footer .container{
        display:block;
    }
    .contact-form{
        margin-bottom:20px;
    }
    .ft-nav{
        flex-wrap:wrap;
    }
    .ft-nav li{
        margin-bottom:10px;
    }
    .consultation table{
        width:100%;
    }
    .consultation th, .consultation td{
        padding:10px 5px 9px 8px;
    }
	.example_body div {
    	width: 50%;
    	float: none;
    	margin: 0 auto;
	}
	.example_body div p {
    	text-align: center;
	}
	.example_body p {
		padding: 0;
	}
    #sp-menu{
        border:0;
        position: fixed;
        top: 63px;
        z-index: 10;
        width: 100%;
        left:100%;
        transition:all .3s;
    }
    #sp-menu.open{
        display:block;
        left: 0;
    }
    #sp-menu ul{
        display:block;
    }
    #sp-menu li{
		display:block;
		width:auto;
        border:0;
		text-align:left;
		border-bottom:1px solid #eee;
    }
	#sp-menu>ul>li>a{
		padding:15px;
		position:relative;
	}
	#sp-menu>ul>li>a::after{
		content:'\f105';
		font-family:'Font Awesome 5 Free';
		color:#999;
		display:inline-block;
		position:absolute;
		top:50%;
		right:10px;
		transform:translateY(-50%);
	}
	#sp-menu>ul>li:nth-child(3)>a::after,
	#sp-menu>ul>li:nth-child(4)>a::after{
		content:'\f067';
		font-size:0.7rem;
		transition:all .3s;
	}
	#sp-menu>ul>li.open>a::after{
		transform:rotate(135deg) translate3d(-40%,40%,0);
	}
    .drop-menu{
        position:static;
        visibility: visible;
        opacity:1;
        display:none;
		transition:none;
		background:#eee;
		border-left-width:0;
		border-right-width:0;
    }
	.drop-menu>ul{
		background:#eee;
	}
    .main-menu li:hover .drop-menu{

    }
    .main-menu li.open .drop-menu{


    }
	#sp-menu .search{
		margin-bottom:0;
		padding:10px 20px;
		background:#ccc;
	}
	#sp-menu .search .gsc-input-box{
		width:auto;
	}
	#sp-menu .contact{
		display:flex;
	}
	#sp-menu .contact a{
		width:50%;
		color:#fff;
		margin:0;
		font-family:sans-serif;
	}
	#sp-menu form.gsc-search-box,
	#sp-menu table.gsc-search-box{
		margin-bottom:0;
	}
	#sp-menu .gsc-control-cse{
		border-color:#888;
	}
	#sp-menu .gsc-input-box{
		border-width:0;
	}

    #sp-nav{
        display:none;
    }
    #sp-btn{
        display:block;
    }
	.sp_display_block {
		display: block;
	}
	.ft-name {
		line-height: 1.1;
	}
	.footer .container {
		padding-bottom: 5px;
	}

	.staff_list {
		display: block;
	}
	.staff_list li , .belong_body {
		width: 96%;
		margin: 0 auto;
	}
	.bg-breadcrumb{
		padding-top: 65px;
	}
	.page-title {
		margin-top: 13px;
	}
	.staff_list li {
    margin-top: 15px;
	}
	.name {
		font-size: 1rem;
	}
	.yomi {
		margin-left: 0;
		display: block;
		position: static;
	}
	.belong_item li {
		font-size: 1rem;
	}
	.belong_note {
		display: block;
	}
	.text_area {
		padding: 0 20px 10px;
		font-size: 0.8rem;
	}
	.overflow-x {
		overflow-x: scroll;
		width: 100%;
	}
	.flex01 {
		display: block;
	}
	.width_80 {
		width: 100%;
		margin-top: 10px;
	}
	.flex01 img {
		margin: 0 auto;
	}
	.access-name span {
		line-height: 1.2;
	}
	.access_more {
		margin-top: 10px;
	}
	.flex01 .access_more img {
		margin-right: 20px;
		margin-left: 0;
	}
	.sitemap>li, .sitemap>li a {
		font-size: 0.9rem;
	}
	.news-iframe {
		width: 100%;
	}
	.overflow-hidden {
		overflow: hidden;
	}
	.links-area ul {
    	justify-content: space-around;
    	width: 100%;
    	flex-wrap: wrap;
	}
	.links-area li {
	    width: 49%;
    	margin-right: 0;
    	margin-bottom: 3px;
	}

	.media_body p {
		line-height: 1.7;
	}
	.media_img.brain , .media_img.docter {
		background-size: 42%;
		background-position: center top;
		padding-top: 40%;
	}
	.media_img {
		height: auto;
		padding-left: 0;
		padding-top: 8em;
	}
	.media_content .hosoku {
		font-size: 0.8em;
		margin-top: 0.5em;
	}

	.example_content.voice {
    	background: url(../images/comment_icon02.png) left top 5px / 25% no-repeat;
    	padding-left: 30%;
	}
	.example_title {
		text-align: center;
	}
	.comment .comment-title , .comment .comment-title02 {
		font-size: 15px;
	}

	.research_box {
    	flex-direction: column-reverse;
		margin-top: 1em;
	}
	.research_txt {
    	margin: 0;
		width: 100%;
	}
	.research_box h3 {
		line-height: 1.7;
	}
	.research_box .research_icon {
		margin: 1em auto;
		height: auto;
		width: 120px;
	}
	.bounenkai-img {
		margin-top: 5px;
	}
	.bounenkai {
		display: block;
	}

	/****** 教授のページ ******/
	.greeting_wrap {
		padding: 0 6px;
	}
	.greeting {
		align-items: flex-start;
	}
	.greeting > p {
		margin: 0;
	}
	.greeting img {
		width: 120px;
		margin-top: 5px;
	}
}

@media screen and (max-width:480px){
	.ft-mail{
		width:100%;
	}
	.example_content.voice {
		background:url(../images/comment_icon02.png) center top 0 / 30% no-repeat;
		padding-left:0;
		padding-top:43%;
	}
	.example_body div {
    	width: 50%;
    	float: none;
    	margin: 0 auto;
	}
	.example_body div p {
    	text-align: center;
	}
	.example_body p {
		padding: 0;
	}
}
@media screen and (min-width: 320px) and (max-width: 336px) {
	.header h1 span {
		width: 83px;
		font-size: 0.85rem;
	}
}