/* ==========================================================
*
*  Page Frame Setting
*
========================================================== */

@charset "UTF-8";

@import url("https://fonts.googleapis.com/css?family=Noto+Sans:400,700");

/* ==========================================================
*
* Icon font
*
========================================================== */
@font-face {
  font-family: 'iuhw';
  src:
    url('../../_asset/fonts/iuhw.ttf?7nv367') format('truetype'),
    url('../../_asset/fonts/iuhw.woff?7nv367') format('woff'),
    url('../../_asset/fonts/iuhw.svg?7nv367#iuhw') format('svg');
  font-weight: normal;
  font-style: normal;
}

a[href^='http'] > span:after,
a[target='_blank'] > span:after,
a[href$='.pdf'] > span:after,
a[href$='.doc'] > span:after,
a[href$='.docx'] > span:after,
a[href$='.xlsx'] > span:after,
a[href$='.xls'] > span:after,
[class^="icnf-"] > span:after,
[class^=" icnf-"] > span:after,
[class*=" icnf-"] > span:after,
[class^="icnf-"]:before,
[class^=" icnf-"]:before,
[class^="icnf-"]:after,
[class^=" icnf-"]:after,
.snaviBody > h4 > a > span:after,
.icnf-nav a:before,
.icnf-nav li:before,
.icnf-down a:after,
.icnf-rbtn:after,
.nolink > span:before,
.discList > li:before,
#examTime h2 > a:after,
#gNavi > ul> li > a > span:after,
.megaMenu > ul > li > a:before{
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'iuhw' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-size:inherit;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*a[href^='http'] > span:after,
a[href$='.pdf'] > span:after,
a[href$='.doc'] > span:after,
a[href$='.xlsx'] > span:after{
    margin-left:0.5em;
}*/

a[href^='http'] > span:after,
a[class='icnf-blank'] > span:after,
a[class='icnf-pdf'],
a[href$='.pdf'] > span:after,
a[href$='.doc'] > span:after,
a[href$='.docx'] > span:after,
a[href$='.xls'] > span:after,
a[href$='.xlsx'] > span:after{
   display:inline-block;
   content:"";
   width:14px;
   height:14px;
   margin-left:5px;
   vertical-align:middle;
   background-image: url('../../img/icons.png');
   background-repeat: no-repeat;
}


a[href^='http'] > span:after,
a[class='icnf-blank'] > span:after{
   /*content:" \e901";*/
   background-position:right 0;
}

a[class='icnf-pdf'],
a[href$='.pdf'] > span:after{
   /*content:" \e900";
   font-size:inherit;*/
   background-position:0 0;
}

a[href$='.doc'] > span:after,
a[href$='.docx'] > span:after{
    /*content:" \eae1";*/
   background-position:-14px 0;
}

a[href$='.xls'] > span:after,
a[href$='.xlsx'] > span:after{
   background-position:-28px 0;
}

a[class='icnf-arrow'] > span:after{
    content:" \f05b";
}
/*a[class='icnf-blank'] > span:after{
    content:" \e901";
}*/
a[class='icnf-anker'] > span:after{
    content:" \f078";
}

/* for Sp --------------------*/
@media screen and (max-width: 738px) {

    /*a[class='icnf-pdf'],
    a[href$='.pdf'] > span:after{
        font-size:inherit;
    }*/

}


/* ==========================================================
*
* Basic Setting
*
========================================================== */
html {
    font-size: 62.5%;/* 16px x 0.625 = 10px(=1rem) */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
 }

body {
    font-size: 1.4rem;
    line-height:125%;
    /*font-family:-apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI","Noto Sans Japanese","ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;*/
    color:#333333;

    font-family:"Noto Sans", sans-serif;

}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

/*a{
    text-decoration:none;
    color:inherit;
}*/

* a:hover{
    text-decoration:underline;
    color:#0000ff;
}

/* for Sp --------------------*/
@media screen and (max-width: 738px) {

    body{
        font-size: 1.6rem;
    }

}

/* ==========================================================
*
* 共通要素
*
========================================================== */

/*********************************
 本文幅
********************************/
.columbox{
    display:block;
    overflow:hidden;
    position:relative;
}

/* for Sp --------------------*/
@media screen and (max-width: 738px) {

    .columbox{
        width:100%;
    }

}

/*********************************
 Font Size Setting
*********************************/
.pc .fsz_1{
    font-size: 1.4rem;
    line-height:125%;

    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.pc .fsz_2{
    font-size: 1.6rem;
    line-height:125%;

    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
}


/* for Sp --------------------*/
@media screen and (max-width: 738px) {

    .columbox{
        width:100%;
        /*padding:0 1em;*/
    }
}

/* ==========================================================
*
* Header
*
========================================================== */
/*#headsection{
    display:block;
    height:166px;
    position:relative;
}*/

#header{
    display:block;
    /*overflow:hidden;*/
    height:115px;
    width:100%;
    border-top:solid 4px #333333;
    border-bottom:solid 1px #333333;
    background-color:#ffffff;
    position:fixed;
    top:0;
    left:0;
    z-index:255;
}


#headerUpper{
    display:block;
    overflow:hidden;
    position:relative;
    width:100%;
    /*max-width:1200px;*/
    min-width:1020px;
    margin:0 auto;
    height:110px;
    font-size:1.1em;
    /*font-size:14px;*/
}

