@charset 'UTF-8';
/* CSS Document */
/* @media only screen and (max-width: 768px)
{
    body
    {
        min-width: inherit;
    }
}
*/
@media only screen and (max-width: 1000px) {
  body:before {
    display: none;
  }
  body:after {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  /* -------------------------------------------------------- header */
  div.wrapper {
    padding-top: 0;
  }
  div.inner {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  header {
    width: 100%;
    position: relative;
    top: 0;
    padding-top: 2rem;
    padding-bottom: 0;
    box-shadow: none;
    /* box-shadow: 0 0.2rem 0.4rem rgba(0, 0, 0, 0.09); */
    max-height: inherit !important;
  }
  header > div.inner {
    height: auto;
    padding: 0;
    max-height: none;
  }
  header div.top {
    display: none;
  }
  header div.logo {
    /* position: absolute;
	float: none;
	padding: 0;
	margin: 0;
	width: 100%;
	margin-bottom: 1rem; */ /* margin-top: 1rem; */
    float: none;
    width: calc(100% - 4rem);
    padding-bottom: 1rem;
  }
  header div.logo a img {
    /* width: calc(100% - 4rem);
	max-width: 56rem;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	display: block;
	left: 0;
	top: 0;
	padding-top: 0.25rem;
	padding-bottom: 0.25rem; */
    max-width: 36rem;
    width: 100%;
    position: relative;
    top: 0;
  }
  body.top header div.logo img {
    top: 0;
  }
  header div.header-top {
    /* padding-bottom: 1rem; */
    padding-top: 1rem;
    padding-bottom: 4rem;
    position: relative;
  }
  header div.header-top div.utility {
    float: none;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    text-align: center;
  }
  header div.header-top div.utility ul li a {
    font-size: 1.2rem;
  }
  header div.header-bottom {
    padding-bottom: 0;
  }
  /* header div.header-top div.utility div.utility-top {
	text-align: left;
}
header div.header-top div.utility div.utility-top ul {
	margin-bottom: 0.25rem;
	overflow: hidden;
	clear: both;
}
header div.header-top div.utility div.utility-top ul li {
	width: 50%;
	text-align: center;
	display: block;
	float: left;
}
header div.header-top div.utility div.utility-top ul li a {
	background: #fff;
	color: #000;
	border-radius: 0 0 2rem 2rem;
	padding-top: 0.125rem;
	padding-bottom: 0.125rem;
}
header div.header-top div.utility div.utility-top ul li:last-child a {
	padding-top: 0.125rem;
	padding-bottom: 0.125rem;
}
header div.header-top div.utility div.utility-bottom {
	text-align: center;
} */
  footer a span {
    font-size: 2.4rem;
  }
  header div.logo a {
    font-size: 1.8rem;
    /* font-size: 2rem; */
    float: none;
    /* position: relative; */
    /* top: -0.75rem; */
    display: inline-block; /* margin-bottom: 0.5rem; */
  }
  /* -------------------------------------------------------- header ul.utility */
  header > div.inner.clearfix > div.fr {
    float: none;
  }
  /* header ul.utility {
	background: #f0f0f0;
}
header ul.utility {
	width: 100%;
	text-align: center;
}





header div.header-top ul.utility li a {
	font-size: 1.1rem;
	white-space: nowrap;
	padding: 0 0.2rem;
} */
  header div.header-top div.inner {
    padding-bottom: 1.25rem;
  }
  header ul.utility li a::before {
    border: none;
    content: "";
    height: auto;
    left: 0;
    margin: 0;
    position: relative;
    top: 0;
    transform: none;
    width: auto;
  }
}
@media only screen and (max-width: 768px) {
  /* -------------------------------------------------------- header nav */
  header nav {
    left: 0;
    /* top: -1.25rem; */
    overflow: visible;
    width: 100%;
    float: none;
    border: none;
    /* 	position: fixed; */
  }
  header nav.clearfix {
    min-height: inherit !important;
  }
  header nav.clearfix:after {
    display: none;
  }
  header nav div.inner {
    width: 100%;
    padding: 0;
  }
  nav div.inner > ul {
    display: block;
    overflow: hidden;
    /* border-radius: 2rem; */
    width: 100%;
    max-height: 0;
    margin: 0 auto;
    transition: all .5s ease-in-out;
    height: auto;
    /* background: #39454f; */
    padding: 0;
    overflow: hidden;
    float: none;
    top: 0;
    position: relative;
    background: rgba(255, 255, 255, 0.95); /* box-shadow: 0 0.2rem 1.25rem rgba(0,22,38,.1); */
    /* border-top: 0.1rem solid #ccc; */
  }
  header nav ul.active {
    max-height: 100rem;
  }
  header nav ul li {
    font-size: 1.6rem;
    display: block;
    /* border-bottom: 1px solid #e6e6e6; */
    height: 100%;
    margin-right: 0;
    width: 100%; /* background: #39454f; */
  }
  header nav ul li:after {
    display: none;
  }
  header nav ul li:first-child:before {
    display: none;
  }
  header nav ul li:first-child {
    /* border-top: 1px solid #e6e6e6; */
  }
  header nav ul li:last-child {
    border-bottom: none;
  }
  header nav ul li a {
    font-weight: normal;
    position: relative;
    display: block;
    box-sizing: border-box;
    width: 100%;
    /* height: 100%; */
    padding: 1rem 2rem;
    text-align: left;
    font-size: 1.6rem;
    border-bottom: 0.1rem solid #eee;
    transition: 0.25s all;
    min-height: 4rem;
    border-radius: 0;
  }
  header nav ul li:first-child a {
    /* border-top: 0.1rem solid #a99a78; */
  }
  header nav ul li:last-child a {
    /* border-bottom: none; */
  }
  header nav ul li a:before {
    right: 2rem;
    transition: 0.25s all;
    border-right: 0.1rem solid #9f005d;
    border-top: 0.1rem solid #9f005d;
    content: "";
    display: block;
    width: 0.75rem;
    height: 0.75rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    transition: 0.25s all;
    z-index: 1;
  }
  header nav ul li a:after {
    /* width: 1.5rem;
    height: 0.15rem;
    background: #1c3c55;
    right: 2rem;
    position: absolute;
    content: "";
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transition: 0.25s all;
    z-index: 1; */
  }
  header nav ul li:first-child a {
    border-top: 0.1rem solid #eee;
  }
  nav ul li a:hover {
    opacity: 1;
  }
  nav ul li a:hover::after {}
  nav div.inner > ul > li > a:before {}
  nav div.inner > ul > li > a:hover:before {}
  header nav ul li a div {
    display: inline-block;
    vertical-align: middle;
  }
  nav > div.inner > ul > li > div.sub-menu {
    display: none;
  }
  nav ul li.icon-facebook, nav ul li.icon-facebook a {
    background: #f8f8f8;
    text-align: center;
  }
  nav ul li.icon-facebook a:before {
    display: none;
  }
}
@media only screen and (max-width: 768px) {
  header div.header-bottom {
    /* width: calc(100% - 2rem); */
  }
  /* -------------------------------------------------------- menu-button */
  div.menu-button {
    position: absolute;
    top: 1.0rem; /* */
    right: 0;
    display: block;
    width: 4rem;
    height: 4rem;
    z-index: 9999;
  }
  div.menu-button:after {
    position: absolute;
    content: "MENU";
    bottom: -0.5rem;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 1.0rem;
  }
  div.menu-button.active:after {
    content: "CLOSE";
  }
  div.menu-button button.menu-button-trigger {
    /* reset */
    -webkit-appearance: none;
    appearance: none;
    background: none;
    border: none;
    /* border: 0.1rem solid #1c3c55; */
    border-radius: 0.2rem;
    box-sizing: border-box;
    width: 4rem;
    height: 4rem;
    position: relative;
    cursor: pointer;
    transition: 0.25s all;
  }
  div.menu-button button.menu-button-trigger:hover {
    /* background: #f0f0f0; */
  }
  div.menu-button button.menu-button-trigger span {
    position: absolute;
    left: 0;
    display: inline-block;
    box-sizing: border-box;
    width: 2rem;
    height: 0.2rem;
    transition: all .4s;
    background: #9f005d;
  }
  div.menu-button button.menu-button-trigger span:nth-of-type(1) {
    top: 1.3rem;
    left: 1rem;
  }
  div.menu-button button.menu-button-trigger span:nth-of-type(2) {
    top: 1.9rem;
    left: 1rem;
  }
  div.menu-button button.menu-button-trigger span:nth-of-type(3) {
    bottom: 1.3rem;
    left: 1rem;
  }
  div.menu-button.active button.menu-button-trigger span:nth-of-type(1) {
    -webkit-transform: translateY(0.6rem) rotate(-45deg);
    transform: translateY(0.6rem) rotate(-45deg);
  }
  div.menu-button.active button.menu-button-trigger span:nth-of-type(2) {
    opacity: 0;
  }
  div.menu-button.active button.menu-button-trigger span:nth-of-type(3) {
    -webkit-transform: translateY(-0.6rem) rotate(45deg);
    transform: translateY(-0.6rem) rotate(45deg);
  }
  /* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ common */
  section div.inner {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  div.link a::before {
    height: 0.5rem;
    width: 0.5rem;
  }
  div.contents-wrapper {
    padding-top: 0; /* background: #fff; */ /* padding-left: 1rem;
	padding-right: 1rem; */
    padding-left: 1rem;
    padding-right: 1rem;
  }
  body.top div.contents-wrapper {
    /* padding-top: 10rem; */
  }
  div.contents-wrapper > div.inner {
    padding: 0; /* padding-left: 1rem;
	padding-right: 1rem; */
  }
  section {
    font-size: 1.6rem;
    line-height: 1.75;
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  section div.title {
    margin-bottom: 2rem;
    text-align: center;
  }
  section div.title h2 {
    font-size: 2.1rem;
    letter-spacing: 0.125rem; /* transform: scaleY(0.95); */
    height: auto;
    /* 	padding-top: 2rem;
	padding-bottom: 2rem;
 */
    /* padding: 0; */
    border-left: none;
    text-align: center;
  }
  section div.title h2 span {
    left: auto;
    position: relative;
    top: auto;
    transform: none;
    -webkit-transform: none;
    white-space: nowrap;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  section div.titles-wrap div.description {
    margin-bottom: 2rem;
    font-size: 1.4rem;
  }
  /* */
  section.link ul li {
    /* float: none;
	margin-right: 0;
	margin-bottom: 2rem;
	width: 100%; */
  }
  section div.titles-wrap {
    float: none;
    margin-right: 0;
    width: 100%;
  }
  section div.titles-wrap + div {
    float: none;
    width: 100%;
  }
  header div.logo a span {
    font-size: 1.6rem;
  }
  section.topics div.heading h2, section div.column div.heading h2, section.outpatient div.outpatient-list ul li.heading-wrap div.heading h2 {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 480px) {}
@media only screen and (max-width: 1000px) {
  /* section.main-visual div.feature-banners {
	position: relative;
	bottom: auto;
	right: auto;
	width: calc(100.0% - 2rem);
	margin-left: auto;
	margin-right: auto;
	padding-top: 1rem;
	padding-bottom: 1rem;
}
section.main-visual div.feature-banners br.default-inline-block {
	display: inline-block !important;
} */
}
@media only screen and (max-width: 768px) {
  /* --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
  section.main-visual {
    /* height: calc(100vh - 10rem); */
    height: auto;
    box-sizing: border-box;
    padding-top: 0;
    padding-bottom: 0;
    width: calc(100% - 2rem);
    margin-left: auto;
    margin-right: auto;
    position: relative;
    margin-top: 2rem;
  }
  section.main-visual div.main-visual-visual {
    position: relative;
    max-height: 69rem;
  }
  section.main-visual div.main-visual-visual:before {
    /* height: 100%;
    width: 9rem;
    background: rgba(255, 255, 255, 0.90);
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    z-index: 100; */
  }
  section.main-visual div.inner {
    height: 100%;
    min-height: inherit;
  }
  section.main-visual div.main-visual-visual {
    float: none;
    width: 100%;
    /* height: calc(100vh - 10rem);
    max-height: 69rem; */
    overflow: hidden;
  }
  section.main-visual div.main-visual-visual div#slider, section.main-visual div.main-visual-visual div#slider ul.slides, section.main-visual div.main-visual-visual div#slider ul.slides li {
    width: 100%;
    /* height: calc(100vh - 10rem);
    max-height: 69rem; */
  }
  section.main-visual div.main-visual-visual .flexslider .slides img {
    /* position: absolute;
    top: 50%;
    left: 50%;
    height: auto;
    max-width: inherit;
    width: auto !important;
    transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    max-width: 56rem !important; */
  }
  section.main-visual div.main-visual-copy-name {
    font-size: 1.8rem;
    top: -1rem;
  }
  section.main-visual div.main-visual-copy {
    /* font-size: 8.0rem; */
    /* 
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
	width: 100%;
	text-align: center;
	text-shadow: 1px 1px 0 #fff,
               -1px 1px 0 #fff,
               1px -1px 0 #fff,
               -1px -1px 0 #fff;
	background: #fff;
	width: 50%;
	min-width: 24rem; */
    /* background: #fff; */
    padding-top: 6rem;
    padding-bottom: 2rem;
    margin-top: 0;
    margin-bottom: 0;
    position: relative;
    /* font-size: 2.1rem; */
    /* font-size: 2.4rem;
    top: -2rem;
    left: -1rem; */
    transform: none;
    -webkit-transform: none;
    /* padding-left: 1rem;
    padding-right: 1rem; */
    z-index: 200; /* text-shadow: 1px 0 0 #fff, 1px 1px 0 #fff, 0 1px 0 #fff, -1px 1px 0 #fff, -1px 0 0 #fff, -1px -1px 0 #fff, 0 -1px 0 #fff, 1px -1px 0 #fff; */
  }
  section.main-visual div.main-visual-copy-description {
    position: relative;
    transform: translateY(0);
    -webkit-transform: translateY(0);
    width: 100%;
    max-width: 100%;
  }
  section.main-visual div.main-visual-description {
    line-height: 2;
    letter-spacing: 0;
    font-size: 1.4rem;
    white-space: normal;
    width: 100%;
  }
  section.main-visual div.scroll-arrow {
    /*     left: 10%;
    transform: translateX(-50%) translateY(0);
    -webkit-transform: translateX(-50%) translateY(0);
    top: 70vh;
    bottom: 6rem;
    position: absolute;
    z-index: 1000; */
    display: none;
  }
  /* */
}
@media only screen and (max-width: 640px) {}
@media only screen and (max-width: 768px) {
  div.sections {
    flex-wrap: wrap;
  }
  div.sections section.topics, div.sections section.event {
    width: 100% !important;
    margin-right: 0 !important;
  }
  section.topics {
    width: 100%;
    top: 0;
    margin-bottom: 0;
  }
  /* */
  section.topics div.inner {
    padding-left: 2rem;
    padding-right: 2rem;
    float: none;
    width: calc(100% - 2rem);
    margin-left: auto;
    margin-right: auto;
  }
  section.topics div.titles-wrap {
    float: none;
    width: 100%;
    margin-right: 0;
    box-sizing: border-box;
    padding: 0;
  }
  section.topics div.article-list {
    padding-top: 2rem;
    padding-bottom: 2rem;
    box-sizing: border-box;
    float: none;
    width: calc(100%);
  }
  section.topics div.link {
    position: relative;
    left: 1rem;
    bottom: 0;
    width: calc(100% - 2rem);
    margin-bottom: 2rem;
    clear: both;
    overflow: hidden;
  }
  /* --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
  section.about, section.patient, section.training {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
  section.patient div.column.figure::before, section.training div.column.figure::before {
    display: none;
  }
  section.about div.inner div.column.figure div, section.patient div.inner div.column.figure div {
    position: relative;
    padding-top: 66.66%;
    overflow: hidden;
  }
  section.about div.inner, section.patient div.inner, section.training div.inner {
    display: block;
    flex-wrap: nowrap;
    align-items: ;
  }
  section div.column {
    width: calc(100%);
    margin-right: 0;
    position: relative;
  }
  section div.column div.links-wrap ul {
    display: flex;
    flex-wrap: wrap;
  }
  section div.column div.links-wrap ul li {
    width: 48%;
    margin-right: 4%;
  }
  section div.column div.links-wrap ul li:nth-child(2n) {
    margin-right: 0;
  }
  section div.column div.heading h2 {
    margin-bottom: 1rem;
  }
  section div.column.figure {
    width: 100%;
    margin-top: 2rem;
  }
  /* section.greeting div.titles-wrap {
	    float: none;
	    width: 100%;
	    margrin-right: 0;
	  }
	  section.greeting div.titles-wrap div.copy {
	    font-size: 2.2rem;
	    letter-spacing: 0.1rem;
	  }
	  section.greeting div.figures-wrap {
	    float: none;
	    width: 100%;
	    position: relative;
	    top: auto;
	    right: auto;
	    margin-bottom: 1rem;
	  } */
  /* --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
  /* --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
  /* --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
  /* --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
}
@media only screen and (max-width: 640px) {
  section.outpatient div.outpatient-list ul:first-child li:first-child {
    width: 100%;
    max-width: 100%;
    height: 21vw;
    margin-right: 0;
  }
  section.outpatient div.outpatient-list ul li {
    width: 44vw;
    height: 44vw;
    margin-right: min(3vw, 4rem);
    margin-bottom: 1.5rem;
  }
  section.outpatient div.outpatient-list ul:nth-child(2) li:nth-child(2n) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 768px) {
  section.training div.link {
    overflow: hidden;
    clear: both;
  }
}
@media only screen and (max-width: 1200px) {}
@media only screen and (max-width: 768px) {}
@media only screen and (max-width: 480px) {}
@media only screen and (max-width: 768px) {}
@media only screen and (max-width: 480px) {
  div.banner ul {
    flex-wrap: wrap;
  }
  div.banner ul li, div.banner ul li:nth-child(3n) {
    width: 48%;
    max-width: inherit;
    margin-left: auto;
    margin-right: auto;
    display: block;
    margin-bottom: 2rem;
  }
}
@media only screen and (max-width: 768px) {
  footer a[href^="tel:"] {
    /* color: #fff; */
  }
  footer div.logo {
    float: none;
    margin-bottom: 0.5rem;
    padding-right: 0;
    width: 100%;
    text-align: center;
    max-width: 36rem;
    /* margin-left: auto;
    margin-right: auto; */
    /* white-space: nowrap; */
  }
  footer div.logo a {
    font-size: 1.6rem;
  }
  footer div.logo img {
    max-width: 36rem;
    width: calc(100% - 8rem);
  }
  footer div.address {
    text-align: center;
  }
  footer div.tel-fax {
    text-align: center;
  }
  footer div.footer-information {
    float: none;
    text-align: center;
    width: 100%;
  }
  /* header div.logo a img {
    width: 100%;
    width: 100%; max-width: 24rem;
  	height: auto;
  	margin-left: auto;
  	margin-right: auto;
  	display: block;
  	left: 0;
  	top: 1rem;
  	padding-top: 0.25rem;
  	padding-bottom: 0.25rem;
  	position: relative;
  } */
  footer div.inner {
    display: block;
  }
  footer div.inner div.column {
    width: 100%;
  }
}
@media only screen and (max-width: 480px) {
  footer div.inner div.column div.footer-site-map {
    flex-wrap: wrap;
    margin-bottom: 4rem;
  }
  footer div.inner div.column div.footer-site-map ul:nth-child(1), footer div.inner div.column div.footer-site-map ul:nth-child(2) {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 2rem;
  }
  footer div.inner div.column div.footer-site-map ul:nth-child(2) {
    margin-right: 0;
  }
  footer div.inner div.column div.footer-site-map ul:nth-child(3) {
    width: 100%;
    margin-right: 0;
    margin-bottom: 2rem;
  }
  body.top footer div.inner div.column div.footer-site-map {
    margin-bottom: 4rem;
  }
  footer div.inner div.column div.footer-site-map ul {
    font-size: 1.2rem;
  }
  footer div.inner div.column div.footer-site-map ul li.heading a {
    margin-bottom: 0.5rem;
    padding-bottom: 0.75rem;
  }
}
@media only screen and (max-width: 768px) {
  div.page-title div.title h1 {
    font-size: 2.4rem;
    letter-spacing: 0.1rem;
  }
  div.page-title div.description div {
    font-size: 1.4rem;
  }
  /* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- */
  .contentBody {
    width: 100%;
    float: none;
    margin-right: 0;
    margin: 0;
    text-align: left;
  }
  /* aside {
	width: 100%;
	float: none;
	margin: 0;
} */
  .main-aside-wrap.active {
    display: block;
  }
  .main-aside-wrap.active main {
    width: 100%;
    border: none;
  }
  .main-aside-wrap.active main:after {
    display: none;
  }
  .main-aside-wrap.active aside {
    display: block;
    width: calc(100%);
    margin-right: auto;
    margin-left: auto;
  }
}
@media only screen and (max-width: 480px) {
  div.article-wrap div.article {
    width: 100% !important;
    margin-right: 0 !important;
  }
  div.article-wrap div.article-details table th, div.article-wrap div.article-details table td {
    padding: 0;
    display: block;
    word-break: break-all;
  }
}
@media only screen and (max-width: 480px) {
  footer div.logo img {
    max-width: 100%;
    width: 100%;
  }
}
/* 
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- .main-aside-wrap */
@media only screen and (max-width: 768px) {
  .main-aside-wrap {
    display: block;
  }
  .main-aside-wrap main {
    width: 100%;
  }
  .main-aside-wrap aside {
    width: calc(100%);
    margin-left: auto;
  }
  .main-aside-wrap aside div.aside-list-wrap {
    height: 100%;
  }
  .main-aside-wrap aside div.aside-list-wrap div.aside-list {
    position: relative;
    top: 0;
    left: 0;
  }
  aside div.aside-list ul li a {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}
/* ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- category-list */
@media only screen and (max-width: 768px) {
  div.category-list {
    padding-left: 0;
    padding-right: 0;
  }
  div.category-list ul li a div.category-list-details div.update-label div.new {
    font-size: clamp(1.0rem, 1.2vw, 1.2vw);
  }
  div.category-list ul li a div.category-list-details div.update-label div.update {
    font-size: clamp(1.0rem, 1.2vw, 1.2vw);
  }
  div.category-list ul li a div.category-list-details div.heading {
    font-size: clamp(1.4rem, 1.6vw, 1.6vw);
    margin-bottom: 0;
  }
  div.category-list ul li a div.category-list-details div.description {
    font-size: clamp(1.0rem, 1.4vw, 1.4vw);
  }
  div.category-list.update ul li a div.category-list-details div.category-labels-wrap {
    padding-top: 0.5rem;
  }
  div.category-list ul li a div.category-list-details div.category-labels-wrap div.category-label {
    font-size: clamp(1.0rem, 1.2vw, 1.2vw);
    line-height: 1.5;
  }
  /* default */
  div.category-list.default ul li {
    width: 48%;
    margin-right: 4%;
  }
  div.category-list.default ul li:nth-child(3n) {
    margin-right: 4%;
  }
  div.category-list.default ul li:nth-child(2n) {
    margin-right: 0;
  }
  /* box */
  div.category-list.box ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 2rem;
    box-sizing: border-box;
  }
  div.category-list.box ul li:nth-child(3n) {
    margin-right: 0;
  }
  div.category-list.box ul li a {
    padding: 1.5rem;
    padding-right: 4rem;
  }
}
@media only screen and (max-width: 768px) {
  div.category-list.patient ul li {
    width: 48%;
    margin-right: 4.0%;
  }
  div.category-list.patient ul li:nth-child(3n) {
    margin-right: 4.0%;
  }
  div.category-list.patient ul li:nth-child(2n) {
    margin-right: 0;
  }
}
@media only screen and (max-width: 480px) {
  div.category-list.patient ul li a {
    display: block;
  }
  div.category-list.patient ul li a div.thumbnail {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
  }
  div.category-list.patient ul li a div.thumbnail + div.category-list-details {
    width: 100%;
  }
  div.category-list.patient ul li a div.category-list-details div.heading {
    text-align: center;
    width: 100%;
  }
}