
/* TOPコンテンツ
------------------------------------------------------------*/
.study{
/*background:url("./../images/top/back.jpg") no-repeat;*/
background-size: cover;
background-position: top center;
width: 100%;
padding: 0px 0;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#f7f8ff+0,ffffff+100 */
background: rgb(247,248,255); /* Old browsers */
background: -moz-linear-gradient(top,  rgba(247,248,255,1) 0%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(247,248,255,1) 0%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(247,248,255,1) 0%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f8ff', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
}

.study h2{
color: #304E94;
font-weight: 600;
}
/* 医学生・初期研修医の皆様へ
------------------------------------------------------------*/
.flex02{
display: none;
/*display: flex;
justify-content:space-between;
position: relative;*/
}

.photo_back{
background:url("./../images/top/photo.png") no-repeat;
background-position: right;
background-size: auto;
 align-self : flex-start;
     width: 600px;
    height: 367px;
/*display: flex;
justify-content:space-between;
align-items: center;*/
color: #fff;
text-align: center;
padding: 2rem;
/*margin: 60px auto;*/
position: absolute;
    top: 0;
    right: 0;
}
/*.photo_back::before{
z-index: 0;
content: “”;
display: block;
position: absolute;
top: 0;
left: 0;
background-color: rgba(0,0,0,0.5);
}*/

.photo_back h2{
text-align: left;
}
.state{
letter-spacing: 1px;
font-size: 1.2rem;
font-weight: 400;
color: #cfd2d8;
padding-bottom: 30px;
}
.message{
width: 52%;
background: #FFF;
border-radius: 5px;
padding: 30px;
margin-top: 190px;
align-self : flex-end;
z-index: 1;
}
.message img{
display: none;
}
.message p{
text-align: left;
line-height: 1.9;
}
.btn02{
display: block;
width: 80%;
margin-top:10px;
margin-bottom: 30px;
line-height: 3;
background-color: #253e71;
color: #fff;
border: 2px solid #253e71;
border-radius: 10px;
position: relative;
font-size: .9rem;
-webkit-transition: all .4s cubic-bezier(.19,1,.22,1);
transition: all .4s cubic-bezier(.19,1,.22,1);
-webkit-transition-timing-function: cubic-bezier(.19,1,.22,1);
transition-timing-function: cubic-bezier(.19,1,.22,1);
letter-spacing: 1.1px;
min-width: 220px;
overflow: hidden;
text-align: center;
}

.btn02:after {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    right: 18px;
    top: 50%;
    font-weight: 700;
    line-height: 10px;
    margin-top: -5px;
    font-size: 1.1rem;
    -webkit-transition: all .4s cubic-bezier(.165,.84,.44,1);
    transition: all .4s cubic-bezier(.165,.84,.44,1);
    -webkit-transition-timing-function: cubic-bezier(.165,.84,.44,1);
    transition-timing-function: cubic-bezier(.165,.84,.44,1);
}
.btn03{
display: block;
width: 80%;
margin-top:10px;
margin-bottom: 30px;
line-height: 3;
background-color: #253e71;
color: #fff;
border: 2px solid #fff;
border-radius: 10px;
position: relative;
font-size: .9rem;
-webkit-transition: all .4s cubic-bezier(.19,1,.22,1);
transition: all .4s cubic-bezier(.19,1,.22,1);
-webkit-transition-timing-function: cubic-bezier(.19,1,.22,1);
transition-timing-function: cubic-bezier(.19,1,.22,1);
letter-spacing: 1.1px;
min-width: 220px;
overflow: hidden;
text-align: center;
}

.btn03:after {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    right: 18px;
    top: 50%;
    font-weight: 700;
    line-height: 10px;
    margin-top: -5px;
    font-size: 1.1rem;
    -webkit-transition: all .4s cubic-bezier(.165,.84,.44,1);
    transition: all .4s cubic-bezier(.165,.84,.44,1);
    -webkit-transition-timing-function: cubic-bezier(.165,.84,.44,1);
    transition-timing-function: cubic-bezier(.165,.84,.44,1);
}
.btn04{
display: block;
width: 80%;
margin-top:10px;
line-height: 3;
background-color: #253e71;
color: #fff;
border: 2px solid #fff;
border-radius: 10px;
position: relative;
font-size:1.3rem;
font-weight: 600;
-webkit-transition: all .4s cubic-bezier(.19,1,.22,1);
transition: all .4s cubic-bezier(.19,1,.22,1);
-webkit-transition-timing-function: cubic-bezier(.19,1,.22,1);
transition-timing-function: cubic-bezier(.19,1,.22,1);
letter-spacing: 1.1px;
min-width: 220px;
overflow: hidden;
text-align: center;
}

.btn04:after {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    right: 18px;
    top: 50%;
    font-weight: 700;
    line-height: 10px;
    margin-top: -5px;
    font-size: 1.1rem;
    -webkit-transition: all .4s cubic-bezier(.165,.84,.44,1);
    transition: all .4s cubic-bezier(.165,.84,.44,1);
    -webkit-transition-timing-function: cubic-bezier(.165,.84,.44,1);
    transition-timing-function: cubic-bezier(.165,.84,.44,1);
}
.btn04:hover{
color: darkgray;
}
.btn05 {
    display: block;
    width: 47%;
    margin-top: 10px;
    line-height: 3;
    background-color: #253e71;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 10px;
    position: relative;
    font-size: 1.3rem;
    font-weight: 600;
    -webkit-transition: all .4s cubic-bezier(.19,1,.22,1);
    transition: all .4s cubic-bezier(.19,1,.22,1);
    -webkit-transition-timing-function: cubic-bezier(.19,1,.22,1);
    transition-timing-function: cubic-bezier(.19,1,.22,1);
    letter-spacing: 1.1px;
    min-width: 220px;
    overflow: hidden;
    text-align: center;
}
.btn05:after {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    right: 18px;
    top: 50%;
    font-weight: 700;
    line-height: 10px;
    margin-top: -5px;
    font-size: 1.1rem;
    -webkit-transition: all .4s cubic-bezier(.165,.84,.44,1);
    transition: all .4s cubic-bezier(.165,.84,.44,1);
    -webkit-transition-timing-function: cubic-bezier(.165,.84,.44,1);
    transition-timing-function: cubic-bezier(.165,.84,.44,1);
}
.btn05:hover{
color: darkgray;
}
/* index　NEWS
------------------------------------------------------------*/
.news{
width: 50%;
height: auto;
display: table;
}
.news .flex{
align-items: center;
}
.news h2{
color: #304E94;
font-weight: 900;
font-size: 1.9em;
text-align: center;
}
.news h2::after{
content: "お知らせ" ;
font-size: 0.3em;
letter-spacing: normal;
padding-left: 6px;
}
.notice-header__more:visited {
    color: #282828;
}
.notice-header__more {
    text-decoration: none;
    color: #282828;
    margin: 23px 0 0 28px;
    position: relative;
    font-weight: 600;
    font-size:0.5em;
    padding: .5em 9px;
    transition: color .3s;
}
.notice-header__more::before {
    content: '';
    display: block;
    background: #282828;
    height: 1px;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
    transition: background .3s;
}
.news ul {
font-size: 0.45em;
text-align: left;
margin-top: 30px;
font-weight: 530;
letter-spacing: 0.1em;
}
@-moz-document url-prefix() {
  /* FireFOXのみ */
.news ul {
   font-weight: 450;
  }
}
.news ul li{
border-bottom: 1px solid #ccc;
padding: 13px 10px 10px 10px;
display: flex;
align-items: flex-start;
width: 90%;
}
.news ul li a{
width: 81%;
}
.news ul li a:hover{
color: #888;
}
.news ul li .naiyou{
width: 81%;
/*padding-top: 24px;*/
}

.news ul li time{
width: 19%;
}
.news ul .cat-0 time .kousin{
background: #4eb709;
border-radius: 2px;
display: inline-block;
font-size: 11px;
min-width: 70px;
height: 26px;
line-height: 26px;
padding: 0 10px;
text-align: center;
color: #fff;
letter-spacing: normal;
margin-top: 0;
}
.news ul .cat-1 time .kousin{
background: #e06c6c;
border-radius: 2px;
display: inline-block;
font-size: 11px;
min-width: 70px;
height: 26px;
line-height: 26px;
padding: 0 10px;
text-align: center;
color: #fff;
letter-spacing: normal;
margin-top: 0;
}
.ev_flex{
display: flex;
justify-content:space-evenly;
margin: 0 auto;
}
.event{
width: 50%;
height: auto;
display: table;
}
.event .flex{
align-items: center;
width: 100%;
}
.event h2{
color: #304E94;
font-weight: 900;
font-size: 1.9em;
text-align: center;
}
.event h2::after{
content: "イベント" ;
font-size: 0.3em;
letter-spacing: normal;
padding-left: 6px;
}
.event .box{
width: 43%;
margin-top: 60px;
position: relative;
}
.event .box img{
    border-color: #d9d9d9;
    border-style: solid;
    border-width: 13px;
    width: auto !important;
}
.event .box p{
font-size: 0.4em;
letter-spacing: 0.1em;
line-height: 2;
color: #000;
padding: 33px 0;
font-weight: 500;
text-align: center;
}
.event .box p a:hover{
color: #888;
}
.event .box .text_box{
position: absolute;
width: 100%;
margin-top: -40px;
  margin-left: auto !important;
  margin-right: auto !important;
background: #FFF;
box-shadow:  0 0 8px gray;
}
.event .box .text_box time{
background: #304E94;
font-size: 0.4em;
padding: 10px;
position: absolute;
top: -6%;
left: -3%;
color: #FFF;
}
.sp_br{
display: none;
}
@media all and (-ms-high-contrast: none) {
/*IEのみ*/
.news{
width: 50%;
display: block;
height: auto;
padding:0px;
}
.event .box{
margin-left: 10px;
margin-right: 10px;
}
.ev_flex{
justify-content: space-around;
}
}
@media screen and (max-width: 1520px){
.event .box img{
border: 16px solid #d9d9d9;
}
}
@media screen and (max-width: 1435px){
.event .box {
    width: 45%;
    margin-top: 60px;
    position: relative;
}
}
@media screen and (max-width: 1375px){
.event .box {
    width: 50%;
    margin-top: 60px;
    position: relative;
    margin-right: 15px;
}
.news ul li time{
margin-right: 13px;
}
}
@media screen and (max-width: 1200px){
.news{
width: 90%;
}
.event{
margin-top: 40px;
width: 90%;
}
.news ul li {
width: 100%;
padding: 30px 0;
}
.event .box {
    width: 40%;
    margin-top: 30px;
    position: relative;
    margin-right:0px;
}
.event .box img{
	width: 80% !important;
}
.news ul li time {
    width: auto;
}
.news ul li time .kousin {
padding: 0 6px;
}
.news ul li time .event {
padding: 0 6px;
}
}
@media screen and (max-width: 760px){
.sp_br{
display: inherit;
}
.news .flex{
display: flex;
}
.event .flex{
display: flex;
}
.notice-header__more {
margin: 9px 0 0 8px;
font-weight: 500;
font-size: 0.4em;
}
.news ul li a{
font-weight: normal;
}
.news h2::after {
    font-size: 0.4em;
}
.study h2 {
line-height: 1.6;
 font-weight: 600;
 font-size: 1em;
}
.study .message h2{
font-size: 0.7em;
}
.news ul{
margin-top: 0;
font-weight: 100;
}
.news ul li {
    width: 100%;
    padding: 30px 0 5px 0;
    line-height: 1.9;
}
.news ul li span{
display: block;
}
.ev_flex{
display: block;
}
.event .box{
width: 90%;
}
.event .box02{
margin-top: 90px;
}
.btn05 {
    display: block;
    width: 90%;
	margin: 20px auto;
	}
}
@media screen and (max-width: 530px){
.news ul li {
    display: block;
    padding-top: 13px;
}
.news ul li .naiyou {
    width: auto;
    padding-top: 13px;
}

}
/* index３メニュー
------------------------------------------------------------*/
.flex_topmenu {
    display: flex;
    justify-content: center;
    width: 90%;
    margin:3%  auto;
    padding: 30px 0;
}
.top_menu{
width: 29%;
margin: 20px;
height: auto;
overflow:hidden; 
background:#253e71;
box-shadow: 0 0 8px grey;
border-radius: 10px;
color: #fff;
font-size: 0.7em;
font-weight: 600;
padding: 20px 0;
position: relative;
}
.top_menu:after {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    position: absolute;
    right: 18px;
    top: 50%;
    font-weight: 700;
    line-height: 10px;
    margin-top: -5px;
    font-size: 2.1rem;
    -webkit-transition: all .4s cubic-bezier(.165,.84,.44,1);
    transition: all .4s cubic-bezier(.165,.84,.44,1);
    -webkit-transition-timing-function: cubic-bezier(.165,.84,.44,1);
    transition-timing-function: cubic-bezier(.165,.84,.44,1);
}
.top_menu:hover{
 color: darkgray;
}
@media screen and (max-width: 1300px){
.flex_topmenu{
margin: 60px auto 0 auto;
}
.top_menu{
font-size: 0.6em;
font-weight: 600;
}
}

@media screen and (max-width: 1150px){
.flex_topmenu{
padding-bottom: 0;
}
.top_menu{
font-size: 0.5em;
font-weight: 600;
}
.top_menu:after {
font-size: 1.6rem;
}
}
@media screen and (max-width: 1000px){
.top_menu{
margin: 10px;
}
}
@media screen and (max-width: 900px){
.flex_topmenu {
    display: block;
}
.top_menu{
width: 100%;
display: block;
}
}
@media screen and (max-width: 750px){
.flex_topmenu {
    margin-top: 116px;
}
}
/* index　診療時間
------------------------------------------------------------*/
.info{
	padding: 0px 0 60px 0;
}
.info .flex{
	justify-content:center;
}
.info h2{
font-weight: 600;
color: #304E94;
}
._btns {
    margin: 30px auto;
}
._btns ._btn-reservce {
    display: block;
    background: #253e71;
    -webkit-transition-duration: 0.2s;
    -o-transition-duration: 0.2s;
    transition-duration: 0.2s;
    color: #fff;
    text-align: center;
    border-radius: 30px;
    padding: 12px;
	font-size: 0.6em;
    font-weight: 500;
}
.map{
width: 49%;
}
.map iframe{
width: 100%;
margin: auto;
}
.sns_wrap{
margin:0 0 30px 30px;
text-align: center;
} 
.sns_inner{
width: auto;
display: flex;
text-align: center;
height: 477px;
}
.sns_inner .insta iframe a{
position: relative;
}
.map h2,.sns_wrap h2{
text-align: left;
font-weight: 900;
font-size: 1.6em;
margin-bottom: 30px;
letter-spacing:normal !important;
}
.map h2::after {
    content: "アクセス";
    font-size: 0.3em;
    letter-spacing: normal;
    padding-left: 6px;
}
.sns_wrap h2::after {
    content: "お知らせ";
    font-size: 0.3em;
    letter-spacing: normal;
    padding-left: 6px;
}
@media only screen and (max-width: 1150px){
.info{
width: 90%;
margin: auto;
padding: 0;
}
.map{
width: 100%;
}
.info .flex03{
display: block;
}
.sns_wrap{
margin: 0;
}
}
@media only screen and (max-width: 760px){
.flex{
display: block;
}
.flex02{
display: block;
}
.study{
padding: 0px;
}
.message{
width: 80%;
margin: auto;
}
.message img{
display: inherit;
width: 100%;
margin-bottom: 30px;
}
.photo_back{
 display: none;
}
.btn02 {
width: 50%;
margin: 30px auto;
}
.btn03 {
width: 50%;
margin: 30px auto;
}
.state{
font-size: 0.9rem;
/*padding: 9px;*/
padding-bottom:9px;
}
.top_menu{
width: 90%;
margin:20px auto 30px auto;
}
.p-article04__title {
    line-height: 1.7;
    margin-top: 7px;
    white-space: normal;
}
.p-article04 a {
    display: block;
    height: auto;
    padding: 11px 20px 13px;
    line-height: inherit;
}
.tab-wrap{
margin-bottom: 0;
}
.info {
border: none;
padding-top: 0;
}

._btns{
margin: 30px auto 20px auto;
}
.map{
width: auto;
margin-top: 0px;
}
.map iframe{
height: 300px;
}
.info{
padding-bottom: 30px;
}
.info h2{
margin-top: 0px !important;
margin-bottom: 0px;
line-height: 1.6;
    font-weight: 600;
    font-size: 1em;
}
.info .flex03{
margin-top: 0;
}
.sns_inner{
display: block;
height: auto;
}
.insta{
	width: 340px;
	margin: auto;
	margin-bottom: 20px;
}
}