@charset "UTF-8";
/* CSS Document */

/*-----------------------------------------------
 __Bace
-----------------------------------------------*/
html {
    font-size: 62.5%;
}
body{
    font-family: 'Noto Sans JP', sans-serif;
}
strong{
	font-weight:bold;
}
.Wrapper{
    padding-top: 100px;
	max-width:1400px;
    min-width: 960px;
    margin: 0 auto;
}
.Low .Wrapper{
    padding-top: 120px;
}

/*-----------------------------------------------
 __Header
-----------------------------------------------*/
#Header{
    z-index: 1000;
	width:100%;
    height: 80px;
    background-color: rgba(255,255,255,0.92);
    box-shadow: 0 0 10px  rgba(0,0,0,0.4);
    position: fixed;
    top: 0;
    left: 0;
}
.Low #Header{
    height: 100px;
}
#Header .HeaderMain{
	max-width:1400px;
    margin: 0 auto;
    position: relative;
}
#Header .CoprName{
	width:155px;
	height:44px;
    font-size: 1px;
    text-indent: -9999px;
    background: url("../refer/logo_corp_color.png") no-repeat 0 0;
    background-size: contain;
    position: absolute;
    top: 18px;
    left: 45px;
}
.Low #Header .CoprName{
    top: 30px;
}
#Header .CoprName a{
	display:block;
	width:100%;
	height:100%;
	font-size:1px;
	text-indent:-9999px;
}
#Header .Navigation .Nav{
    z-index: 1000;
    display: flex;
    position: absolute;
    right: 60px;
    top: 22px;
}
#Header .Navigation .Nav li{
    font-weight: bold;
    font-size: 1.8rem;
    margin-right: 2.5em;
}
#Header .Navigation .Nav li.Home,
#Header .Navigation .Nav li.Inq,
#Header .Navigation .Nav li.Privacy,
#Header .Navigation .Nav li.Transp{
    display: none;
}
#Header .Navigation .Nav li.Corp{
    margin-right: 0;
}
#Header .Navigation .Nav li.NavPatient,
#Header .Navigation .Nav li.NavMedical{
    width: 6em;
}
#Header .Navigation .Nav li a{
    display: inline-block;
    color: #6F1589;
    font-weight: bold;
    text-decoration: none;
    transition: .3s;
    transform: scale(1);
  }
#Header .Navigation .Nav li a:hover {
    transform: scale(1.1);
}
#Header .Navigation .Nav li > ul > li{
    position: relative;
}
#Header .Navigation .Nav > li > ul,
#Header .Navigation .Nav > li > ul li ul{
    display: none;
    width: 15em;
}
#Header .Navigation .Nav > li > ul li ul{
    width: 15em;
    position: absolute;
    top: -1px;
    left: -101%;
}
#Header .Navigation .Nav > li.NavPatient > ul li ul{
    width: 16em;
    position: absolute;
    top: -1px;
    left: -16em;
}
#Header .Navigation .Nav > li.NavMedical > ul li ul{
    width: 20em;
    position: absolute;
    top: -1px;
    left: -20em;
}
#Header .Navigation .Nav > li > ul li,
#Header .Navigation .Nav > li > ul li ul li{
    border-bottom: 1px solid rgba(178,152,190,0.3);
    border-left: 1px solid rgba(178,152,190,0.3);
    border-right: 1px solid rgba(178,152,190,0.3);
    background-color: rgba(255,255,255,1);
    margin-right: 0;
}
#Header .Navigation .Nav > li > ul li:first-child,
#Header .Navigation .Nav > li > ul li ul li:first-child{
    border-top: 1px solid rgba(178,152,190,0.3);
}
#Header .Navigation .Nav > li > ul li a,
#Header .Navigation .Nav > li > ul li ul li a{
    display: block;
    width: 100%;
    height: 100%;
    padding: 0.3em 0.5em 0.3em 1.5em;
    background: url("../refer/ic_nav.png") no-repeat 8px 50%;
    background-size: 6px;
}
#Header .Navigation .Nav > li > ul li a:hover,
#Header .Navigation .Nav > li > ul li ul li a:hover{
    background-color: rgba(118,30,142,0.1);
    transform: scale(1);
}