#meinLogo{
    display:inline-block;
    overflow:hidden;
    position:absolute;
    top:35px;
    left:40px;
}

#headerUpper > .contactInfo{
    display:inline-block;
    overflow:hidden;
    text-align:right;
    position:absolute;
    top:15px;
    right:40px;
}

#headerUpper > .contactInfo  > p > .addr{
    margin-right:1em;
}
#headerUpper > .contactInfo > p > .tel{
    margin-right:1em;
}
#headerUpper > .contactInfo p > a{
    color:#1d7507;
}

/* for Sp --------------------*/
@media screen and (max-width: 738px) {
    /*#headsection{
        height:45px;
    }*/

    #header{
        height:45px;
        width:100%;
    }

   /*.#header:after{
        content:"";
        display:block;
        overflow:hidden;
        width:100%;
        height:100%;
        position:fixed;
        top:0;
        left:100%;
        background-color:rgba(0,0,0,0.85);
        opacity:0.0;
        -webkit-transition: opacity ease-out 0.35s;
        -moz-transition: opacity ease-out 0.35s;
        -ms-transition: opacity ease-out 0.35s;
        -o-transition: opacity ease-out 0.35s;
        transition: opacity ease-out 0.35s;
    }

    open #header:after{
        left:0;
        opacity:1.0;
    }*/

    #headerUpper{
        max-width:100%;
        min-width:100%;
        margin:0 auto;
        height:auto;
        font-size:14px;
    }

    #meinLogo{
        display:block;
        overflow:hidden;
        position:relative;
        top:auto;
        left:auto;
        height:20px;
        width:auto;
        margin:10px 10px 0;
    }

    #meinLogo img{
        width:auto;
        height:20px;
    }

    #headerUpper > .contactInfo{
        display:none;
    }

}


/********************************
 文字サイズセレクタ
********************************/
dl#letterSelector {
    display:inline-block;
    overflow:hidden;
    height:36px;
    line-height:36px;

    position:absolute;
    bottom:20px;
    right:270px;
}

dl#letterSelector > dt{
    display:inline-block;
    overflow:hidden;
    padding-right:10px;
    float:left;
    font-size:14px;
}
dl#letterSelector > dd{
    display:inline-block;
    overflow:hidden;
    height:36px;
    float:left;
}

dl#letterSelector > dd > label{
    display:inline-block;
    overflow:hidden;
    height:36px;
    margin:0 2px;
}

dl#letterSelector > dd > label > span{
    display:inline-block;
    overflow:hidden;
    width:36px;
    height:36px;
    text-align:center;
    line-height:36px;
    font-size:14px;
    border:1px solid #000000;
    cursor:pointer;

    border-radius:5px;
    -webkit-border-radius:5px;
    -moz-border-radius:5px;
}

dl#letterSelector > dd > label > input[type="radio"]{
    display:none;
}


dl#letterSelector > dd > label > input[type="radio"]:checked + span{
    background-color:#6e6e6e;
    color:#ffffff;
}


/* for Sp --------------------*/
@media screen and (max-width: 738px) {

    dl#letterSelector {
        display:none;
    }
}

/********************************
 検索窓
********************************/
#serchWind{
    display:inline-block;
    overflow:hidden;
    height:34px;
    position:absolute;
    bottom:20px;
    right:40px;
    padding:0;
}


#serchWind input[type="text"]{
    width:162px;
    height:34px;
    line-height:34px;
    font-size:14px;
    padding:0 5px;
}

