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

/*-----------------------------------------------------------*/
/*ヘッダー*/

#header_wrap #header {
    max-width: 100%;
    /*align-items: baseline;*/
	align-items: flex-end;
}
#header_wrap #header::after{
    content: '';
    display: block;
    width: 66.08%;/*978*/
    height: 8.24rem;/*97+1.69rem*/
    background-color: rgba(255,255,255,0.90);
    position: absolute;
    top: -1.69rem;
    right: 0;
}

#header_wrap.toppage #header .logo{
    width: 27.50vw;/*407*/
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: baseline;
}
#header_wrap.toppage #header .logo img{
    width: 100%;
    height: auto;
}

#header_wrap.toppage #header #g-nav{
    width: 66.08%;/*978*/
    position: relative;
    z-index: 1;
}

/*-----------------------------------------------------------*/
/*ファーストビュー*/

section#firstview{
    position: relative;
}

#firstview .inner{
    width: 100%;
    height: 53.78vw;/*796*/
    position: relative;
    margin-top: -8.78rem;
}

section#firstview .txtwrapper{
    width: 53.78vw;/*796*/
    height: 41.35vw;/*612*/
    background-color: #155193;
    color: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

section#firstview .txtwrapper dl{
    width: 22.97vw;/*340*/
    height: 26.08vw;/*386*/
    position: absolute;
    top: 4.73vw;/*70*/
    left: 7.70vw;
    display: flex;
    flex-direction: column;
    gap: 6.62rem 0;/*98*/
}

section#firstview .txtwrapper dl dt{
    font-size: 2.43vw;/*36*/
    line-height: 167%;
    letter-spacing: 0.25em;
    position: relative;
}
section#firstview .txtwrapper dl dt::after{
    content: '';
    display: block;
    width: 26.35vw;/*390*/
    height: 1px;
    background-color: #fff;
    position: absolute;
    bottom: -3.72rem;/*55*/
    left: 0;
}
section#firstview .txtwrapper dl dd{
    font-size: 1.35vw;/*20*/
    line-height: 200%;
    letter-spacing: 0.1em;
}

/*スライド*/
section#firstview .slidewrapper{
    width: 66.08vw;/*978*/
    height: 50.88vw;/*753*/
    position: absolute;
    top: 0;
    right: 0;
}

/*slick dots設定*/
.slick-dotted.slick-slider {
}
.slick-dots {
    line-height: 0;
    position: absolute;
    bottom: 1.01vw;/*15*/
    left: -3.50vw;
    z-index: 1;
}
.slick-dots::before{
    content: "";
    display: block;
    width: 20.14vw;/*298*/
    height: 4.53vw;/*67*/
    background-color: #fff;
    box-shadow: 0px 0px 8px 0px rgba(94,137,153,0.55);
    border-radius: 0px;
    position: absolute;
    bottom: -1.8vw;
    left: -13.0vw;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    width: 1.08vw;/*16*/
    height: 1.08vw;/*16*/
    margin: 0 0.34vw;/*5*/
    padding: 0;
    cursor: pointer;
}
.slick-dots li button {
    display: block;
    outline: none;
    cursor: pointer;
    color: transparent;
    width: 1.08vw;/*16*/
    height: 1.08vw;/*16*/
    background-color: #fff;
    border: 1px solid #155193;
    box-sizing: border-box;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}
.slick-dots li button:before {
    content: '';
    display: block;
    width: 1.08vw;/*16*/
    height: 1.08vw;/*16*/
    background-color: #fff;
    border: 1px solid #155193;
    box-sizing: border-box;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
    background-color: #155193;
}

/*slick 個別設定*/
section#firstview .slidewrapper .slider{
    width: 100%;
}
section#firstview .slidewrapper .slider img{
    width: 100%;
    height: auto;
}

section#firstview .slidewrapper .slick-next, section#firstview .slidewrapper .slick-prev{
    position: absolute;
    z-index: 2;
    width: 2.36vw;/*35*/
}
/*次へ*/
section#firstview .slidewrapper .slick-next{
    bottom: 1.01vw;/*15*/
    left: -7.64vw;/*113*/
}
/*前へ*/
section#firstview .slidewrapper .slick-prev{
    bottom: 1.69vw;/*25*/
    left: -14.12vw;/*209*/
}
/*区切り線*/
section#firstview .slidewrapper .slick-prev::after{
    content: '';
    display: block;
    width: 3.11vw;/*46*/
    height: 3.11vw;/*46*/
    background-image: url("../image/top/slide_icon03.png");
    background-repeat: no-repeat;
    background-size: 3.11vw;/*46*/
    position: absolute;
    left: 2.77vw;/*41*/
    bottom: -1.76vw;/*26*/
}

/*-----------------------------------------------------------*/
/*一般のみなさま，医師・会員のみなさま*/