/*Hamburger Menu*/
#Header #nav-drawer #nav-input,
#Header #nav-drawer #nav-open,
#Header #nav-drawer #nav-close{
	display:none;
}

#Header .Pnkz ul{
    z-index: 0;
    display: flex;
    position: absolute;
    right: 60px;
    top: 60px;
}
#Header .Pnkz li{
    font-size: 1.4rem;
    margin-right: 1em;
}
#Header .Pnkz.Patient li{
    font-size: 1.6rem;
}
#Header .Pnkz li::after{
    content: ">";
    padding-left: 1em;
}
#Header .Pnkz li:last-child{
    margin-right: 0;
}
#Header .Pnkz li:last-child::after{
    content: "";
    padding-left: 0;
}
#Header .Pnkz li a{
    display: inline-block;
    color: #0000FF;
    transition: .3s;
    transform: scale(1);
}
#Header .Pnkz li a:hover{
    color: #0000FF;
    transform: scale(1.1);
}
/*-----------------------------------------------
 __Footer
-----------------------------------------------*/
footer{
    width: 100%;
    height: 340px;
    padding-top: 75px;
    background: url("../refer/bg_footer.png") no-repeat 50% 0;
    background-size: 100% 517px;
}
footer .FootMain{
    display: flex;
    justify-content: space-between;
    width: 960px;
    margin: 0 auto 70px;
}
footer .FootMain .CorpName{
    width: 120px;
    height: 34px;
    font-size: 1px;
    text-indent: -9999px;
    background: url("../refer/logo_corp_white.png") no-repeat 0 0;
    background-size: contain;
}
footer .FootMain .CorpName a{
    display: block;
    width: 100%;
    height: 100%;
}
footer .NavFoot > ul{
    display: flex;
}
footer .NavFoot ul li{
    font-size: 1.3rem;
    margin-right: 2em;
}
footer .NavFoot ul li li{
    margin-right: 0;
}
footer .NavFoot ul li a{
    color: #FFF;
    text-decoration: none;
}
footer .NavFoot > ul > li > a{
    color: #FFFF00;
}
footer .NavFoot ul li a:hover{
    text-decoration: underline;
}
footer .NavFoot > ul > li > ul{
    margin-top: 0.5em;
}
footer .NavFoot > ul > li > ul ul{
    margin-top: 0.5em;
    margin-left: 1em;
}
footer .Copyright{
    color: #FFF;
    font-size: 1.1rem;
    text-align: center;
}
footer .PageTop{
    display: none;
    width: 40px;
    height: 40px;
    font-size:1px;
    text-indent: -9999px;
    border-radius: 20px;
    position: fixed;
    right: 40px;
    bottom: 40px;
    background: rgba(220,189,215,1.00) url("../refer/ic_pagetop.png") no-repeat 50% 50%;
    background-size: 16px;
}
footer .PageTop a{
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 20px;
}
/*-----------------------------------------------
 __Article
-----------------------------------------------*/
.Article{
	margin:0 auto;
}
.Article > *{
    max-width: 1020px;
    min-width: 900px;
    font-size: 1.6rem;
    margin-left: auto;
    margin-right: auto;
    padding-left: 30px;
    padding-right: 30px;
}
.Article .BrDB,
.Article .BrSP{
    display: none;
}
.Article a{
    color: #0000FF;
}
.Article a:hover{
    color: #007FFF;
}

.Article strong{
	font-weight:bold;
}
.Article strong *{
	font-weight:bold;
}
.Article table {
	border-top: 1px solid #CCC;
	border-left: 1px solid #CCC;
	margin:0 auto 1em;
}
.Article table th,
.Article table td {
	padding:0.5em;
	border-bottom: 1px solid #CCC;
	border-right: 1px solid #CCC;
}
.Article table th{
	background:#EFEFEF;
}
.Article table ol,
.Article table ul{
	margin-bottom:0;
}
.Article table .ListNum li,
.Article table .ListIc li{
	margin-bottom:0;
}