form {
   margin:0;
   display:block;
   overflow:hidden;
   padding:0;
}

div[id^='serchWind']{
    border:1px solid #6e6e6e;
    background-color:#ffffff;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}

div[id^='serchWind'] > form{
    vertical-align:bottom;
}



div[id^='serchWind'] input[type="text"]{
    border:0;
    outline: 0;
    background-color:#ffffff;
    /*float:left;*/
}

div[id^='serchWind'] button[type="submit"]{
    width:40px;
    height:34px;
    border:0;
    outline: 0;
    background-color:#6e6e6e;
    float:right;
    cursor:pointer;
}

div[id^='serchWind'] button[type="submit"]:active{
    background-color:#cccccc;
}

div[id^='serchWind'] button[type="submit"] > span{
    display:none;
}

div[id^='serchWind'] button[type="submit"]:before {
    content: "\e90c";
    color: #ffffff;
    font-size: 16px;
}

#serchWind_sp{
    display:none;
}

/* for Sp --------------------*/
@media screen and (max-width: 738px) {
    #serchWind{
        display:none;
    }

    #serchWind_sp{
        display:block;
        overflow:hidden;
        width:80%;
        height:34px;
        position:relative;
        bottom:auto;
        right:auto;
        margin:30px auto 0;
    }

    div[id^='serchWind']{
        border-radius:0;
        -webkit-border-radius:0;
        -moz-border-radius:0;
    }

    #serchWind_sp input[type="text"]{
        width:85%;
        height:auto;
        line-height:34px;
        font-size:14px;
        padding:0 5px;
    }

    #serchWind_sp button[type="submit"]{
        width:15%;
        height:34px;
    }

}

/* ==========================================================
*
* Global Navi
*
========================================================== */
#nav{
    display:block;
    /*overflow:hidden;*/
    width:100%;
    height:50px;
    position:fixed;
    top:115px;
    left:0;
    z-index:255;
}

#nav a{
    text-decoration:none;
    color:#333333;
}
#gNavi{
    background-color:#cccccc;
}

#gNavi > ul{
    display:block;
    /*letter-spacing: -.4em;*/
    overflow:visible;
    width:1020px;
    height:50px;
    margin:0 auto;
}

#gNavi > ul > li{
    /*display:inline-block;*/
    display:block;
    float:left;
    width:calc(100% / 6);
    width:170px;
    /*letter-spacing: normal;*/
}

#gNavi > ul > li > a{
    display:block;
    overflow:hidden;
    position:relative;
    width:100%;
    text-align:center;
}


#gNavi > ul > li > a > span{
    display: block;
    overflow: hidden;
    height: 22px;
    text-align: center;
    font-size: 1.6rem;
    line-height: 22px;
    margin: 14px 0;
    font-weight:bold;
    border-right: 1px solid #333333;
}

#gNavi > ul > li:first-child > a > span{
    border-left:1px solid #333333;
}
/*#gNavi > ul > li:last-child > a > span{
    border-right:none;
}*/

#gNavi > ul > li > a:hover{
    /*background-color: #ffffcc;
    color:#ffffff;*/
    text-decoration:none;
}

#spMenu,
#spExtra,
a.icnf-menu > span{
    display:none;
}