section#a01{
    padding: 6.76rem 0 0;
}
#a01 .inner{
    max-width: 86.49rem;/*1280*/
    width: 100%;
    margin: 0 auto;
    display: flex;
    gap: 0 2.57rem;/*38*/
    justify-content: space-between;
}

#a01 .column{
    width: 50%;
}
#a01 .column dl dt{
    padding-bottom: 1.01rem;/*15*/
    border-bottom: 8px solid;
}
#a01 .column.general dl dt{
    border-color: #F28E1E;
}
#a01 .column.member dl dt{
    border-color: #155193;
}
#a01 .column dl dt h1{
    font-size: 1.89rem;/*28*/
    text-align: center;
    letter-spacing: 0.10em;
}
#a01 .column dl dd{
    margin: 1.35rem auto 0;/*20*/
}

#a01 .column ul{
    margin: 1.01rem auto 0;/*15*/
    display: flex;
    flex-wrap: wrap;
    gap: 1.15rem 1.01rem;/*17,15*/
}

#a01 .column ul li{
    width: calc( 50% - 0.505rem );
}
#a01 .column ul li a{
    width: 100%;
    padding: 0 1.35rem;/*20*/
    height: 4.46rem;/*66*/
    font-size: 1.28rem;/*19*/
}

/*-----------------------------------------------------------*/
/*お知らせ*/

section#a02{
    padding: 7.97rem 0 0;/*118*/
}
#a02 .inner{
    width: 100%;
    margin: 0 auto;
}

/**/

#a02 .inner h1{
    width: 100%;
    margin: 0 auto 1.82rem;/*27*/ 
    text-align: center;
}
#a02 .inner h1 dl{
    position: relative;
    padding-bottom: 1.69rem;/*25*/
}
#a02 .inner h1 dl::after{
    content: '';
    display: block;
    width: 7.77rem;/*115*/
    height: 4px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
#a02 .inner h1 dl dt{
    font-size: 2.03rem;/*30*/
}
#a02 .inner h1 dl dt span{
    color: #155193;
}
#a02 .inner h1 dl dd{
    font-size: 1.89rem;/*28*/
    letter-spacing: 0.05em;
}

#a02 .inner h1.blue dl::after{
    background-color: #155193;
}
#a02 .inner h1.blue dl dt span{
    color: #155193;
}
#a02 .inner h1.green{
    margin: 4.73rem auto 0;/*70*/
}
#a02 .inner h1.green dl::after{
    background-color: #00A498;
}
#a02 .inner h1.green dl dt span{
    color: #00A498;
}

/**/

#a02 .inner .listwrap{
    width: 100%;
}

#a02 .inner .listwrap h2{
    font-size: 2.03rem;/*30*/
    text-align: center;
    padding: 2.70rem 0 1.35rem;/*40,20*/
    color: #155193;
    background-color: #F2F8FC;
}

#a02 .inner .pickwrap{
    position: relative;
    padding: 0 0 3.04rem;/*45*/
}
#a02 .inner .pickwrap::before{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #F2F8FC;
    background-size: cover;
    z-index: -3;
}
#a02 .inner .normalwrap{
    position: relative;
    padding: 3.38rem 0 0;/*50*/
}
#a02 .inner .normalwrap::before{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #F9F9F9;
    background-size: cover;
    z-index: -3;
}
#a02 .inner .seminarwrap{
    position: relative;
    padding: 1.35rem 0 0;/*20*/
}

#a02 .inner .listwrap ul{
    max-width: 74.32rem;/*1100*/
    width: 100%;
    margin: 0 auto;
}
#a02 .inner .listwrap ul li{
    width: 100%;
    height: 4.73rem;/*70*/
    padding: 0 3.38rem;/*50*/
    border-bottom: 1px solid #C7C7C7;
    border-left: 1px solid #C7C7C7;
    border-right: 1px solid #C7C7C7;
    box-sizing: border-box;
}
#a02 .inner .listwrap ul li:first-child{
    border-top: 1px solid #C7C7C7;
}

#a02 .inner .listwrap ul li .inner{
    width: 100%;
    height: 4.73rem;/*70*/
    display: flex;
    align-items: center;
    gap: 0 1.35rem;/*20*/
    position: relative;
}

#a02 .inner .listwrap ul li dl{
    display: flex;
    align-items: center;
    gap: 0 1.01rem;/*15*/
}
#a02 .inner .listwrap ul li dl dt{
    font-size: 0.88rem;/*13*/
    color: #666666;
    letter-spacing: 0.05em;
}