.Article table caption{
	font-weight:bold;
	text-align:left;
	margin-bottom:0.5em;
}
.Article p{
	margin-bottom:1em;
}
.Article p.ListIc{
	padding-left:1em;
	position:relative;
}
.Article p.ListIc::before{
	content:"●";
	color:#A9A9A9;
	position:absolute;
	left:0;
	top:0;
}

.Article ul{
	margin-bottom:1em;
}
.Article ol{
	margin-bottom:1em;
}
.Article dl{
	margin-bottom:1em;
}
.Article figure{
	text-align:center;
	margin:2em auto 0.5em;
}
.Article figure figcaption{
	font-weight:bold;
	text-align:left;
	margin-bottom:0.5em;
}
.Article iframe{
    display: block;
	margin-bottom:1em;
}
.Article sup{
	font-size:1.0rem;
	vertical-align:0.5em;
	font-weight:inherit;
}
.Article sub{
	font-size:1.0rem;
	vertical-align:0;
	font-weight:inherit;
}
.Article .Red{
	color:#F00;
}
.Article .Flex{
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
.Article .AlignCenter{
	text-align:center;
}
.Article .AlignRight{
	text-align: right;
}
.Article .ListIc li{
	padding-left:1em;
	position:relative;
}
.Article .ListIc li::before{
	width:1em;
	content:"●";
	color:#A9A9A9;
	text-align:center;
	transform:scale(0.5,0.5);
	position:absolute;
	top:0;
	left:0;
}
.Article .ListIc li .ListIc li::before{
	transform:scale(0.3,0.3);
}
.Article .ListNum li{
	list-style-type:decimal;
	margin-left:2em;
	margin-bottom:0.5em;
}
.Article .ListNote li{
	padding-left:1em;
	position:relative;
}
.Article .ListNote li::before{
	width:1em;
	content:"※";
	color:#F00;
	text-align:center;
	position:absolute;
	top:0;
	left:0;
}
.Article .LinkMaterial{
    padding-left: 20px;
    background: url("../refer/ic_link_ materials.png") no-repeat 0 100%;
    background-size: 16px;
}

.Article .CornerName{
    font-size: 3.5rem;
    color: #6F1589;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 2px;
    text-underline-offset: 7px;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0.4em;
    margin-bottom: 1em;
    border-bottom: 1px solid #BDE0E0;
    position: relative;
}
.Article h1.CornerName{
    font-size: 3.5rem;
    font-weight: normal;
    margin-top: 0;
    margin-bottom: 1em;
}
.Article .CornerName .Page{
    font-size: 2.4rem;
    text-decoration: none;
    position: absolute;
    right: 0;
    bottom: 20px;
}


.Article .Pagenation{
    margin-top: 100px;
    margin-bottom: 60px;
    text-decoration: none;
}
.Article .Pagenation .NextPage{
    display: table;
    margin: 0 auto 1em;
    text-align: center;
}
.Article .Pagenation .NextPage a{
    transition: .3s;
    transform: scale(1);
}
.Article .Pagenation .NextPage a:hover{
    transform: scale(1.05);
}
.Article .Pagenation .Flex{
    display: flex;
    color: #6F1589;
    justify-content: space-between;
}
.Article .Pagenation a{
    display: block;
    width: 100%;
    height: 100%;
    color: #6F1589;
    font-weight: bold;
    text-decoration: none;
    transition: .3s;
    transform: scale(1);
}
.Article .Pagenation a:hover{
    transform: scale(1.3);
}
.Article .Pagenation .Prev a{
    padding-left: 0.5em;;
    background:url("../refer/ic_nav_left.png") no-repeat 0 50%;
    background-size: 0.3em;
}
.Article .Pagenation .Next a{
    padding-right: 0.5em;;
    background:url("../refer/ic_nav.png") no-repeat 100% 50%;
    background-size: 0.3em;
}
.Article .Pagenation .Prev.None,
.Article .Pagenation .Next.None{
    opacity: 0;
}
.Article .Pagenation .Prev.None a,
.Article .Pagenation .Next.None a{
    cursor: default;
    border:1px solid #F00;
}
.Article .Pagenation .Pager{
    display: flex;
    justify-content: center;
}
.Article .Pagenation .Pager li{
    margin-left: 5px;
    margin-right: 5px;
}
.Article .Pagenation .Pager li a{
    padding-left: 5px;
    padding-right: 5px;
}
.Article .Pagenation .PG01 .Pager li.P01 a,
.Article .Pagenation .PG01 .Pager li.P01 a:hover,
.Article .Pagenation .PG02 .Pager li.P02 a,
.Article .Pagenation .PG02 .Pager li.P02 a:hover,
.Article .Pagenation .PG03 .Pager li.P03 a,
.Article .Pagenation .PG03 .Pager li.P03 a:hover,
.Article .Pagenation .PG04 .Pager li.P04 a,
.Article .Pagenation .PG04 .Pager li.P04 a:hover,
.Article .Pagenation .PG05 .Pager li.P05 a,
.Article .Pagenation .PG05 .Pager li.P05 a:hover,
.Article .Pagenation .PG06 .Pager li.P06 a,
.Article .Pagenation .PG06 .Pager li.P06 a:hover,
.Article .Pagenation .PG07 .Pager li.P07 a,
.Article .Pagenation .PG07 .Pager li.P07 a:hover,
.Article .Pagenation .PG08 .Pager li.P08 a,
.Article .Pagenation .PG08 .Pager li.P08 a:hover,
.Article .Pagenation .PG09 .Pager li.P09 a,
.Article .Pagenation .PG09 .Pager li.P09 a:hover,
.Article .Pagenation .PG10 .Pager li.P10 a,
.Article .Pagenation .PG10 .Pager li.P10 a:hover{
    color: #AFAFAF;
    cursor: default;
    transform: scale(1);
}


.Article .Pnkz ul{
    z-index: 0;
    display: flex;
    flex-wrap: nowrap;
    margin-bottom: 0.5em;
}
.Article .Pnkz li{
    white-space: nowrap;
    font-size: 1.4rem;
    margin-right: 1em;
}
.Article .Pnkz.Patient li{
    font-size: 1.6rem;
}
.Article .Pnkz li::after{
    content: ">";
    padding-left: 1em;
}
.Article .Pnkz li:last-child{
    margin-right: 0;
}
.Article .Pnkz li:last-child::after{
    content: "";
    padding-left: 0;
}
.Article .Pnkz li a{
    display: inline-block;
    color: #0000FF;
    transition: .3s;
    transform: scale(1);
}
.Article .Pnkz li a:hover{
    color: #0000FF;
    transform: scale(1.1);
}
.Article .LinkBox{
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-end;
    justify-content: space-between;
    margin-top: 60px;
}
.Index .Supervisor,
.Article .Supervisor{
    display: table;
    margin-right: 0;
    margin-bottom: 10px;
}
.Index .Supervisor{
    margin-right: 30px;
    margin-left: auto;
}
.Index .Supervisor h3,
.Article .Supervisor h3{
    display: table-cell;
    font-size: 1.4rem;
    white-space: nowrap;
    color: #000;
    margin-top: 0;
    vertical-align: top;
}
.Index .Supervisor p,
.Article .Supervisor p{
    display: table-cell;
    font-size: 1.4rem;
    white-space: nowrap;
}
.Index .Supervisor p .Link,
.Article .Supervisor p .Link{
    display: inline-block;
    color: #FFF;
    font-size: 1.2rem;
    text-decoration: none;
    padding: 0.1em 2em 0.1em 1em;
    margin-left: 1em;
    border-radius: 1em;
    background:#6F1589 url("../refer/ic_next_w.png") no-repeat 92% 50%;
    background-size: 6px;
    transition: .3s;
    transform: scale(1);
}
.Index .Supervisor p .Link:hover,
.Article .Supervisor p .Link:hover{
   transform: scale(1.1);
}

@media only screen and (max-width: 1024px) and (orientation:portrait){
.Wrapper{
    min-width: inherit;
}
footer{
    min-width: inherit;
}
footer .FootMain{
    width: auto;
    display: block;
    margin-left: 3vw;
    margin-right: 3vw;
}
footer .FootMain .CorpName{
    margin-bottom: 20px;
}
footer .NavFoot ul li{
    margin-right: 1em;
}
.Article > *{
min-width: 768px;
}
.Article .BrDB{
    display: block;
}
.Transparency .CoprName,
.Privacy .CornerName,
.Inq .CornerName{
    margin-left: 3vw;
    margin-right: 3vw;
}

}
@media only screen and (max-width: 1024px) and (orientation:landscape){
footer{
    min-width: 960px;
}
}

@media only screen and (max-width: 767px) and (orientation:portrait){
.Wrapper{
    width: 100vw;
	max-width:inherit;
    min-width:100vw;
    padding-top: 74px;
    margin: 0 auto;
}
.Low .Wrapper{
    padding-top: 74px;
}

footer{
    min-width: inherit;
}
.Article > *{
min-width: inherit !important;
margin-left: 3vw;
margin-right: 3vw;
padding-left: 0;
padding-right: 0;
}
.Article .BrDB{
    display: none;
}
.Article .BrSP{
    display: block;
}
.Article .Pnkz{
    display: none;
}
.Index .Supervisor{
    margin-right: 0;
}
.Article .CornerName{
    font-size: 2.0rem;
}
.Article h1.CornerName{
    font-size: 2.0rem;
    font-weight: normal;
    margin-top: 0;
    margin-bottom: 1em;
}

.Article .Pagenation a{
    transition: 0s;
}
.Article .Pagenation a:hover{
    transform: scale(1);
}
.Inq .Inq{
    width: 90vw !important;
}

/*-----------------------------------------------
 __Header
-----------------------------------------------*/
#Header{
    height: 60px;
}
.Low #Header{
    height: 60px;
}
#Header .HeaderMain{
    
}
#Header .CoprName{
    width: 127px;
    height: 36px;
    top: 12px;
    left: 3vw;
}
.Low #Header .CoprName {
    top: 12px;
}
#Header .Navigation .Nav {
    display: block;
    position: inherit;
    right: inherit;
    top: inherit;
}
#Header .Navigation .Nav li{
    margin: 0;
    border-bottom: 1px solid #6F1589;
}
#Header .Navigation .Nav li a{
    display: block;
    width: 100%;
    height: 100%;
    font-weight: normal;
    padding: 0.5em 0;
    animation: none;
	transform: none;
	transition: unset;
}
#Header .Navigation .Nav li a:hover{
    animation: none;
	transform: none;
	transition: unset;
}
#Header .Navigation .Nav li.Home,
#Header .Navigation .Nav li.Inq,
#Header .Navigation .Nav li.Privacy,
#Header .Navigation .Nav li.Transp{
    display: block;
}
#Header .Navigation .Nav li.Home a{
    min-height: 7vw;
    font-weight: normal;
    font-size: 1.4rem;
    padding-left: 24vw;
    background: url("../refer/logo_corp_color.png") no-repeat 0 50%;
    background-size: 20vw;
}
#Header .Navigation .Nav li.NavPatient,
#Header .Navigation .Nav li.NavMedical{
    width: auto;
}
#Header .Navigation .Nav > li > ul{
    width: auto;
    display: block;
}
#Header .Navigation .Nav > li > ul > li > ul{
    display: none !important;
}
#Header .Navigation .Nav > li > ul > li{
    border: 0;
}
#Header .Navigation .Nav > li > ul li:first-child{
    border: 0;
}
#Header .Navigation .Nav > li > ul > li a{
    width: auto;
    margin-left: 20px;
    padding: 0;
    border-top: 1px solid rgba(111,21,137,0.2);
}
#Header .Navigation .Nav > li > ul > li a:hover{
    background-color: inherit;
}
#Header .Navigation .Nav > li > ul li a,
#Header .Navigation .Nav > li > ul li ul li a{
    background-image: none;
    padding-top: 0.3em;
    padding-bottom: 0.3em;
}
#Header .Pnkz{
    display: none;
}