/* for Sp --------------------*/
@media screen and (max-width: 738px) {
    #nav{
        width:100%;
        height:100%;
        top:0;
        left:100%;
    }

    #nav a{
        /*text-decoration:none;
        color:#000000;*/
    }

    #gNavi{
        display:block;
        width:100%;
        height:calc(100% - 45px);
        /*width: 84.375vw;*/
        letter-spacing:normal;
        font-size: 14px;
        overflow-y:auto;
        position:absolute;
        top:45px;
        left:0;
  
        -webkit-transition: left ease-out 0.35s;
        -moz-transition: left ease-out 0.35s;
        -ms-transition: left ease-out 0.35s;
        -o-transition: left ease-out 0.35s;
        transition: left ease-out 0.35s;
   }

    #gNavi > ul{
        display:block;
        overflow:hidden;
        width:95%!important;
        height:auto;
        margin:0 auto;
    }

    #gNavi > ul > li{
        display:block;
        width:100%!important;
        overflow:hidden;
    }

    #gNavi > ul > li{
        border-bottom:1px dotted #000000;
    }

    #gNavi > ul> li > a{
        padding:0.5rem 1rem;
    }

    #gNavi > ul > li[id^='n_'] > a > span:after{
       content: "\f067";
       float:right;
    }

    #gNavi > ul> li[id^='n_'].opened > a > span:after{
       content: "\f068";
    }

    #gNavi > ul > li:first-child > a > span{
        border-left:none;
    }

    /*#gNavi > ul > li > a:hover {
        background-color:unset;
        color:initial;
    }*/

    #gNavi > ul> li > a > span{
        height:auto;
        line-height:auto;
        margin: 14px 0;
        font-weight:bold;
        border-right:none;
        /*font-size:1.8rem;*/
    }

    #spMenu{
        display:inline-block;
        width:40px;
        height:40px;
        text-align:center;
        position:absolute;
        top:0;
        left:-50px;
   }

   a.icnf-menu {
        display: inline-block;
        overflow: hidden;
        width: 45px;
        height: 45px;
        line-height: 64px;
    }

    a.icnf-menu:hover{
        text-decoration:none;
    }
    a.icnf-menu:before {
        content: "\e902";
        display:inline-block;
        overflow:hidden;
        font-size: 30px;
    }

    /*Menu Open*/
    body.open{
        overflow:hidden;
        height:100%;
    }

    /*.open #nav{
        height:100%;
    }*/

   .open #gNavi{
        left:-100%;
    }

    .open #nav a.icnf-menu:before{
        content: "\e903";
    }

    #spExtra{
        display:block;
        overflow:hidden;
        margin:30px 0;
        text-align:center;
    }

}

/********************************
 Mega Menu
********************************/
.megaMenu{
    display:block;
    overflow:hidden;
    width:100%;
    height:auto;
    max-height:0;
    position:absolute;
    top:50px;
    left:0;
    font-size:14px;
    background-color:rgba(200,200,200,0.95);
}

.megaMenu > ul{
    padding: 50px 25px 25px;
    width:1020px;
    margin:0 auto;
}

.megaMenu > ul:before{
    content:"";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 20px 0 20px;
    border-color: #cccccc transparent transparent transparent;
    position:absolute;
    top:0px;
    left:0;
}


.megaMenu > ul > li {
    display: inline-block;
    /*overflow: hidden;*/
    overflow:visible;
    width: 33%;
    margin:0.5em 0;
   /*text-align:center;*/
	vertical-align: top;
	padding-left: 1em;
	text-indent: -1em;
}

.megaMenu > ul > li > a{
    display:block;
    /*overflow:hidden;*/
    color:#ffffff!important;
}
.megaMenu > ul > li > a:hover > span{
   text-decoration:underline!important;
}

.megaMenu > ul > li > a:before{
    content:" \f05b";
    margin-right: 0.5em;
}

.megaMenu a[href$='.pdf'] > span:after{
    color:#ffffff!important;
}


#gNavi > ul> li:hover .megaMenu{
    height:auto;
    max-height: 370px;
    -webkit-transition: max-height ease-out 0.75s;
    -moz-transition: max-height ease-out 0.75s;
    -ms-transition: max-height ease-out 0.75s;
    -o-transition: max-height ease-out 0.75s;
    transition: max-height ease-out 0.75s;
}


/* for Sp --------------------*/
@media screen and (max-width: 738px) {

    .megaMenu{
        display:none;
        overflow:hidden;
        width:100%;
        height:auto;
        max-height:initial;
        position:relative;
        top:auto;
        left:auto;
        font-size:14px;
    }

    .megaMenu > ul{
        padding: 0;
        width:auto;
    }

    .megaMenu > ul:before{
        border:none;
    }

    .megaMenu > ul > li {
        display:block;
        width: 100%;
        margin:0;
    }

    .megaMenu > ul > li > a{
        padding: 1em 1em;
    }
    
    #gNavi > ul> li:hover .megaMenu{
        height:auto;
        max-height: initial;
    }
    
}


/* ==========================================================
*
* 本文
*
========================================================== */
#contents{
    display:block;
    overflow:hidden;
    position:relative;
    width:100%;
    min-height:890px;
    margin-top:166px;
    /*padding-top:-166px;*/
}
/*#contents:before{
    content:" ";
    display:block;
    overflow:hidden;
    width:100%;
    height:166px;
}*/


#contentBody{
    width:1020px;
    margin:0 auto;
}


/* for Sp --------------------*/
@media screen and (max-width: 738px) {

    #contents{
        margin-top:45px;
    }

    #contentBody{
        width:100%;
    }
}