#a02 .inner .listwrap ul li dl dd a{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 8.31rem;/*123*/
    height: 2.36rem;/*35*/
    font-size: 0.95rem;/*14*/
    border: 1px solid;
    box-sizing: border-box;
    background-color: #fff;
}
#a02 .inner .listwrap ul li dl dd a.news{
    color: #155193;
    border-color: #155193;
}
#a02 .inner .listwrap ul li dl dd a.info{
    color: #C64B26;
    border-color: #C64B26;
}
#a02 .inner .listwrap ul li dl dd a.event{
    color: #006837;
    border-color: #006837;
}

#a02 .inner .listwrap ul li .title{
    font-size: 1.22rem;/*18*/
    position: relative;
}

/*矢印*/
/*ピックアップはピンのアイコンを付ける*/
#a02 .inner .listwrap ul li .inner.pins::before{
    content: '';
    display: block;
    background-image: url("../image/common/icon_pins.png");
    background-repeat:no-repeat;
    background-size: 1.35rem 1.82rem;/*20,27*/
    width: 1.35rem;
    height: 1.82rem;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: -2.23rem;/*33*/
}
/*各投稿 右端に矢印を付ける*/
#a02 .inner .listwrap ul li .inner::after{
    content: '';
    display: block;
    background-image: url("../image/common/arrow_blue.png");
    background-repeat: no-repeat;
    background-size: 1.62rem 0.74rem;/*24,11*/
    width: 1.62rem;
    height: 0.74rem;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 1.35rem;/*20*/
}
#a02 .inner .listwrap .seminarwrap ul li .inner::after{
    background-image: url("../image/common/arrow_green.png");
}

/**/

#a02 .inner .tolist{
    width: 100%;
    padding: 3.72rem 0;/*55*/
}
#a02 .inner .tolist.news{
    background-color: #F9F9F9;
}

#a02 .inner .tolist a{
    margin: 0 auto;
    width: 22.30rem;/*330*/
    height: 4.73rem;/*70*/
    font-size: 1.22rem;/*18*/
}
#a02 .inner .tolist.seminar a{
    width: 27.03rem;/*400*/
}

/*-----------------------------------------------------------*/
/*フッター*/

#footer_wrap{
    width: 100%;
    background-color: #155193;
}
#footer_wrap .inner{
    max-width: 74.32rem;/*1100*/
    width: 100%;
    margin: 0 auto;
    padding: 2.30rem 0 3.24rem;/*34,48*/
}
#footer_wrap .inner, #footer_wrap .inner a{
    color: #fff;
}

/*インフォメーション*/
#footer_wrap .column_top{
    position: relative;
}
#footer_wrap .column_top::after{
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #fff;
}

#footer_wrap .column_top dl{
    width: calc( 100% - 7.44rem );
    margin: 0 auto 2.03rem;/*30*/
    display: flex;
    justify-content: space-between;
    align-items: end;
}
#footer_wrap .column_top dl dt{
    width: 27.57rem;/*408*/
}
#footer_wrap .column_top dl dd{
    width: 36.15rem;/*535*/
    letter-spacing: 0.1em;
}

/*サイトマップ*/
#footer_wrap .column_bottom{
    max-width: 46.62rem;/*690*/
    width: 100%;
    margin: 1.35rem auto 0;/*20*/
    position: relative;
}
#footer_wrap .column_bottom ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 0 3.38rem;/*50*/
}
/* 最後のコンテンツを左寄せにする指定 */
#footer_wrap .column_bottom ul::after {
    content: '';
    display: block;
    width: calc( 100% / 3 - 3.38rem );
    height: 0;
}
#footer_wrap .column_bottom ul li{
    width: calc( 100% / 3 - 3.38rem );
    margin: 0.81rem 0 0;/*12*/
}
/*2列目にあるliだけ少し横幅を長めに*/
#footer_wrap .column_bottom ul li:nth-child(3n+2){
    width: 13.18rem;
}
#footer_wrap .column_bottom ul li a{
    position: relative;
    padding-left: 1.55rem;/*23*/
}
#footer_wrap .column_bottom ul li a::before{
    content: '';
    display: inline-block;
    background-image: url("../image/common/icon_sitemap.png");
    background-repeat: no-repeat;
    background-size: 0.81rem 0.95rem;/*12,14*/
    width: 0.81rem;
    height: 0.95rem;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
}

/*コピーライト*/
#footer_wrap .copy{
    margin: 4.73rem auto 0;/*70*/
    font-size: 0.88rem;/*13*/
    letter-spacing: 0.2em;
    text-align: center;
}

/*-----------------------------------------------------------*/

/*ipad*/
@media screen and (max-width: 1200px) {
}

/*ipad横向き時*/
@media screen and (max-width: 1200px) and (orientation: landscape) {
    
}

/*ipad縦向き時*/
@media screen and (max-width: 1200px) and (orientation: portrait) {
    #a01 .inner {
        max-width: 86.49%;
        width: 86.49%;
    }

}

/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