/*-----------------------------------------------
 __Hamburger Menu
-----------------------------------------------*/
#Header #nav-drawer #nav-open{
	display: block;
}

/*チェックボックス等は非表示に*/
.nav-unshown {
  display:none;
}

/*アイコンのスペース*/
#nav-open {
	display:block;
	width: 50px;
	height: 50px;
	font-size:12px;
	color:#00612E;
	text-align:center;
	vertical-align: middle;
	position: fixed;
	top:5px;
	right:5vw;
	z-index:9999;
}
/*ハンバーガーアイコンをCSSだけで表現*/
#nav-open span {
  display: block;
  position: absolute;
	top:15px;
	left:10px;
  height: 2px;/*線の太さ*/
  width: 30px;/*長さ*/
  border-radius: 1px;
  background:#6F1589;
  content: '';
  cursor: pointer;
}
#nav-open span:nth-of-type(2) {
	top:25px;
	left:10px;
}
#nav-open span:nth-of-type(3) {
	top:35px;
	left:10px;
}
/*アイコン回転*/
#nav-open span {
	transition: all .4s;
}
#nav-open.Active span:nth-of-type(1){
	transform: translateY(10px) rotate(-405deg);
}
#nav-open.Active span:nth-of-type(2){
  transform: translateY(0px) rotate(405deg);
}
#nav-open.Active span:nth-of-type(3){
  transform: translateY(-10px) rotate(405deg);
}

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;/*はじめは隠しておく*/
  position: fixed;
  z-index: 9999;
  top: 0;/*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: black;
  opacity: 0;
  transition: .3s ease-in-out;
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;/*最前面に*/
  width: calc(100vw - 90px);/*右側に隙間を作る（閉じるカバーを表示）*/
  max-width:calc(100vw - 90px);/*最大幅（調整してください）*/
  height: 100%;
  background: #333;/*背景色*/
  transition: .3s ease-in-out;/*滑らかに表示*/
  transform: translateX(-105%);/*左に隠しておく*/
  padding: 5vw;
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block;/*カバーを表示*/
  opacity: .5;
}

#nav-input:checked ~ #nav-content {
 	transform: translateX(0%);/*中身を表示（右へスライド）*/
 	box-shadow: 6px 0 5px rgba(0,0,0,.3);
	background: rgba(255,255,255,0.98);
}


/*-----------------------------------------------
 __Footer
-----------------------------------------------*/
footer{
    width: 100vw;
    height: 530px;
    background: url("../refer/bg_footer_sp.png");
    background-size: cover;
}
footer .FootMain{
    display: flex;
    width: 90vw;
    justify-content: space-around;
    margin: 0 auto 18vw;
}
footer .NavFoot ul{
    display: block;
}
footer .NavFoot ul li{
    font-size: 1.4rem;
    margin-right: 0;
}
footer .NavFoot ul li li{
}
footer .NavFoot ul li ul{
    margin-top: 0.5em;
    margin-bottom: 1em;
}
footer .FootMain .CorpName{
    width: 34.2vw;
    height: 9.7vw;
    margin-bottom: 20px;
}
footer .PageTop{
    font-size: 1rem;
    position: fixed;
    right: 5vw;
    bottom: 3vw;
    background-size: 15px;
}

}