/* ==========================================================
*
* 本文末ブロック
*
========================================================== */
#endcolum{
    display:block;
    overflow:hidden;
    position:relative;
    width:100%;
    min-height:68px;
    clear:both;
}


/* for Sp --------------------*/
@media screen and (max-width: 738px) {

}

/********************************
 Page Top Button
********************************/
#toTop {
    display: block;
    overflow: hidden;
    text-align: right;
    padding: 15px 15px;
    position:relative;
    right:auto;
    bottom:auto;
    z-index:150;
    display:none;
}

#toTop.fixed{
    position:fixed;
    right:0;
    bottom:0;
}

/*#toTop > a.icnf-cup {
    display: inline-block;
    overflow: hidden;
    text-decoration:none;
    width:35px;
    height:35px;
    text-align:center;
    line-height:35px;
}

#toTop > a.icnf-cup:before {
    content: "\f139";
    font-size: 35px;
}
*/

#toTop > a.icnf-cup {
    display: inline-block;
    overflow: hidden;
    text-decoration:none;
    width:35px;
    height:35px;
    line-height:35px;
    background:url('/img/btn_top.png') no-repeat 0 0;
    background-size:cover;

    /*background-color:#1d7507;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius:50%;*/
}

#toTop > a.icnf-cup:hover{
    opacity:0.5;
}


#toTop > a.icnf-cup > span{
    display:none;
}


/* for Sp --------------------*/
@media screen and (max-width: 738px) {

    #toTop > a.icnf-cup:hover{
        opacity:1.0;
    }

}


/* ==========================================================
*
* フッタ
*
========================================================== */
#footsection{
    display:block;
    /*overflow:hidden;*/
}

#footer{
    display:block;
    overflow:hidden;
    position:relative;
    width:100%;
    background-color:#cccccc;

}

#footContent{
    display:block;
    overflow:hidden;
    width:1020px;
    /*height:280px;*/
    min-height:280px;
    margin:106px auto 80px;
    /*padding:60px 0 80px;*/
    text-align:center;
    position:relative;
    font-size:1.2rem;
}


/* for Sp --------------------*/
@media screen and (max-width: 738px) {

    #footContent{
        width:100%;
        height:auto;
        margin:0 0;
        padding:0 20px;
    }
}

/********************************
 Footer Navi
********************************/
#footContent > dl{
    display:block;
    overflow:hidden;
    width:33%;
    height:100%;
    min-height:10em;
    float:left;
    border-right:solid;
    border-width:1px;
    border-color:#333333;
}

#footContent > dl > dt{
    padding-bottom:1em;
    font-size:1.6rem;
    font-weight:bold;
}

#footContent > dl > dd{
    /*font-size:1.0em;*/
    font-size:1.2em;
}    


#footContent > dl > dd > a{
    display:block;
    overflow:hidden;
    padding:1em 0;
    text-decoration:none;
    color:#333333;
}


/* for Sp --------------------*/
@media screen and (max-width: 738px) {

    #footContent > dl{
        width:100%;
        float:none;
        border-right:none;
        border-bottom:1px solid #333333;
        padding:30px 0;
    }

    #footContent > dl > dd{
        font-size:1.4rem;
    } 

}

/********************************
 Hospital info
********************************/
#footContent > .contactInfo{
    display:inline-block;
    overflow:hidden;
    width:34%;
    text-align:center;
    font-size:1.1em;

    position: absolute;
    top: 50%;
    right:0;
    transform: translateY(-50%);
    -webkit- transform: translateY(-50%);
}

#footContent > .contactInfo > .addr{
    margin:20px 0;
    line-height:155%;
}
#footContent > .contactInfo > .tel{
    margin:0.5em 0;
}


/* for Sp --------------------*/
@media screen and (max-width: 738px) {

    #footContent > .contactInfo{
        display:block;
        width:100%;
        font-size:1.2rem;

        padding:30px 0;
        position: relative;
        top: auto;
        right:auto;
        transform:none;
        -webkit- transform:none;
    }
}

/********************************
 Coptright
********************************/
#endLine{
   display:block;
    overflow:hidden;
    position:relative;
    width:100%;
    height:43px;
    text-align:center;
    background-color:#333333;
}

#endLine > small{
    font-size:1.0rem;
    line-height:43px;
    color:#ffffff;
}


/* for Sp --------------------*/
@media screen and (max-width: 738px) {

}
