@charset "utf-8";

/* Base Layout
======================================== */
html,
body {
  height: 100%;
}
figure {
	margin: 0;
	overflow: hidden;
	position: relative;
	text-align: left;
}
img {
	max-width: 100%;
	vertical-align: top;
	width: auto;
}
a {
  color: rgb(179, 148, 104);
	outline: none;
	text-decoration: none;
}
ul,
ol {
	margin: 0;
	padding: 0;
}
ul {
  list-style: none;
}
table {
	margin: 1.5em 0;
}
table th {
	font-weight: normal;
	padding-right: 2em;
	text-align: left;
	vertical-align: top;
	white-space: nowrap;
	width: 23%;
}
table tr > th,
table tr > td {
	padding-bottom: 0.375em;
	padding-top: 0.375em;
}
hr {
  background-color: rgb(27,18,31);
  border: 0;
  height: 1px;
  margin: 2em 0;
	opacity: 0.7;
}
blockquote {
	border-left: 1px solid #605A63;
	font-style: italic;
	margin: 2em auto 2em 2.5em;
	padding-left: 1.4334em;
}

/* Common Layout
======================================== */
body {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  line-height: 1.75;
  min-width: 320px;
  position: relative;
}
br.hide {
  display: none;
}
.sp {
  display: none;
}
#wrapper {
  height: 100%;
}
@media all and ( max-width: 767px ) {
  .sp {
    display: inherit;
  }
}

/* Loading
---------------------------------------- */
body {
	visibility: hidden;
}
#loader {
	background-color: #fff;
	bottom: 0;
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 1000;
}
#loader::before {
	background: url(../img/pagetop01.png) no-repeat center;
	background-size: cover;
	content: "";
	display: block;
	height: 5em;
	left: 50%;
	margin: -2.75em 0 0 -3.125em;
	position: absolute;
	top: 50%;
	width: 6.25em;
}
#loader::after {
	color: #444;
	content: "LOADING...";
	display: block;
	font-family: 'Lato', sans-serif;
	font-size: 0.8125em;
	letter-spacing: 0.05em;
	margin: 2.5em 0 0 1em;
	position: relative;
	top: 50%;
	text-align: center;
}
#loader #progress_bar {
	background-color: rgb(179, 148, 104);
	bottom: 0;
	height: 5px;
	position: absolute;
	width: 0;
}

/* Header
======================================== */
#header {
  height: 100%;
}
@media screen and ( max-width: 1204px ) {
  #header {
		height: auto;
  }
}

/* Hero
---------------------------------------- */
#hero {
  overflow: hidden;
  position: relative;
}
#key_visual figure {
  background-position: top center;
  background-size: cover;
  height: calc(100vh - 5.5em);
}
#key_visual figure img {
  opacity: 0;
}
@media screen and ( max-width: 1204px ) {
  #hero {
    padding-top: 3.625em;
  }
  #key_visual figure {
    height: calc(100vh - 3.625em);
  }
}

/* Global
---------------------------------------- */
#global {
    background-color: #fff;
    border-bottom: 1px solid #ddd;
    border-top: 3px solid rgb(134,128,111);
    box-sizing: border-box;
    height: 5.8em;
    padding: 0 1.5625%;
    position: absolute;
    width: 100%;
    z-index: 10;
}
#global::before {
  background-color: #453e34;
  content: "";
  display: block;
  height: 3px;
  left: 0;
  position: absolute;
  top: -3px;
  width: 25%;
}
#global::after {
  clear: both;
  content: "";
  display: block;
}
.logo {
  font-size: 1em;
  margin: auto;
}
.logo a {
  display: inline-block;
  vertical-align: middle;
}
.logo a img {
  width: 13.125em;
  max-width: 180px;
}
.logo .category img {
  vertical-align: middle;
  width: 8.4375em;
}
#global .logo {
  float: left;
  padding-top: 0.8em;
}
#global .logo .category {
  position: absolute;
  left: 15px;
  top: 4.8em;
}
#global .main {
  float: right;
  margin-right: 1em;
}
#global .main li {
  float: left;
}
#global .main li a {
  box-sizing: border-box;
  color: #1a1a1a;
  display: block;
  line-height: 1.5;
  padding: 1.4em 0.65em;
  padding-bottom: 0.6em;
  position: relative;
  text-align: center;
}
#facility #global .main li a[href*="/facility"]::before,
#formula #global .main li a[href*="/formula"]::before,
#offtime #global .main li a[href*="/offtime"]::before,
#clinic #global .main li a[href*="/clinic"]::before,
#doctor #global .main li a[href*="/doctor"]::before,
#staff #global .main li a[href*="/staff"]::before,
#medical #global .main li a[href*="/medical"]::before,
#vaccination #global .main li a[href*="/vaccination"]::before,
#visitcare #global .main li a[href*="/visitcare"]::before,
#global .main li a::before {
  background-color: #aa936d;
  bottom: -3px;
  content: "";
  display: block;
  height: 3px;
  left: 50%;
  margin-left: 0;
  position: absolute;
  -webkit-transition: margin-left 0.3s, width 0.3s;
  transition: margin-left 0.3s, width 0.3s;
  width: 0;
}
#facility #global .main li a[href*="/facility"]::before,
#formula #global .main li a[href*="/formula"]::before,
#offtime #global .main li a[href*="/offtime"]::before,
#clinic #global .main li a[href*="/clinic"]::before,
#doctor #global .main li a[href*="/doctor"]::before,
#staff #global .main li a[href*="/staff"]::before,
#medical #global .main li a[href*="/medical"]::before,
#vaccination #global .main li a[href*="/vaccination"]::before,
#visitcare #global .main li a[href*="/visitcare"]::before,
#global .main li a:hover::before {
  margin-left: -2.5em;
  width: 5em;
}
#global .main li a span {
  display: block;
}
#global .main li a .en {
  font-size: 0.625em;
  letter-spacing: 0.25em;
  margin-top: -0.25em;
}
#global .main li a .jp {
  font-size: 1.0625em;
  letter-spacing: 0.2em;
}
#global .sub {
  display: none;
}
@media screen and ( min-width: 1204px ) {
  #global.sticky {
    left: 0;
    position: fixed;
    top: 0;
		width: 100%;
  }
}
@media screen and ( min-width: 1205px )  {
  #global {
    padding: 0 0 0 10px;
  }
  #global .logo,
  #global .main {
    font-size: 72%;
  }
  #global .main li a {
      padding-bottom: 0.6em;
      padding-top: 1.75em;
  }
}
@media screen and ( min-width: 1360px )  {
  #global .logo,
  #global .main {
    font-size: 80%;
  }
}
@media screen and ( max-width: 1204px ) {
  #global {
    background-color: transparent;
    border-bottom: none;
    border-top-width: 2px;
    height: 100%;
    left: 100%;
    padding: 0;
    position: fixed;
    top: 0;
    width: 100%;
  }
  #global::before {
    height: 2px;
    left: -100%;
    top: -2px;
  }
  #global .logo {
    font-size: 80%;
    left: -100%;
    padding-top: 0.2em;
    position: relative;
  }
  #global .logo::before {
    background-color: #fff;
    border-top: 2px solid rgb(134,128,111);
    content: "";
    display: block;
    height: 4.375em;
    left: 0;
    position: absolute;
    top: -2px;
    width: 1000%;
    z-index: -1;
  }
  #global .inner {
    background: url(../img/bg_stethoscope01.png) no-repeat -21% 70% #fff;
    background-size: 117%;
    box-sizing: border-box;
    height: 100%;
    left: 0;
    overflow: hidden;
    overflow-y: auto;
    padding-top: 5%;
    position: absolute;
    top: 0;
    transition: left 0.6s;
    width: 40%;
    z-index: 10;
  }
  #switch_global:checked ~ div nav .inner {
    left: -40%;
  }
  #global .main {
    float: none;
    margin-right: 0;
  }
  #global .main li {
    float: none;
    margin: 0.175em 1.2em;
  }
  #global .main li a {
    display: inline;
    padding: 0;
    text-align: left;
  }
	#global .main li a::before,
  #global .main li.current a::before,
  #global .main li a:hover::before {
    display: none !important;
  }
  #global .main li a span {
    display: inline;
  }
  #global .main li a .en {
    display: inline-block;
    text-indent: 0.1em;
  }
  #global .main li a .jp::before {
    content: "";
    display: block;
    margin-bottom: -0.4em;
  }
  #global .sub {
    display: block;
    margin: 1em 1.2em;
  }
  #global .sub li {
    display: inline-block;
    margin-right: 0.8em;
  }
  #global .sub li a {
    color: rgba(69,62,52,0.9);
    font-size: 0.875em;
    letter-spacing: 0.3em;
  }
}
@media screen and ( max-width: 1204px ) {
  #global .inner {
    width: 50%;
  }
  #switch_global:checked ~ div nav .inner {
    left: -50%;
  }
  #global .logo .category {
    position: relative;
    top: inherit;
    left: 1em;
  }
}
@media screen and ( max-width: 640px ) {
  #global .inner {
    padding-top: 0;
    width: 60%;
  }
  #switch_global:checked ~ div nav .inner {
    left: -60%;
  }
}
@media screen and ( max-width: 540px ) {
  #global .inner {
    padding-top: 0;
    width: 70%;
  }
  #switch_global:checked ~ div nav .inner {
    left: -70%;
  }
}
@media screen and ( max-width: 440px ) {
  #global .inner {
    padding-top: 0;
    width: 100%;
  }
  #switch_global:checked ~ div nav .inner {
    left: -100%;
  }
}

/* Reserve
---------------------------------------- */
.reserve {
  background-color: #fff;
  border: 2px solid rgb(134,128,111);
  border-top-width: 3px;
  border-bottom-left-radius: 0.5625em;
  border-bottom-right-radius: 0.5625em;
  box-sizing: border-box;
  position: absolute;
  right: 3.359%;
  text-align: center;
  top: 0;
  width: 16.875em;
  z-index: 2;
}
.reserve p {
  margin: 0;
}
.reserve p a {
  display: block;
  padding: 1.1em 0;
}
.reserve img {
  width: 13.625em;
}
#global .reserve {
  display: none;
}
@media all and ( max-width: 1204px ) {
  #menu > .reserve {
    display: none;
  }
  #global .reserve {
    background-color: transparent;
    border: none;
    display: inherit;
    font-size: 90%;
    position: relative;
    right: inherit;
    width: 16em;
  }
  #global .reserve p a {
    padding: 0.7em 0;
  }
}

/* Menu Button
---------------------------------------- */
input[name^="switch_"] {
	display: none;
}
#btn_menu {
  display: none;
  overflow: hidden;
}
@media all and ( max-width: 1204px ) {
  #btn_menu {
    background: url(../img/btn_menu01.svg) no-repeat center;
    background-size: 3.625em;
    cursor: pointer;
    display: block;
    height: 3.625em;
    position: absolute;
    right: 100%;
    top: -2px;
    width: 3.625em;
    z-index: 11;
  }
  #btn_menu span {
    display: block;
    height: 3.625em;
    line-height: 3.625em;
    position: relative;
    text-align: center;
    text-indent: 200%;
    white-space: nowrap;
    width: 100%;
  }
  #btn_menu::before,
  #btn_menu span::before,
  #btn_menu span::after {
    background-color: #453e34;
    border-radius: 0.09375em;
    content: "";
    display: block;
    height: 0.1875em;
    left: 50%;
    margin: -0.09375em 0 0 -0.875em;
    position: absolute;
    top: 40%;
    width: 1.75em;
  }
  #btn_menu::before {
    -webkit-animation: menuDefaultCenterAction 0.4s ease 0s 1 forwards alternate;
    animation: menuDefaultCenterAction 0.4s ease 0s 1 forwards alternate;
  }
  #btn_menu span::before {
    -webkit-animation: menuDefaultBeforeAction 0.4s ease 0s 1 forwards alternate;
    animation: menuDefaultBeforeAction 0.4s ease 0s 1 forwards alternate;
  }
  #btn_menu span::after {
    -webkit-animation: menuDefaultAfterAction 0.4s ease 0s 1 forwards alternate;
    animation: menuDefaultAfterAction 0.4s ease 0s 1 forwards alternate;
  }
  #switch_global:checked ~ div nav #btn_menu::before {
    -webkit-animation: menuCenterAction 0.4s ease 0s 1 forwards alternate;
    animation: menuCenterAction 0.4s ease 0s 1 forwards alternate;
  }
  #switch_global:checked ~ div nav #btn_menu span::before {
    -webkit-animation: menuBeforeAction 0.4s ease 0s 1 forwards alternate;
    animation: menuBeforeAction 0.4s ease 0s 1 forwards alternate;
  }
  #switch_global:checked ~ div nav #btn_menu span::after {
    -webkit-animation: menuAfterAction 0.4s ease 0s 1 forwards alternate;
    animation: menuAfterAction 0.4s ease 0s 1 forwards alternate;
  }
}
@-webkit-keyframes menuDefaultCenterAction {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes menuDefaultCenterAction {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes menuDefaultBeforeAction {
  0% {
    -webkit-transform: translateY(0) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(-0.5625em);
  }
}
@keyframes menuDefaultBeforeAction {
  0% {
    transform: translateY(0) rotate(45deg);
  }
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-0.5625em);
  }
}
@-webkit-keyframes menuDefaultAfterAction {
  0% {
    -webkit-transform: translateY(0) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(0.5625em);
  }
}
@keyframes menuDefaultAfterAction {
  0% {
    transform: translateY(0) rotate(-45deg);
  }
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0.5625em);
  }
}
@-webkit-keyframes menuCenterAction {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes menuCenterAction {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes menuBeforeAction {
  0% {
    -webkit-transform: translateY(-0.5625em);
  }
  50% {
    -webkit-transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(45deg);
  }
}
@keyframes menuBeforeAction {
  0% {
    transform: translateY(-0.5625em);
  }
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0) rotate(45deg);
  }
}
@-webkit-keyframes menuAfterAction {
  0% {
    -webkit-transform: translateY(0.5625em);
  }
  50% {
    -webkit-transform: translateY(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(-45deg);
  }
}
@keyframes menuAfterAction {
  0% {
    transform: translateY(0.5625em);
  }
  50% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(0) rotate(-45deg);
  }
}

/* Main
======================================== */
#main {
  clear: both;
}
#main > div > article {
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
#main h2 {
  color: #1a1a1a;
  font-size: 1.625em;
  font-weight: normal;
  letter-spacing: 0.3em;
  text-align: center;
}
#main h2 .jp {
  display: block;
  text-indent: 0.3em;
}
#main h2 .en {
  display: block;
  font-size: 0.3929em;
  letter-spacing: 0.25em;
  padding-top: 0.65em;
  position: relative;
}
#main h2 .en::before {
  background-color: rgb(134,128,111);
  content: "";
  display: block;
  height: 3px;
  left: 50%;
  margin-left: -5.81815em;
  position: absolute;
  top: -3px;
  width: 11.6363em;
}
#main h2 .en::after {
  background-color: #453e34;
  content: "";
  display: block;
  height: 3px;
  left: 50%;
  margin-left: -5.81815em;
  position: absolute;
  top: -3px;
  width: 2.909075em;
}
#main h2.align_left {
  text-align: left;
}
#main h2.align_left .jp {
  text-indent: 0;
}
#main h2.align_left .en::before,
#main h2.align_left .en::after {
  left: 0;
  margin-left: 0;
}
#main h3 {
  color: rgba(69,62,52,0.9);
  font-feature-settings : "palt";
  font-size: 1.75em;
  font-weight: normal;
  letter-spacing: 0.14em;
}
#main h3 span {
  text-decoration: underline;
}
@media all and ( max-width: 640px ) {
  #main {
    font-size: 87.5%;
  }
}

/* Footer
======================================== */
#footer {
  background-color: #fff;
  overflow: hidden;
  position: relative;
  text-align: center;
}
.bnr_reserve {
  bottom: -3em;
  left: 0;
  position: fixed;
  -webkit-transition: bottom 0.6s;
  transition: bottom 0.6s;
  z-index: 9;
  width: 100%;
}
.bnr_reserve p {
  border-left: 2px solid #514a40;
  display: table;
  margin: 0;
  width: 100%;
}
.bnr_reserve p > * {
  border-collapse: collapse;
  color: #fff;
  display: table-cell;
  text-align: center;
}
.bnr_reserve > * img {
  height: 2.5em;
}
.bnr_reserve span {
  background-color: #aa936d;
}
.bnr_reserve a {
  background-color: #bea990;
}
#slideshow {
  left: 50%;
  margin-bottom: 5.55em;
  margin-left: -51.5625%;
  overflow: hidden;
  position: relative;
  width: 103.125%;
}
#slideshow figure {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
#slideshow figure::before {
  content: "";
  display: block;
  padding-top: 66.666%;
}
#slideshow figure img {
  display: none;
}
#footer .logo .category {
  border-top: 3px solid rgb(134,128,111);
  box-sizing: border-box;
  display: block;
  margin: 0.5em auto 0;
  padding-top: 0.375em;
  position: relative;
  width: 8.5em;
}
#footer .logo .category::before {
  background-color: #453e34;
  content: "";
  display: block;
  height: 3px;
  left: 0;
  position: absolute;
  top: -3px;
  width: 25%;
}
#footer .address {
  color: #666;
  font-size: 0.875em;
  letter-spacing: 0.1em;
  margin-bottom: 3em;
  margin-top: 0.8em;
}
.sns li {
  display: inline-block;
  margin: 0 0.1em;
}
.sns li a {
  background-color: transparent;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px solid #aa936d;
  border-radius: 100%;
  box-sizing: border-box;
  display: block;
  height: 2.5em;
  overflow: hidden;
  -webkit-transition: background-color 0.23s;
  transition: background-color 0.23s;
  width: 2.5em;
}
.sns li.ameblo a {
  background-image: url(../img/btn_ameblo01_hover.svg);
}
.sns li.youtube a {
  background-image: url(../img/btn_youtube01_hover.svg);
}
.sns li.twitter a {
  background-image: url(../img/btn_twitter01_hover.svg);
}
.sns li.facebook a {
  background-image: url(../img/btn_facebook01_hover.svg);
}
.sns li.instagram a {
  background-image: url(../img/btn_instagram01_hover.svg);
}
.sns li a:hover {
  background-color: #aa936d;
}
.sns li a img {
  height: 2.375em;
  transition: opacity 0.23s;
  width: 2.375em;
}
.sns li a:hover img {
  opacity: 0;
}
.sns_wrapper{
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}
.sns_wrapper a.line{
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: row nowrap;
  position: relative;
  width: calc(96.2% - 2px);
  margin-top: 0.2em;
  margin: 0.2em auto 0 auto;
  border: 1px solid #00bd00;
  border-radius: 5px;
  color: #00bd00;
  height: calc(2.5em - 2px);
  margin: 0.6em 0;

}
.sns_wrapper a.line:hover{
  background-color: #00bd00;
  transition: 0.2s;
  color: #fff;
}

.sns_wrapper a.line p{
  position: absolute;
  margin: 0;
  right: 12%;
  text-align: left;
  line-height: 1em;
}
.sns_wrapper a.line img {
  position: absolute;
  left: 12%;
  width: 25%;
}
.sns_wrapper a.line img.on {
  opacity: 0;
}
.sns_wrapper a.line img.off {
  opacity: 1;
}
.sns_wrapper a.line:hover img.off{
  opacity: 0;
}
.sns_wrapper a.line:hover img.on{
  opacity: 1;
}
#footer .wrap{
  position: relative;
}
#footer .sns {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-flow: row nowrap;
  width: 100%;
}
#footer .sns_wrapper{
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  position: absolute;
  right: 9.25%;
  margin-top: -10.7em;
  max-width: 210px;
  top: 0;
}
#footer nav ul li {
  display: inline-block;
  letter-spacing: 0.15em;
}
#footer nav ul li a:hover {
  text-decoration: underline;
}
#footer nav .main {
  margin: 1.7em auto;
}
#footer nav .main li::before {
  color: rgba(69,62,52,0.8);
  content: "|";
  margin: 0 0.75em 0 0.35em;
}
#footer nav .main li:first-child::before {
  display: none;
}
#footer nav .main li a {
  color: rgba(69,62,52,0.8);
  letter-spacing: 0.29em;
}
#footer nav .sub {
  border-bottom: 1px solid rgba(69,62,52,0.4);
  border-top: 1px solid rgba(69,62,52,0.4);
  display: inline-block;
  padding: 0.7em 0.9em;
}
#footer nav .sub li {
  margin: 0 0.65em;
}
#footer nav .sub li a {
  color: rgba(69,62,52,0.8);
  font-size: 0.875em;
  letter-spacing: 0.3em;
}
#pagetop {
  bottom: 9.2em;
  margin: 0;
  position: absolute;
  right: 0.5em;
}
#pagetop .text {
	position: absolute;
}
#pagetop a {
  display: inline-block;
}
#pagetop a img {
  width: 6.25em;
}
#footer .tel {
  margin: 1.85em auto 2.5em;
}
#footer .tel img {
  width: 13.625em;
}
#copyright {
  margin-bottom: 0;
  padding-bottom: 5.2em;
}
#copyright small {
  font-size: 0.6875em;
  letter-spacing: 0.15em;
}
@media all and ( min-width: 1200px ) {
  #footer .sns_wrapper{
    max-width: 220px;
  }
}
@media all and ( max-width: 900px ) {
	#footer .sns_wrapper {
		right: 3%;
    margin-top: -9em;
    max-width: 215px;
	}
  #footer .sns_wrapper .line {
		margin: 0.6em 0;
	}

  #footer nav .main li {
    margin: 0 0.35em;
  }
  #footer nav .main li::before {
    display: none;
  }
}
@media all and ( max-width: 840px ) {
	.bnr_reserve.sticky {
		bottom: 0;
	}
  #footer .logo {
    font-size: 87.5%;
  }
  #footer .address {
    font-size: 0.75em;
    margin-bottom: 1.9em;
  }
  #footer .sns_wrapper {
    position: relative;
    margin: 0 auto;
    right: 0;
  }
  #footer .sns_wrapper .line{
    margin: 2em 0 1em 0;
  }

  #footer nav .main {
    margin: 0.9em auto;
    padding: 0 5%;
  }
  #footer nav .main li a {
    font-size: 0.875em;
  }
  #footer nav .sub {
    padding: 0.4em 0.7em 0.6em;
  }
  #footer nav .sub li {
    margin: 0 0.5em;
  }
  #footer nav .sub li a {
    font-size: 0.75em;
  }
  #pagetop,
  #footer .tel,
  #copyright {
    font-size: 90%;
  }
  #pagetop {
    bottom: inherit;
    position: relative;
    right: inherit;
  }
  #footer .tel {
    margin: 1.85em auto 1.6em;
  }
  #copyright {
    margin-top: 0.6em;
    padding-bottom: 4.6em;
  }
}
@media all and ( max-width: 480px ) {
  #slideshow {
    margin-bottom: 3em;
    margin-left: -135.3515625%;
    width: 270.703125%;
  }

  .pc{
    display: none;
  }
}

/* Home
======================================== */
#home #hero {
  height: calc(100vh - 5.5em);
}
#home #hero #news {
  background: url(../img/mogerumaru01.png) no-repeat left center;
  background-size: contain;
  bottom: 0;
  height: 10em;
  left: 3.05%;
  position: absolute;
  z-index: 2;
}
#home #hero #news .balloon {
  background-color: #fff;
  border-radius: 0.875em;
  margin-left: 10.5em;
  margin-right: 0.5em;
  margin-top: 0.6em;
  padding: 0.7em 1.25em;
  position: relative;
}
#home #hero #news .balloon::after {
  background: url(../img/balloon01.png) no-repeat center;
  background-size: cover;
  bottom: -1.3125em;
  content: "";
  display: block;
  height: 1.3125em;
  left: 0.85em;
  position: absolute;
  width: 2.1875em;
}
#home #hero #news .swiper-container {
  max-width: 24em;
}
#home #hero #news ul li {
  line-height: 1.5;
}
#home #hero #news ul li time {
  color: #888;
  font-size: 0.9375em;
  font-family: 'Lato', Arial, Helvetica, "sans-serif";
  letter-spacing: 0.1em;
}
#home #hero #news ul li p {
  font-size: 0.875em;
  font-feature-settings : "palt";
  letter-spacing: 0.05em;
  margin: 0;
}
#home #hero #news ul li p a {
	color: rgba(69,62,52,0.8);
}
#home #hero #news ul li p a:hover {
	text-decoration: underline;
}
#home #main {
  background: none;
}
#home #main::before {
  background: url(../../img/bg_voice01.jpg) center/cover no-repeat;
  -webkit-background-size: cover;
  content: "";
  display: block;
  left: 0;
  height: 100vh;
  position: fixed;
  top: 0;
  -webkit-transform: translate3d(0, 0, -1px);
  transform: translate3d(0, 0, -1px);
  width: 100%;
}
#home #main > div {
  background-color: #fff;
  overflow: hidden;
  padding-top: 2em;
  position: relative;
}

@media screen and ( max-width: 1204px ) {
  #home #hero {
    height: calc(100vh - 3.625em);
  }
  #home #hero .swiper-wrapper {
    height: calc(100vh - 3.625em);
  }
  #home #hero .swiper-wrapper figure {
    background-position: 40.5% 0;
  }
  #home #hero #news.fixed-news {
    position: fixed;
  }
}
@media screen and ( max-width: 640px ) {
  #home #hero #news .swiper-container {
    max-width: 13.75em;
  }
  #home #hero #news {
    font-size: 80%;
    left: 2.5%;
  }
  #home #main > div {
    padding-top: 1.25em;
  }
}
@media screen and ( max-width: 480px ) {
    #home #hero #news {
        height: 7em;
    }
    #home #hero #news .balloon {
      margin-left: 7.5em;
      margin-top: -3em;
    }
}

/* Policy
---------------------------------------- */
#home #policy {
  background: url(../img/bg_stethoscope01.png) no-repeat 89.25% 100%;
  background-size: 26.75em 31.25em;
}
#home #policy h2 {
  font-size: 1.75em;
  margin-top: 2em;
}
#home #policy article {
  left: -1.75em;
  max-width: 68.5em;
  padding-bottom: 4.625em;
}
#home #policy article::after {
	clear: both;
	content: "";
	display: block;
}
#home #policy figure {
  max-width: 32.25em;
  position: absolute;
}
#home #policy h3,
#home #policy p {
  float: right;
  position: relative;
  z-index: 2;
}
#home #policy h3 {
  margin-bottom: 0.7em;
  max-width: 21.4286em;
  text-align: left;
}
#home #policy p {
  margin: 0.875em auto;
  max-width: 37.5em;
}
@media screen and ( max-width: 900px ) {
	#home #policy h3 {
		margin-top: 6em;
	}
	#home #policy p {
		max-width: 35.75em;
	}
}
@media screen and ( min-width: 641px ) and ( max-width: 900px ) {
	#home #policy h3,
	#home #policy p {
		background-color: rgba(255,255,255,0.5);
	}
}
@media screen and ( min-width: 481px ) and ( max-width: 640px ) {
	#home #policy h3 br {
		display: none !important;
	}
	#home #policy p {
		max-width: inherit;
	}
}
@media screen and ( max-width: 640px ) {
  #home #policy {
    background-position: 0 98%;
  }
  #home #policy h2 {
    margin-bottom: 0.2em;
    margin-top: 0.7em;
  }
  #home #policy article {
    left: inherit;
    padding-bottom: 3em;
  }
  #home #policy figure {
		margin-left: auto;
		margin-right: auto;
    position: relative;
  }
  #home #policy h3 {
    float: none;
    margin-bottom: 0.1em;
    margin-top: 0.75em;
    padding: 0 6.25%;
    text-align: left;
  }
  #home #policy p {
    padding: 0 6.25%;
  }
  #home #policy br.hide {
    display: inherit;
  }
}

/* Feature
---------------------------------------- */
#home #feature {
  border-bottom: 1px solid #ddd;
  padding-bottom: 4.45em;
}
#home #feature nav {
  margin-left: auto;
  margin-right: auto;
  max-width: 67.5em;
}
#home #feature h2 {
  font-size: 1.75em;
  margin-bottom: 0.7em;
  margin-top: 0.5em;
}
#home #feature ul::after {
	clear: both;
	content: "";
	display: block;
}
#home #feature ul li {
  box-sizing: border-box;
  float: left;
  padding: 0 1.8518%;
  width: 33.333%;
}
#home #feature ul li h3 {
  font-size: 1.25em;
  letter-spacing: 0.3em;
  margin-bottom: 0.6em;
  text-align: center;
}
#home #feature ul li h3 .icon {
  height: 0.9em;
  left: -1.25em;
  margin-left: -0.5em;
  position: relative;
  top: 0.05em;
  vertical-align: baseline;
  width: 1.1em;
}
#home #feature ul li figure {
  position: relative;
}
#home #feature ul li figure::before {
  background: url(../img/arrow01.svg) no-repeat center;
  background-size: cover;
  bottom: 0;
  content: "";
  display: block;
  height: 5em;
  position: absolute;
  right: 0;
  transition: right 0.3s;
  width: 5em;
}
#home #feature ul li a:hover figure::before {
  right: -0.5em;
}
#home #feature ul li p {
  color: #1a1a1a;
  font-size: 0.9375em;
}
@media screen and ( min-width: 461px ) and ( max-width: 900px ) {
	#home #feature nav {
		padding: 0 3%;
	}
  #home #feature ul li {
		margin-bottom: -1em;
    width: 50%;
  }
	#home #feature ul li:nth-child(2n+1) {
		clear: both;
	}
}
@media screen and ( max-width: 460px ) {
  #home #feature {
    padding-bottom: 1.15em;
  }
  #home #feature h2 .jp {
    display: block;
    line-height: 1.25;
    margin-bottom: 0.25em;
  }
  #home #feature ul li {
    float: none;
    margin-bottom: 1.75em;
		margin-left: auto;
		margin-right: auto;
		max-width: 26.25em;
    padding: 0 6.25%;
    width: 100%;
  }
  #home #feature br.hide {
    display: inherit;
  }
}

/* About
---------------------------------------- */
#home #about {
  border-bottom: 1px solid #ddd;
  padding-bottom: 4.8em;
}
#home #about > * {
  left: 1.25em;
  margin-left: auto;
  margin-right: auto;
  max-width: 67.5em;
}
#home #about h2 {
  left: 0.7692em;
  position: relative;
  margin: 1.75em auto 1.1em;
  max-width: 41.5385em;
}
.table {
  border-collapse: collapse;
  display: table;
  width: 100%;
}
.table_cell {
  display: table-cell;
  vertical-align: top;
}
#home #about .table_cell:nth-child(1) {
  width: 31.75em;
}
#home #about h3 {
  line-height: 1.6;
  margin-bottom: 0.9em;
  margin-top: 0;
}
.open table {
  color: rgba(81,74,64,0.86);
  border-collapse: collapse;
  font-size: 0.875em;
  max-width: 34.2143em;
}
.open table thead tr {
  background-color: rgba(81,74,64,0.86);
  color: #fff;
}
.open table thead tr > * {
  padding-bottom: 0.45em;
}
.open table tr > * {
  width: 10%;
}
.open table tr > *:first-child {
  letter-spacing: 0.3em;
  padding-left: 0.75em;
  text-align: left;
  width: 33.75%;
}
.open table tr > *:first-child .time {
  display: inline-block;
  font-family: 'Lato', Arial, Helvetica, "sans-serif";
  letter-spacing: 0.1em;
  position: relative;
  right: 0.25em;
  text-align: right;
  width: 7em;
}
.open table th,
.open table td {
  border: 1px solid #000;
  padding: 0.5em 0.5em 0.41em;
  text-align: center;
}
.open p {
  font-size: 0.875em;
  margin-top: -0.9em;
}



.open2 table {
  color: rgba(81,74,64,0.86);
  border-collapse: collapse;
  font-size: 0.875em;
  max-width: 34.2143em;
}
.open2 table thead tr {
  background-color: rgba(81,74,64,0.86);
  color: #fff;
}
.open2 table thead tr > * {
  padding-bottom: 0.45em;
}
.open2 table tr > * {
  width: 10%;
}
.open2 table tr > *:first-child {
  letter-spacing: 0.3em;
  padding-left: 0.75em;
  text-align: left;
  width: 33.75%;
}
.open2 table tr > *:first-child .time {
  display: inline-block;
  font-family: 'Lato', Arial, Helvetica, "sans-serif";
  letter-spacing: 0.1em;
  position: relative;
  right: 0.25em;
  text-align: right;
  width: 7em;
}
.open2 table th,
.open2 table td {
  border: 1px solid #000;
  padding: 0.5em 0.5em 0.41em;
  text-align: center;
}
.open2 p {
  font-size: 0.875em;
  margin-top: -0.9em;
}





#home #about .medical {
  border-bottom: 1px solid #c3c3c3;
  border-top: 1px solid #c3c3c3;
  display: inline-block;
  margin-top: 0.325em;
  padding-right: 2em;
}
#home #about .medical h4 {
  color: #1a1a1a;
  font-size: 1em;
  font-weight: normal;
  letter-spacing: 0.35em;
  margin: 0.8em auto -0.9em;
}
#home #about .medical p {
  letter-spacing: 0.1em;
  margin-bottom: 0.925em;
}
#home #about .medical p span {
  font-size: 1.25em;
}
.arrow {
  height: 0.375em;
  vertical-align: baseline;
  width: 1em;
}
#home #about .tel {
  margin: 1.6em 0 2.75em;
  max-width: 18.9375em;
}
.btn a,
.btn span {
  border: 2px solid rgb(179, 148, 104);
  border-radius: 7em;
  box-sizing: border-box;
  color: rgb(179, 148, 104);
  display: inline-block;
  font-size: 1.125em;
  font-weight: bold;
  letter-spacing: 0.3em;
  line-height: 1;
  padding: 0.65em 0.5em 0.55em;
  text-align: center;
  transition: background-color 0.23s, color 0.23s;
  width: 14em;
}
.btn a:hover {
  background-color: rgb(179, 148, 104);
  color: #fff;
}
div[id^="gmap"] {
  background-color: #ccc;
  position: relative;
  width: 100%;
}
#home #about #gmap {
  height: 31.875em;
  margin-top: 0.4em;
  max-width: 35.625em;
}
#home #about .address {
  font-size: 0.9375em;
  letter-spacing: 0.1em;
  margin-top: 0.8em;
}
#home #about .address .link {
  float: right;
}
#home #about .address .link a:hover {
  text-decoration: underline;
}
.icon_map {
  height: 1.2em;
  margin-right: 0.35em;
  position: relative;
  top: 0.1em;
  width: 1.2em;
}
@media screen and ( max-width: 1040px ) {
	#home #about .table {
		left: 0;
		max-width: 65.25em;
	}
}
@media screen and ( min-width: 521px ) and ( max-width: 900px ) {
  #home #about h3 br {
		display: none !important;
  }
	#home #about .medical {
		margin-right: 2em;
	}
	#home #about .tel {
		display: inline-block;
		margin-top: 0;
		vertical-align: top;
	}
	#home #about .address .link {
		float: right !important;
	}
}
@media screen and ( max-width: 900px ) {
  #home #about {
    padding: 0 6.25% 1.5em;
  }
  #home #about > * {
    left: inherit;
  }
  #home #about h2 {
    left: 0;
    margin: 0.8em auto 1.1em;
  }
  #home #about .table {
    display: block;
  }
  #home #about .table_cell {
    display: block;
  }
  #home #about .table_cell:nth-child(1) {
    width: 100%;
  }
  #home #about h3 {
    margin-bottom: 0;
  }
  .open table {
    min-width: 34.2143em;
  }

  .open2 {
    overflow: auto;
    white-space: nowrap;
  }
	.open2::-webkit-scrollbar {
		height: 3px;
	}
	.open2::-webkit-scrollbar-thumb {
		background-color: rgba(0,0,0,0.25);
		border-radius: 1.5px;
	}
  .open2 table {
    min-width: 34.2143em;
  }
  .open2 p {
    white-space: nowrap;
  }




  #home #about .medical {
    margin-top: 0.6em;
  }
	#home #about #gmap {
		max-width: inherit;
	}
  #home #about .tel {
    margin: 1.5em 0 2.25em;
  }
  #home #about #gmap {
    height: 20em;
    margin-top: 2.3em;
  }
  #home #about .address .link {
    display: block;
    float: none;
  }
  #home #about br.hide {
    display: inherit;
  }
}
@media screen and ( max-width: 480px ) {
	.open table {
		min-width: inherit;
	}
	.open table tr > *:first-child {
		width: 3%;
	}
	.open table tr > *:first-child .zone,
	.open table tr > *:first-child .time .pc {
		display: none;
	}
	.open table tr > *:first-child .time {
		width: 5em;
	}
	.open table th,
	.open table td {
		padding-left: 0.4em;
		padding-right: 0.4em;
	}
}
@media screen and ( max-width: 400px ) {
	.open p br.hide {
		display: inherit;
	}
}

/* Doctor / Blog
---------------------------------------- */
#home #main .wrap > .inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 65em;
  overflow: hidden;
  padding-bottom: 9.75em;
  padding-top: 1.5em;
}
#home #main .wrap > .inner > div {
  float: left;
}
@media screen and ( max-width: 900px ) {
  #home #main .wrap > .inner {
    padding-bottom: 5.85em;
    padding-top: 0;
  }
  #home #main .wrap > .inner > div {
    float: none;
  }
}

/* Doctor
---------------------------------------- */
#home #doctor {
  width: 48.8%;
}
#home #doctor figure {
  margin-top: 2.5em;
  max-width: 25em;
}
#home #doctor h3 {
  display: inline-block;
  font-size: 1.25em;
  margin-top: 0.7em;
  letter-spacing: 0.1em;
}
#home #doctor h3 span {
  display: block;
  font-size: 0.55em;
  margin-top: -0.45em;
  text-decoration: none;
}
#home #doctor .sns {
  display: inline-block;
  margin-left: 0;
}
#home #doctor .sns_wrapper {
  display: block;
  width: 46.4%;
}
#home #doctor .sns_wrapper .line{
  margin: 0 auto;
  margin-bottom: 2em;
}
#home #doctor .sns_wrapper p{
  top: 0;
}
#home #doctor p {
  font-size: 0.875em;
  max-width: 28.5714em;
  position: relative;
  top: -1.5em;
}
@media screen and ( max-width: 900px ) {
  #home #doctor {
    box-sizing: border-box;
    padding: 0 6.25% 3em;
    width: 100%;
  }
  #home #doctor .sns {
    margin-bottom: 0.2em;
    margin-left: 0;
    margin-top: -0.5em;
  }

  #home #doctor .sns_wrapper{
    width: 100%;
  }
  #home #doctor .sns_wrapper .line{
    margin: 0;
    margin-bottom: 2em;
    margin-left: 1em;
  }
}
@media screen and ( max-width: 640px ) {
  #home #doctor .sns {
    margin-bottom: 1em;
  }
}

/* Blog
---------------------------------------- */
#home #blog {
  background-color: rgba(199,178,153,0.2);
  border-radius: 0.875em;
  box-sizing: border-box;
  padding: 0 2.35% 4.2em;
  position: relative;
  width: 51.2%;
}
#home #blog::before {
  background: url(../img/bg_mogerumaru01.png) no-repeat center;
  background-size: cover;
  content: "";
  display: block;
  height: 5em;
  position: absolute;
  right: 1.1em;
  top: 1.05em;
  width: 13.75em;
  z-index: 0;
}
#home #blog::after {
  background: url(../img/corner01.png) no-repeat center;
  background-size: cover;
  bottom: 0;
  content: "";
  display: block;
  height: 5.875em;
  position: absolute;
  right: 0;
  width: 5.875em;
  z-index: 0;
}
#home #blog ul {
  margin-top: 1.75em;
  position: relative;
  z-index: 2;
}
#home #blog ul li {
  margin-bottom: 0.3em;
}
#home #blog ul li a {
  background-color: #fff;
  border: 2px solid transparent;
  border-radius: 0.875em;
  box-sizing: border-box;
  display: block;
  font-size: 0.875em;
  transition: border-color 0.23s;
  padding: 0.7em 1.4em;
}
#home #blog ul li:nth-child(even) a {
  background-color: rgba(255,255,255,0.2);
}
#home #blog ul li a:hover {
  border-color: rgba(179,148,104,0.4);
}
#home #blog ul li time {
  color: #888;
  font-family: 'Lato', Arial, Helvetica, "sans-serif";
  letter-spacing: 0.1em;
}
#home #blog ul li p {
  color: #1a1a1a;
  font-feature-settings : "palt";
  letter-spacing: 0.05em;
  margin: 0;
}
.btn_arrow a {
  bottom: 0;
  display: block;
  position: absolute;
  right: 0;
  transition: right 0.3s;
  z-index: 2;
}
.btn_arrow a:hover {
  right: -0.5em;
}
.btn_arrow img {
  height: 5em;
  width: 5em;
}
@media screen and ( max-width: 900px ) {
  #home #blog {
    margin: auto;
    overflow: hidden;
    padding: 0 5% 3.5em;
    width: 97%;
  }
}
@media screen and ( max-width: 640px ) {
  #home #blog::before {
    font-size: 90%;
    right: 1em;
    top: 1.7em;
  }
  #home #blog ul li {
    display: none;
  }
  #home #blog ul li:nth-child(1),
  #home #blog ul li:nth-child(2),
  #home #blog ul li:nth-child(3) {
    display: block;
  }
  #home #blog ul li a {
    padding-bottom: 0.5em;
    padding-top: 0.5em;
  }
}

/* Voice
---------------------------------------- */
#home #main #voice {
  background-color: transparent;
  overflow: visible;
  padding-top: 0;
}
#home #voice {
  padding-bottom: 0.6em;
  text-align: center;
}
h2.white {
  background-color: #fff;
  border-bottom-left-radius: 0.3846em;
  border-bottom-right-radius: 0.3846em;
  display: inline-block;
  margin: 0;
  padding: 0.4em 0.8em;
}
#home #voice h2.white {
  margin-top: -1.2692em;
}
#home #voice > p {
  color: #fff;
  font-size: 1.625em;
  letter-spacing: 0.1em;
  margin: 0.7em auto;
}
#home #voice .swiper-container {
  margin-left: auto;
  margin-right: auto;
	max-width: 67.5em;
}
#home #voice .wrap article {
  box-sizing: border-box;
  float: left;
  padding: 0 1.8518%;
  position: relative;
  text-align: left;
  width: 33.333%;
}
#home #voice .wrap article::before {
  background-color: #fff;
  border-top-left-radius: 0.625em;
  border-top-right-radius: 0.625em;
  content: "";
  display: block;
  height: 56%;
  position: absolute;
  top: 0;
  width: 88.897%;
}
#home #voice .wrap article::after {
  background: url(../../img/bg_voice02.png) no-repeat center bottom;
  background-size: contain;
  bottom: 0;
  content: "";
  display: block;
  height: 200%;
  position: absolute;
  width: 88.897%;
}
#home #voice .wrap article > * {
  margin: auto;
}
#home #voice .wrap article .text {
  background: url(../../img/bg_voice03.png) no-repeat 56% 4.55em;
  background-size: 11.8em 9.3333em;
  color: rgba(69,62,52,0.9);
  font-size: 0.9375em;
  min-height: 15.75em;
  padding: 1.9em 2em 9.05em;
  position: relative;
  z-index: 2;
}
#home #voice .wrap article .user {
  bottom: 2em;
  color: #fff;
  font-size: 0.9375em;
  position: absolute;
}
#home #voice .wrap article .user .avatar {
  height: 4.8em;
  margin-right: 0.8em;
  vertical-align: middle;
  width: 4.8em;
}
#home #voice .wrap article .user span {
  display: inline-block;
  position: relative;
  top: 0.2em;
}
.swiper-button-next,
.swiper-button-prev {
	background: url(../img/arrow04.svg) no-repeat center #fff;
	background-size: cover;
	display: none;
	height: 2.5em;
	margin-top: -1.25em;
	position: absolute;
	top: 35%;
	-webkit-transition: background-color 0.2s;
	transition: background-color 0.2s;
	width: 2.5em;
}
.swiper-button-next:hover,
.swiper-button-prev:hover {
	background-color: #f9f8f4;
}
.swiper-button-next {
	right: 0;
}
.swiper-button-prev {
	left: 0;
	-webkit-transform: scale(-1);
	transform: scale(-1);
}
@media screen and ( min-width: 581px ) and ( max-width: 1040px ) {
	#home #voice .wrap article {
		left: 0.4em;
	}
}
@media screen and ( max-width: 1040px ) {
	#home #voice .swiper-container {
		max-width: 44.25em;
	}
	#home #voice .swiper-button-next,
	#home #voice .swiper-button-prev {
		display: block;
	}
}
@media screen and ( max-width: 580px ) {
  #home #voice {
    padding-bottom: 0.2em;
  }
  #home #voice > p {
    line-height: 1.5;
  }
	#home #voice .swiper-container {
		max-width: 23em;
	}
  #home #voice .wrap article {
    display: block;
    float: none;
    padding: 0 6.25%;
    width: 100%;
  }
  #home #voice .wrap article::before {
    width: 87.5%;
  }
  #home #voice .wrap article::after {
    width: 87.5%;
  }
  #home #voice br.hide {
    display: inherit;
  }
}

/* Recruit
---------------------------------------- */
#home #recruit {
  padding-bottom: 3em;
  text-align: center;
}
#home #recruit h2 {
  margin-bottom: 1.325em;
  margin-top: 1.1em;
}
#home #recruit p {
  font-size: 1.75em;
  letter-spacing: 0.1em;
}
@media screen and ( max-width: 480px ) {
  #home #recruit h2 {
    margin-top: 0.5em;
  }
  #home #recruit br.hide {
    display: inherit;
  }
}

/* Page
======================================== */
.page #header {
  height: auto;
	position: relative;
	z-index: 10;
}
.page #key_visual figure {
  height: calc(80vh - 5.5em);
	min-height: 520px;
}
.page #main {
  padding-top: 4.1em;
}
@media all and ( min-width: 1205px ) {
    .page #main {
        padding-top: calc(4.1em + 5.5625em);
    }
}
@media screen and ( max-width: 1204px ) {
  .page #key_visual figure {
    height: calc(80vh - 3.625em);
		min-height: inherit;
  }
}
@media screen and ( max-width: 640px ) {
	.page #key_visual {
		max-height: 280px;
	}
  .page #key_visual figure {
		max-height: 280px;
  }
}

/* Intro
---------------------------------------- */
.page #intro {
  overflow: hidden;
}
.page #intro h2 {
  font-size: 1.75em;
}
.page #intro article {
  max-width: 68.5em;
  padding-bottom: 4.625em;
  right: -1.1em;
}
.page #intro article::after {
	clear: both;
	content: "";
	display: block;
}
.page #intro figure {
  max-width: 32.25em;
  position: absolute;
  right: 0;
}
.page #intro h3,
.page #intro p {
  position: relative;
  z-index: 2;
}
.page #intro h3 {
  margin-bottom: 1.2em;
  max-width: 21.4286em;
}
#intro h3 small {
  font-size: 75%;
}
.page #intro p {
  margin: 1.5em 0;
  max-width: 37.5em;
}
.page #intro.right article {
  left: -1.75em;
  right: inherit;
}
.page #intro.right figure {
  right: inherit;
}
.page #intro.right h3,
.page #intro.right p {
  float: right;
}
.page #intro.right h3 {
  margin-bottom: 0.7em;
  text-align: right;
}
.page #intro.right p {
  margin: 0.875em 0;
}
.page #intro.center h3 {
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.25em;
  text-align: center;
}
.page #intro.center article {
  right: inherit;
}
.page #contents h5 {
	font-size: 0.9375em;
	font-weight: normal;
	letter-spacing: 0.075em;
}
.page #contents {
  padding-top: 2em;
}
@media screen and ( max-width: 1140px ) {
  .page #intro article,
	.page #intro.right article {
		left: inherit;
		max-width: 65em;
    right: inherit;
  }
}
@media screen and ( max-width: 900px ) {
	.page #intro figure {
		margin-left: auto;
		margin-right: auto;
		position: relative;
	}
	.page #intro h3,
	.page #intro p,
	.page #intro.right h3,
	.page #intro.right p {
		float: none;
		margin-left: auto;
		margin-right: auto;
	}
	.page #intro h3 {
		max-width: 19.2857em;
	}
	.page #intro.right h3 {
		text-align: left;
	}
}
@media screen and ( max-width: 640px ) {
  .page #intro h2 {
    margin-bottom: 0.2em;
    margin-top: 0.7em;
  }
  .page #intro article {
    padding-bottom: 3em;
  }
  .page #intro figure {
    position: relative;
  }
  .page #intro h3 {
    float: none;
    margin-bottom: 0.1em;
    margin-top: 0.75em;
    padding: 0 6.25%;
  }
	.page #intro h3 br {
		display: none;
	}
  .page #intro p {
    padding: 0 6.25%;
  }
  .page #intro.right article {
    left: inherit;
  }
  .page #intro.right h3,
  .page #intro.right p {
    float: none;
  }
  .page #intro.right h3 {
    text-align: left;
  }
  .page #intro br.hide {
    display: inherit;
  }
}
@media screen and ( max-width: 520px ) {
	.page #contents {
		padding-top: 0;
	}
}

/* Facility
---------------------------------------- */
#facility.page #main {
	overflow-x: hidden;
    padding-top: 0;
}
#facility.page #main::before {
  background: url(../../img/facility_img02.jpg) center/cover no-repeat;
  -webkit-background-size: cover;
  content: "";
  display: block;
  left: 0;
  height: 100vh;
  position: fixed;
  top: 0;
  -webkit-transform: translate3d(0, 0, -1px);
  transform: translate3d(0, 0, -1px);
  width: 100%;
}
#facility.page #intro {
  background-color: #fff;
	padding-top: 4.1em;
	position: relative;
}
@media screen and ( min-width: 1204px ) {
    #facility.page #intro {
	    padding-top: calc(4.1em + 5.5625em);
    }
}
#facility.page #intro article {
	padding-bottom: 9.25em;
}
#facility.page #contents {
	padding-top: 0;
	position: relative;
}
#facility.page #contents .reason > *,
#facility.page #contents .flow {
  background-color: #fff;
}
#facility.page #contents section h2 .en {
	color: transparent;
	height: 0.5em;
}
#facility.page #contents .reason h2 {
	box-sizing: border-box;
	left: 50%;
	margin-left: -20.7692em;
	margin-top: -1.5em;
	position: relative;
	width: 18.4615em;
	white-space: nowrap;
}
#facility.page #contents .reason h2 + figure {
	display: none;
}
#facility.page #contents .reason .box {
	border-radius: 0.625em;
	box-sizing: border-box;
	left: 50%;
	margin: 5.75em 0 7.75em -33.75em;
	padding: 0.25em 1.25em;
	position: relative;
	max-width: 30em;
}
#facility.page #contents .reason .lede .inner,
#facility.page #contents .reason aside .inner {
	margin: auto;
	max-width: 65em;
}
#facility.page #contents .reason .lede ul {
	overflow: hidden;
	position: relative;
	top: -4em;
	width: 103.847%;
}
#facility.page #contents .reason .lede ul > li {
	box-sizing: border-box;
	float: left;
	margin-top: 1.25em;
	padding-right: 3.704%;
	width: 33.3334%;
}
#facility.page #contents .reason .lede ul > li a::before {
  background: url(../../img/icon_monitor01.svg) no-repeat center;
  background-size: cover;
	content: "";
	display: block;
	height: 5.625em;
	margin: auto;
	width: 5.625em;
}
#facility.page #contents .reason .lede ul > li a h3 {
	font-size: 1.3125em;
	letter-spacing: 0.075em;
	line-height: 1.6;
	margin: 0.75em auto 1.1em;
	text-decoration: underline;
}
#facility.page #contents .reason .lede ul > li a .btn {
	text-align: center;
}
a:hover .btn span {
  background-color: rgb(179, 148, 104);
  color: #fff;
}
#facility.page #contents .reason .lede ul > li a .btn span::after {
	background: url(../img/icon_blank01.svg) no-repeat center;
	background-size: cover;
	content: "";
	display: inline-block;
	height: 0.8888em;
	margin-left: 0.278em;
	width: 1.1666em
}
#facility.page #contents .reason aside {
	padding-top: 1em;
}
#facility.page #contents .reason aside .inner {
	border: 1px solid #c3c3c3;
	box-sizing: border-box;
	color: rgba(69,62,52,0.9);
	padding: 2.4em 6em 1.9em 3em;
	overflow: hidden;
}
#facility.page #contents .reason aside figure {
	float: left;
	margin-right: 3em;
	max-width: 19.375em;
}
#facility.page #contents .reason aside h4 {
	font-size: 1.3125em;
	font-weight: normal;
	margin: auto;
	margin-top: -0.25em;
}
#facility.page #contents .reason aside p {
	font-size: 0.875em;
	margin: 0.5em auto;
	overflow: hidden;
}
#facility.page #contents .reason aside .link {
	margin-top: 0.65em;
	text-align: right;
}
#facility.page #contents .reason aside .link a {
	text-decoration: underline;
}
#facility.page #contents .reason aside .link a span::after {
	background: url(../img/icon_blank01.svg) no-repeat center;
	background-size: cover;
	content: "";
	display: inline-block;
	height: 0.7619em;
	margin-left: 0.4em;
	width: 1em
}
#facility.page #contents .reason aside .link a span {
	font-size: 1.5em;
}
#facility.page #contents .flow {
	overflow: hidden;
	padding-top: 3.8em;
}
#facility.page #contents .flow .inner {
	margin: auto;
	max-width: 65em;
}
#facility.page #contents .flow article {
	clear: both;
	margin-top: 2.5em;
	padding-bottom: 3.5em;
}
#facility.page #contents .flow article:nth-of-type(2) {
	margin-top: -1.5em;
	padding-top: 3.25em;
	position: relative;
}
#facility.page #contents .flow article:nth-of-type(2)::before {
	background-color: rgba(170,147,109,0.03);
	bottom: 0;
	content: "";
	display: block;
	left: -100%;
	position: absolute;
	right: -100%;
	top: 0;
}
#facility.page #contents .flow article > figure {
	float: left;
	height: 17.5em;
	margin: 0 2.5em 2em 0;
	width: 17.5em;
}
#facility.page #contents .flow article h3 {
	border: 1px solid rgba(0,0,0,0.9);
	color: rgba(0,0,0,0.9);
	display: inline-block;
	font-size: 1.625em;
	letter-spacing: 0.2em;
	line-height: 1.25;
	margin: 0.65em auto 0.4em;
	padding: 0.25em 0.4em 0.2em;
	white-space: nowrap;
}
#facility.page #contents .flow article h3 + p {
	font-size: 0.9375em;
}
#facility.page #contents .flow article aside {
	border-left: 3px solid #c3c3c3;
	color: #4d4d4d;
	overflow: hidden;
	margin-top: 1.25em;
	padding-left: 1em;
}
#facility.page #contents .flow article aside h4 {
	font-weight: normal;
	letter-spacing: 0.15em;
	margin: 0 auto 0.25em;
}
#facility.page #contents .flow article aside p {
	font-size: 0.8125em;
	margin: auto;
}
#facility.page #contents .flow article > section {
	margin-bottom: 2.25em;
}
#facility.page #contents .flow article > section:nth-of-type(1),
#facility.page #contents .flow article > section:nth-of-type(2) {
	box-sizing: border-box;
	float: left;
	width: 50%;
}
#facility.page #contents .flow article > section:nth-of-type(1) {
	clear: both;
	padding-right: 3.847%;
}
#facility.page #contents .flow article > section:nth-of-type(2) {
	padding-left: 3.847%;
}
#facility.page #contents .flow article > section:nth-of-type(3) {
	clear: both;
}
#facility.page #contents .flow article > section h4 {
	border-bottom: 1px solid rgb(179, 148, 104);
	font-size: 1.25em;
	font-weight: normal;
	letter-spacing: 0.3em;
	margin-bottom: 1em;
	margin-top: 1.5em;
	padding-bottom: 0.45em;
}
#facility.page #contents .flow article > section h4 span {
	border: 1px solid rgba(0,0,0,0.8);
	color: rgba(0,0,0,0.9);
	display: inline-block;
	font-size: 0.65em;
	letter-spacing: 0.1em;
	line-height: 1.25;
	margin-right: 0.25em;
	padding: 0.2em 0.4em 0.15em;
	vertical-align: text-bottom;
}
#facility.page #contents .flow article > section h4 small {
	font-size: 0.7em;
	letter-spacing: 0.1em;
}
#facility.page #contents .flow article:nth-of-type(1) ul.group li:not(.sup) {
	background-color: rgba(170,147,109,0.75);
}
#facility.page #contents .flow article:nth-of-type(2) ul.group li:not(.sup) {
	background-color: rgba(145,117,89,0.75);
}
#facility.page #contents .flow ul.group + p.sup {
	font-size: 0.875em;
	margin: auto;
}
#facility.page #contents .flow article > section table {
	border-collapse: collapse;
	margin: 1em auto;
	width: 100%;
}
#facility.page #contents .flow article > section table tr > * {
	border-bottom: 1px solid #c3c3c3;
	letter-spacing: 0.075em;
	padding-bottom: 0.25em;
	padding-top: 0.375em;
}
#facility.page #contents .flow article > section table tr th {
	width: 28%;
}
#facility.page #contents .flow article > section table tr td {
	color: rgb(81,74,64);
}
#facility.page #contents .flow article > section table + p.sup {
	color: #4d4d4d;
	font-size: 0.8125em;
	margin: -0.5em auto auto;
}
.list_flow {
	counter-reset: li;
	margin: -1em auto 3em;
}
.list_flow li {
	color: rgba(0,0,0,0.9);
	display: inline-block;
	font-size: 1.125em;
	letter-spacing: 0.1em;
	list-style: none;
	margin: 1em auto;
	position: relative;
}
.list_flow li .main::before {
	color: rgba(170,147,109,0.7);
	content: counter(li)". ";
	counter-increment: li;
}
.list_flow li .main {
	border-bottom: 2px solid rgba(170,147,109,0.7);
	padding-bottom: 0.2em;
}
.list_flow li::after {
	color: rgba(170,147,109,0.7);
	content: " ー ";
	margin-right: 0.5em;
}
.list_flow li:last-of-type::after {
	display: none;
}
.list_flow li .sup {
	bottom: -2em;
	color: #4d4d4d;
	display: inline-block;
	font-size: 0.7222em;
	left: 0;
	letter-spacing: 0;
	position: absolute;
	white-space: nowrap;
}
@media screen and ( max-width: 900px ) {
	#facility.page #contents .reason h2,
	#facility.page #contents .reason .box {
		left: auto;
		margin-left: 6.25%;
		margin-right: 6.25%;
		white-space: inherit;
	}
	#facility.page #contents .reason h2 {
		line-height: 1.35;
		width: auto;
	}
	#facility.page #contents .reason h2 .jp {
		padding-bottom: 0.3em;
	}
	#facility.page #contents .reason h2 br.hide {
		display: inherit;
	}
	#facility.page #contents .reason .lede ul > li .btn {
		font-size: 90%;
	}
	#facility.page #contents .reason .box {
		background-color: rgba(255,255,255,0.5);
	}
	#facility.page #contents .reason .lede {
		font-size: 85%;
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	#facility.page #contents .reason aside .inner {
		margin-left: 6.25%;
		margin-right: 6.25%;
		padding-left: 7%;
		padding-right: 7%;
	}
	#facility.page #contents .reason aside figure {
		float: none;
		margin: 0 auto 2em;
	}
	#facility.page #contents .flow h2,
	#facility.page #contents .flow article {
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	#facility.page #contents .flow article > * {
		position: relative;
	}
	#facility.page #contents .flow article > figure {
		float: none;
		left: 50%;
		margin-left: -8.75em;
		opacity: 0.2;
		position: absolute;
		z-index: 0;
	}
	#facility.page #contents .flow article > section h4 {
		letter-spacing: 0.15em;
	}
	#facility.page #contents .flow article > section h4 small {
		display: block;
	}
}
@media screen and ( max-width: 720px ) {
	#facility.page #contents .reason aside .inner {
		padding-left: 5%;
		padding-right: 5%;
	}
	#facility.page #contents .reason aside .link a span {
		display: block;
	}
}
@media screen and ( max-width: 680px ) {
	#facility.page #contents .flow article > section:nth-of-type(1),
	#facility.page #contents .flow article > section:nth-of-type(2) {
		float: none;
		width: 100%;
	}
	#facility.page #contents .flow article > section:nth-of-type(1) {
		padding-right: 0;
	}
	#facility.page #contents .flow article > section:nth-of-type(2) {
		padding-left: 0;
	}
}
@media screen and ( max-width: 580px ) {
	#facility.page #intro article {
    padding-bottom: 7em;
	}
	#facility.page #contents .reason .box {
		margin-bottom: 5.75em;
	}
	#facility.page #contents .reason .lede {
		font-size: 85%;
		padding-top: 1em;
	}
	#facility.page #contents .reason .lede ul {
		top: auto;
		width: 100%;
	}
	#facility.page #contents .reason .lede ul > li {
		float: none;
		margin-bottom: 3em;
		padding-right: 0;
		width: 100%;
	}
	#facility.page #contents .reason .lede ul > li a h3 {
		padding-top: 1em;
	}
	#facility.page #contents .reason .lede ul > li a::before {
		float: left;
		margin-right: 1em;
	}
	#facility.page #contents .reason .lede ul > li .btn {
		clear: both;
	}
	#facility.page #contents .reason aside .link {
		text-align: left;
	}
}
@media screen and ( max-width: 520px ) {
	.list_flow {
		font-size: 86%;
	}
	.list_flow li .main {
		border-bottom-width: 1px;
	}
}
@media screen and ( max-width: 480px ) {
	#facility.page #contents .flow article > figure {
		margin-top: 5em;
	}
}

/* Formula
---------------------------------------- */
#formula.page #contents section {
  margin-bottom: 6.75em;
}
#formula.page #contents section figure {
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
  margin-bottom: -6.75em;
}
#formula.page #contents h3,
#formula.page #contents p {
  margin-left: auto;
  margin-right: auto;
  padding-left: 18.75%;
  position: relative;
}

#formula.page #contents section h3 {
  font-size: 1.75em;
  letter-spacing: 0.05em;
  margin-bottom: 2em;
  max-width: 17.1429em;
}
#formula.page #contents section h3::before {
  background: url(../../img/formula_icon01.svg) no-repeat center;
  background-size: cover;
  content: "";
  display: block;
  height: 6.0714em;
  margin-left: calc( -1.4em + -6.0714em);
  position: absolute;
  top: 0.2143em;
  width: 6.0714em;
}
#formula.page #contents section h3 span {
  background-color: #fff;
  border: 0.2857em solid #fff;
  border-top-width: 0.2143em;
  border-bottom-width: 0.1429em;
  border-radius: 0.1071em;
	position: relative;
  text-decoration: none;
}
#formula.page #contents section p {
  color: #453e34;
}
#formula.page #contents p {
  left: 0.5em;
  margin: 1.5em auto;
  position: relative;
}

#formula.page #contents .open p{
  text-align: left;
  margin-left: 0px;
}

#formula.page #contents .open{
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

.page:not(.single) #contents footer {
  background-color: rgba(170,147,109,0.03);
  border-top: 1px solid #ddd;
  padding: 3em 3% 5.5em;
}
#formula.page #contents footer h3,
#formula.page #contents footer p {
  padding-left: 25%;
}
#formula.page #contents footer h3 {
  font-size: 1.3125em;
  left: 0.38em;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin: 0.9em auto;
  max-width: 25.2381em;
  position: relative;
}
#formula.page #contents footer h3::before {
  background: url(../../img/formula_icon02.svg) no-repeat center;
  background-size: cover;
  content: "";
  display: block;
  height: 13.333em;
  margin-left: calc( -2.4em + -15.2381em);
  position: absolute;
  width: 15.2381em;
}
#formula.page #contents footer p {
  font-size: 0.875em;
  margin: 1em auto;
  max-width: 37.8571em;
}
@media screen and ( max-width: 900px ) {
	#formula.page #intro h3 br {
		display: none;
	}
	#formula.page #contents h3,
	#formula.page #contents p {
		padding-left: 0;
	}
	#formula.page #contents section h3::before {
		margin-left: -4em;
		opacity: 0.4;
		top: 180%;
	}
	#formula.page #contents footer h3::before {
		margin-left: -10em;
		opacity: 0.4;
	}
}
@media screen and ( max-width: 520px ) {
	#formula.page #contents h3,
	#formula.page #contents p {
		left: auto;
		margin-left: 6.25%;
		margin-right: 6.25%;
	}
	#formula.page #contents section h3::before {
		margin-left: 28%;
		top: 240%;
	}
	#formula.page #contents footer h3::before {
		margin-left: auto;
		right: -3em;
		top: -1em;
	}
	#formula.page #contents section figure {
		height: 16em;
	}
	#formula.page #contents section figure img {
		opacity: 0;
	}
	#formula.page #contents footer  {
		overflow-x: hidden;
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	#formula.page #contents footer h3,
	#formula.page #contents footer p {
		left: auto;
		padding-left: 0;
	}
	#formula.page #contents footer h3 br {
		display: none;
	}
}

/* Offtime
---------------------------------------- */
#offtime.page #intro h3 {
  white-space: nowrap;
}
#offtime.page #contents {
  padding-top: 1.5em;
}
#offtime.page #contents section {
  margin-bottom: 6em;
}
#offtime.page #contents section figure {
	background-origin: left top;
	background-repeat: no-repeat;
	background-size: cover;
  float: left;
	height: 26.875em;
  position: relative;
  top: 2em;
  width: 46.875%;
}
#offtime.page #contents section.right figure {
  float: right;
}
#offtime.page #contents section figure img {
	opacity: 0;
}
#offtime.page #contents section .box {
  background-color: rgba(170,147,109,0.15);
  box-sizing: border-box;
  float: left;
  min-height: 28.125em;
  padding: 2em 8% 2em 5.25%;
  width: 53.125%;
}
#offtime.page #contents section.right .box {
  padding-right: 5%;
}
#offtime.page #contents section .box h3 {
  font-size: 1.5625em;
  letter-spacing: 0.075em;
  line-height: 1.35;
  margin-bottom: 0.6em;
}
#offtime.page #contents section .box p {
  color: rgba(69,62,52,0.9);
}
#offtime.page #contents section .box ol {
  list-style: none;
  margin-top: 3em;
}
#offtime.page #contents section .box ol li {
  color: rgba(69,62,52,0.9);
  margin: 1em auto;
	padding-left: 2.3em;
	text-indent: -2.6em;
}
#offtime.page #contents section .box ol li .number {
  height: 1.5em;
  margin: 0 0.35em 0 0.5em;
  vertical-align: middle;
  width: 1.5em;
}
#offtime.page #contents section .box ol li span {
  font-size: 1.1875em;
  border-bottom: 2px solid #bea990;
}
#offtime.page #contents section .point {
  background: url(../../img/bg_offtime01.svg) no-repeat 52% 70%;
  background-size: 15em;
  clear: both;
  margin-bottom: -3em;
  padding-bottom: 2em;
  padding-top: 3em;
  position: relative;
  text-align: center;
}
#offtime.page #contents section .point::before {
  background: url(../img/arrow03.svg) no-repeat center;
  background-size: cover;
  content: "";
  display: block;
  height: 1.1875em;
  left: 50%;
  margin-left: -1.1875em;
  position: absolute;
  top: 2em;
  width: 2.375em;
}
#offtime.page #contents section .point h3 {
  position: relative;
  top: 0.25em;
}
@media screen and ( max-width: 1240px ) {
	#offtime.page #contents section .box h3 br {
		display: none;
	}
}
@media screen and ( max-width: 950px ) {
  #offtime.page #intro h3 {
    white-space: inherit;
  }
	#offtime.page #intro h3 br {
		display: none;
	}
}
@media screen and ( min-width: 641px ) and ( max-width: 900px ) {
	#offtime.page #contents section figure {
		top: -2em;
	}
	#offtime.page #contents section .box {
		font-size: 90%;
	}
	#offtime.page #contents section .box ol {
		font-size: 90%;
	}
	#offtime.page #contents section .point {
		font-size: 90%;
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	#offtime.page #contents section .point h3 {
		font-size: 1.5em;
	}
}
@media screen and ( max-width: 640px ) {
	#offtime.page #contents section figure {
    float: none;
    height: 26.875em;
    top: auto;
    width: 100%;
	}
	#offtime.page #contents section .box {
		box-sizing: border-box;
		float: none;
		min-height: 28.125em;
		padding: 2em 6.25% 2em 6.25%;
		width: 100%;
	}
	#offtime.page #contents section.right figure {
    float: none;
	}
	#offtime.page #contents section.right .box {
		padding-right: 6.25%;
	}
	#offtime.page #contents section .point {
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	#offtime.page #contents section .point br {
		display: none;
	}
	#offtime.page #contents section .point h3,
	#offtime.page #contents section .point p {
		text-align: left;
	}
}



/* staff
---------------------------------------- */
#staff.page #intro h3 {
  white-space: nowrap;
}
#staff.page #contents {
  padding-top: 0;
}
#staff.page #contents section {
  margin-bottom: 6em;
}
#staff.page #contents section figure {
	background-origin: left top;
	background-repeat: no-repeat;
	background-size: cover;
  float: left;
	height: 26.875em;
  position: relative;
  top: 2em;
  width: 46.875%;
}
#staff.page #contents section.right figure {
  float: right;
}
#staff.page #contents section figure img {
	opacity: 0;
}
#staff.page #contents section .box {
  background-color: rgba(170,147,109,0.15);
  box-sizing: border-box;
  float: left;
  min-height: 28.125em;
  padding: 2em 8% 2em 5.25%;
  width: 53.125%;
}
#staff.page #contents section.right .box {
  padding-right: 5%;
}
#staff.page #contents section .box h3 {
  font-size: 1.5625em;
  letter-spacing: 0.075em;
  line-height: 1.35;
  margin-bottom: 0.6em;
}
#staff.page #contents section .box p {
  color: rgba(69,62,52,0.9);
}
#staff.page #contents section .box ol {
  list-style: none;
  margin-top: 3em;
}
#staff.page #contents section .box ol li {
  color: rgba(69,62,52,0.9);
  margin: 1em auto;
	padding-left: 2.3em;
	text-indent: -2.6em;
}
#staff.page #contents section .box ol li .number {
  height: 1.5em;
  margin: 0 0.35em 0 0.5em;
  vertical-align: middle;
  width: 1.5em;
}
#staff.page #contents section .box ol li span {
  font-size: 1.1875em;
  border-bottom: 2px solid #bea990;
}
#staff.page #contents section .point {  
  clear: both;
  margin-bottom: -3em;
  padding-bottom: 2em;
  padding-top: 1em;
  position: relative;
  text-align: center;
}
/* #staff.page #contents section .point::before {
  background: url(../img/arrow03.svg) no-repeat center;
  background-size: cover;
  content: "";
  display: block;
  height: 1.1875em;
  left: 50%;
  margin-left: -1.1875em;
  position: absolute;
  top: 2em;
  width: 2.375em;
} */
#staff.page #contents section .point h3 {
  position: relative;
  top: 0.25em;
  margin-bottom: 0px;
  margin-top: 2em;
}

#staff.page #contents section .point p{
  font-size: 95%;
}

#staff.page #contents section .point .phone{
  font-size: 1.5em;
}

@media screen and ( max-width: 1240px ) {
	#staff.page #contents section .box h3 br {
		display: none;
	}
}
@media screen and ( max-width: 950px ) {
  #staff.page #intro h3 {
    white-space: inherit;
  }
	#staff.page #intro h3 br {
		display: none;
	}
}
@media screen and ( min-width: 641px ) and ( max-width: 900px ) {
	#staff.page #contents section figure {
		top: -2em;
	}
	#staff.page #contents section .box {
		font-size: 90%;
	}
	#staff.page #contents section .box ol {
		font-size: 90%;
	}
	#staff.page #contents section .point {
		font-size: 90%;
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	#staff.page #contents section .point h3 {
		font-size: 1.5em;
	}
}
@media screen and ( max-width: 640px ) {
	#staff.page #contents section figure {
    float: none;
    height: 26.875em;
    top: auto;
    width: 100%;
	}
	#staff.page #contents section .box {
		box-sizing: border-box;
		float: none;
		min-height: 28.125em;
		padding: 2em 6.25% 2em 6.25%;
		width: 100%;
	}
	#staff.page #contents section.right figure {
    float: none;
	}
	#staff.page #contents section.right .box {
		padding-right: 6.25%;
	}
	#staff.page #contents section .point {
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	#staff.page #contents section .point h3,
	#staff.page #contents section .point p,
  #staff.page #contents section .point .btn,
  #staff.page #contents section .point a.phone {
		text-align: left;
    display: block;
	}
}





/* Clinic
---------------------------------------- */
#clinic.page #main {
	overflow-x: hidden;
}
#clinic.page #intro h3 {
	margin-bottom: 0.5em;
}
#clinic.page #intro article {
	padding-bottom: 0;
}
#clinic.page #contents {
	padding-bottom: 6.5em;
}
#clinic.page #contents > section {
	clear: both;
	margin: auto;
	margin-top: 4.5em;
	max-width: 65em;
	position: relative;
}
#clinic.page #contents > section:nth-child(1),
#clinic.page #contents > section:nth-child(2) {
	max-width: 30em;
	padding-right: 35em;
}
#clinic.page #contents > section > .img,
#clinic.page #contents > section #gmap {
	max-width: 30em;
	position: absolute;
	right: 0;
	top: 0;
}
#clinic.page #contents > section:nth-child(1) {
	margin-top: 0;
}
#clinic.page #contents > section > figure {
	margin-top: 0.3em;
}
#clinic.page #contents > section h3 {
	font-size: 1.5625em;
}
h3.underline {
	border-bottom: 1px solid rgb(179, 148, 104);
}
#clinic.page #contents .open {
	margin-top: 2em;
}

#clinic.page #contents .open2 {
	margin-top: 2em;
}


#clinic.page #contents > section:nth-child(1) h3:nth-of-type(2) {
	margin-bottom: -0.25em;
	margin-top: 1.5em;
}
#clinic.page #contents > section:nth-child(1) h3:nth-of-type(2) + p {
	font-size: 0.9375em;
}
#clinic.page #contents .tel {
	margin: 1.6em 0 2.75em;
	max-width: 18.9375em;
}
#clinic.page #contents > section:nth-child(2) > h3:nth-of-type(1) {
	margin-bottom: -0.25em;
}
#clinic.page #gmap {
	height: 27.5em;
	margin-top: 0.5em;
}
#clinic.page #contents .address {
	font-size: 0.9375em;
	letter-spacing: 0.1em;
	margin-bottom: 2em;
}
.route li {
	padding-left: 6.875em;
	position: relative;
}
.route li figure {
	left: 0;
	height: 5.625em;
	width: 5.625em;
	position: absolute;
	top: 0;
}
.route li h4 {
	border-bottom: 1px solid #c3c3c3;
	font-weight: normal;
	letter-spacing: 0.35em;
	margin-bottom: 0.5em;
	padding-bottom: 0.25em;
}
.route li p {
	font-size: 0.9375em;
	letter-spacing: 0.1em;
	margin-top: 0;
}
#clinic.page #contents > section:nth-child(2) h5 {
	margin-bottom: -0.25em;
}
p.attention {
	background-color: rgba(69,62,52,0.1);
	border-radius: 0.2857em;
	color: #777;
	font-size: 0.875em;
	padding: 0.75em 1.5em;
}
#gmap_area {
	height: 26.25em;
	margin-top: -0.5em;
}
#clinic.page #contents > section:nth-child(3) h4 {
	border-bottom: 1px solid rgb(179, 148, 104);
	font-size: 1.25em;
	font-weight: normal;
	letter-spacing: 0.075em;
	margin-top: 1.1em;
	padding-bottom: 0.5em;
}
#clinic.page #contents > section:nth-child(3) h4 + p {
	font-size: 0.9375em;
	margin-top: -0.75em;
	margin-bottom: 0.9em;
}
p span.underline {
	text-decoration: underline;
}
ul.group li {
	display: inline-block;
	font-size: 0.875em;
}
ul.group li:not(.sup) {
	background-color: rgba(134,128,111,0.75);
	border-radius: 0.25em;
	color: #fff;
	font-weight: bold;
	margin: 0 0.18em 0.7em 0;
	padding: 0.225em 0.75em;
	vertical-align: super;
}
#clinic.page .gallery {
	margin: -0.5em auto 0;
	overflow: hidden;
	width: 101.54%;
}
#clinic.page .gallery li {
	box-sizing: border-box;
	float: left;
	width: 25%;
}
#clinic.page .gallery li figure img {
	max-width: 93.94%;
}
#clinic.page .gallery li figure figcaption {
	font-size: 1.0625em;
	position: relative;
	top: 0.25em;
}
#clinic.page .gallery li figure figcaption::after {
	background: url(../img/icon_blank01.svg) no-repeat center;
	background-size: cover;
	content: "";
	display: inline-block;
	height: 0.9412em;
	margin-left: 0.5em;
	width: 1.2353em
}
@media screen and ( max-width: 900px ) {
	#clinic.page #contents {
		padding-left: 6.25%;
		padding-right: 6.25%;
	}
	#clinic.page #contents > section:nth-child(1),
	#clinic.page #contents > section:nth-child(2) {
		max-width: 33.75em;
		padding-right: 0;
	}
	#clinic.page #contents > section > .img,
	#clinic.page #contents > section #gmap {
		max-width: 33.75em;
		position: relative;
	}
	#clinic.page #contents > section {
		max-width: 33.75em;
	}
	#clinic.page #gmap {
		margin-top: 2em;
	}
	#clinic.page .gallery {
		width: 100%;
	}
	#clinic.page .gallery li {
		margin-bottom: 1em;
		width: 50%;
	}
	#clinic.page .gallery li:nth-child(odd) {
		padding-right: 2%;
	}
	#clinic.page .gallery li:nth-child(even) {
		padding-left: 2%;
	}
	#clinic.page .gallery li figure img {
		max-width: 100%;
	}
}
@media screen and ( max-width: 380px ) {
	#clinic.page #gmap,
	#gmap_area {
		height: 20em;
	}
	#clinic.page .gallery li {
		margin-top: 1em;
		width: 100%;
	}
	#clinic.page .gallery li:nth-child(odd) {
		padding-right: 0;
	}
	#clinic.page .gallery li:nth-child(even) {
		padding-left: 0;
	}
}

/* Doctor
---------------------------------------- */
#doctor.page #main {
	overflow-x: hidden;
}
#doctor.page #intro h3 {
  font-size: 1.5625em;
  margin-bottom: -0.5em;
  margin-top: 0.25em;
  position: relative;
}
#doctor.page #intro h3::after {
  background-color: #aa936d;
  content: "";
  display: block;
  height: 1px;
  margin-top: 0.5em;
  width: 1.12em;
}
#doctor.page #intro article {
	padding-bottom: 0;
}
#doctor.page #intro h4,
#doctor.page #contents h4 {
  color: rgba(69,62,52,0.9);
  font-feature-settings: "palt";
  font-size: 1.75em;
  font-weight: normal;
  letter-spacing: 0.14em;
  position: relative;
  z-index: 2;
}
#doctor.page #intro figure:nth-child(1) {
  margin-top: 3.75em;
}
#doctor.page #intro p,
#doctor.page #contents > section p {
  font-size: 0.9375em;
	margin: 1.5em 0;
  max-width: 36em;
	position: relative;
}
#doctor.page #contents {
	padding-top: 0;
}
#doctor.page #contents > section {
	margin: auto;
	max-width: 68.5em;
	padding-bottom: 1.25em;
	position: relative;
	right: -1.1em;
}
#doctor.page #contents h4 {
	margin: 0.6em auto -0.25em;
}
#doctor.page #contents > section:nth-child(1) figure {
	max-width: 22.5em;
	position: absolute;
	right: 13.25%;
	top: -8.25em;
}
#doctor.page #contents > section:nth-child(2) {
	left: -0.8em;
	padding-bottom: 3.5em;
}
#doctor.page #contents > section:nth-child(2) figure {
	position: absolute;
	left: 0;
	max-width: 32.25em;
	z-index: -1;
}
#doctor.page #contents > section:nth-child(2) figure:nth-of-type(1) {
	top: 0;
}
#doctor.page #contents > section:nth-child(2) figure:nth-of-type(2) {
	bottom: 0;
}
#doctor.page #contents > section:nth-child(2) h4 {
	margin-right: 0;
	max-width: 19.286em;
}
#doctor.page #contents > section:nth-child(2) p {
	margin-left: auto;
}
#doctor.page #contents strong {
	font-size: 133%;
	font-weight: normal;
}
#doctor.page #contents .profile {
	padding-bottom: 7em;
	padding-top: 2em;
}
#doctor.page #contents .profile article {
	left: -1.5em;
	margin: auto;
	max-width: 53.125em;
	overflow: hidden;
	position: relative;
}
#doctor.page #contents .profile article::before {
  background: url(../img/bg_mogerumaru02.png) no-repeat center;
  background-size: cover;
  content: "";
  display: block;
  height: 4.25em;
  position: absolute;
  right: 1em;
  top: 4.4em;
  width: 11.875em;
  z-index: 0;
}
#doctor.page #contents .profile h3 {
	font-size: 1.5625em;
	margin-top: 0;
}
#doctor.page #contents .profile figure {
	float: left;
	margin-right: 3em;
	max-width: 25em;
}
#doctor.page #contents .profile .title {
	font-size: 0.8125em;
	letter-spacing: 0.2em;
	margin-bottom: 0.1em;
	margin-top: -0.25em;
}
#doctor.page #contents .profile h4 {
  font-size: 1.5em;
  margin-top: 0;
  letter-spacing: 0.1em;
}
#doctor.page #contents .profile h4 span {
  display: block;
  font-size: 0.55em;
  margin-top: -0.45em;
  text-decoration: none;
}
#doctor.page #contents .profile h4 + p {
  font-size: 0.875em;
	margin: 1.7em auto 1em;
}
#doctor.page #contents .profile .sns {
	margin-bottom: 0;
}
#doctor.page #contents .profile .sns_wrapper{
  align-items: flex-start;
}
#doctor.page #contents .profile .sns_wrapper .line {
  margin: 0;
	margin-bottom: 1em;
}
@media screen and ( max-width: 1140px ) {
	#doctor.page #intro p {
		background-color: rgba(255,255,255,0.5);
	}
}
@media screen and ( max-width: 900px ) {
	#doctor.page #contents > section,
	#doctor.page #intro h4 {
		padding-left: 6.25%;
		padding-right: 6.25%;
		right: auto;
	}
	#doctor.page #intro h3 {
		margin-left: auto;
		margin-right: auto;
		margin-top: 1em;
		max-width: 21.6em;
	}
	#doctor.page #intro h4,
	#doctor.page #contents h4,
	#doctor.page #contents > section:nth-child(2) h4 {
		margin-left: auto;
		margin-right: auto;
		max-width: 19.2857em;
	}
	#doctor.page #contents > section:nth-child(1) figure {
		margin-left: auto;
		margin-right: auto;
		max-width: 22.5em;
		position: relative;
		right: auto;
		top: auto;
	}
	#doctor.page #contents > section:nth-child(2) {
		left: auto;
	}
	#doctor.page #contents > section:nth-child(2) figure {
		position: relative;
		margin-left: auto;
		margin-right: auto;
		max-width: 32.25em;
	}
	#doctor.page #intro p,
	#doctor.page #contents > section p {
		margin-left: auto;
		margin-right: auto;
	}
	#doctor.page #contents > section:nth-child(2) {
		padding-bottom: 0;
	}
	#doctor.page #contents .profile {
		padding-left: 5%;
		padding-right: 5%;
	}
	#doctor.page #contents .profile article {
		left: auto;
		max-width: 25em;
	}
	#doctor.page #contents .profile article::before {
		margin-top: 3.75em;
		top: 50%;
	}
	#doctor.page #contents .profile figure {
		float: none;
		margin-right: 0;
	}
	#doctor.page #contents .profile .title {
		margin-top: 2em;
	}
	#doctor.page #contents .profile .sns,
	#doctor.page #contents .profile .btn {
		text-align: center;
	}
  #doctor.page #contents .profile .sns_wrapper{
    align-items: center;
  }
}
@media screen and ( max-width: 390px ) {
	#doctor.page #contents .profile article {
		overflow: visible;
	}
	#doctor.page #contents .profile article::before {
		margin-top: 0;
		opacity: 0.1;
		right: -0.5em;
		top: -2%;
	}
}

/* Medical
---------------------------------------- */
#medical.page #main {
	overflow-x: hidden;
}
#medical.page #intro article {
  min-height: 22.5em;
}
#medical.page #intro article figure {
  left: -2.2em;
  margin-top: -4.6em;
}
#medical.page #intro article figure img {
  height: 23.125em;
}
#medical.page #intro article h3 {
  left: -3em;
  position: relative;
  text-align: left;
  top: 1em;
}
#medical.page #contents {
	padding-bottom: 6em;
}
#medical.page #contents > section {
	clear: both;
	margin: auto;
	margin-top: 4.5em;
	max-width: 65em;
	position: relative;
}
#medical.page #contents > section > h3 {
	font-size: 1.5625em;
	margin-bottom: -0.5em;
}
#medical.page #contents > section > h3 small {
	font-size: 60%;
	letter-spacing: 0.15em;
}
#medical.page #contents > section:nth-child(1) {
	margin-top: -13.75em;
	overflow: hidden;
}
#medical.page #contents > section:nth-child(1) h3 {
	margin-bottom: -1em;
}
#medical.page #contents > section:nth-child(1) > section {
	box-sizing: border-box;
	float: left;
	width: 50%;
}
#medical.page #contents > section:nth-child(1) > section:nth-of-type(2n+1) {
	clear: both;
}
#medical.page #contents > section:nth-child(1) > section:nth-of-type(odd) {
	padding-right: 3.847%;
}
#medical.page #contents > section:nth-child(1) > section:nth-of-type(even) {
	padding-left: 3.847%;
}
#medical.page #contents > section:nth-child(1) > section h4 {
	border-bottom: 1px solid rgb(179, 148, 104);
	font-size: 1.25em;
	font-weight: normal;
	letter-spacing: 0.075em;
	margin-bottom: 1em;
	margin-top: 2.25em;
	padding-bottom: 0.45em;
}
#medical.page #contents > section:nth-child(2) h3 + p,
#medical.page #contents > section:nth-child(3) h3 + p {
	font-size: 0.9375em;
}
#medical.page #contents > section:nth-child(2) {
	margin-top: 5.25em;
}
#medical.page .inspection {
	margin: 0.5em auto 6em;
	overflow: hidden;
	width: 101.5385%;
}
#medical.page .inspection li {
	box-sizing: border-box;
	float: left;
	margin-top: 1.25em;
	width: 25%;
}
#medical.page .inspection li figure img {
	max-width: 93.94%;
}
#medical.page .inspection li figure figcaption {
	font-size: 1.0625em;
	position: relative;
	top: 0.25em;
}
#medical.page .cooperation {
	overflow: hidden;
	width: 103.847%;
}
#medical.page .cooperation > li {
	box-sizing: border-box;
	float: left;
	margin-top: 1.25em;
	padding-right: 3.704%;
	width: 33.3334%;
}
div[id^="gmap"] {
	height: 11.25em;
}
#medical.page .cooperation > li h4 {
	border-bottom: 1px solid #c3c3c3;
	font-size: 1.125em;
	font-weight: normal;
	letter-spacing: 0.075em;
	margin: 0.5em auto 0.25em;
	padding-bottom: 0.25em;
	padding-left: 1.3333em;
	position: relative;
}
#medical.page .cooperation > li h4::before {
	background: url(../img/icon_hospital01.svg) no-repeat center;
	background-size: cover;
	content: "";
	display: block;
	height: 1em;
	left: 0;
	position: absolute;
	top: 0.3em;
	width: 1em;
}
#medical.page .cooperation > li ul li {
	font-size: 0.9375em;
	padding-left: 1.55em;
	position: relative;
}
#medical.page .cooperation > li ul li::before {
	background: url(../img/icon_tel01.svg) no-repeat center;
	background-size: cover;
	content: "";
	display: block;
	height: 1.125em;
	left: 0;
	position: absolute;
	top: 0.2em;
	width: 1.125em;
}
#medical.page .cooperation > li ul li.address span {
	font-size: 0.9333em;
}
#medical.page .cooperation > li ul li.address::before {
	background-image: url(../img/icon_map01.svg);
}
@media screen and ( max-width: 1140px ) {
	#medical.page #intro article figure {
		left: -4.5em;
	}
}
@media screen and ( max-width: 900px ) {
	#medical.page #intro article figure {
		left: auto;
	}
	#medical.page #intro article h3 {
		float: none;
		left: auto;
		margin-bottom: 0;
		margin-left: auto;
		margin-right: auto;
		margin-top: -2.75em;
		max-width: 90%;
		text-align: center;
	}
	#medical.page #contents > section > h3,
	#medical.page #contents > section > h4,
	#medical.page #contents > section > p,
	#medical.page #contents > section .btn_big {
		margin-left: 3%;
		margin-right: 3%;
	}
	#medical.page #contents > section:nth-child(1) {
		margin-top: -4em;
	}
	#medical.page #contents > section {
		padding-left: 2%;
		padding-right: 2%;
	}
	#medical.page #contents > section:nth-child(1) > section,
	#medical.page #contents > section:nth-child(1) > section:nth-of-type(odd),
	#medical.page #contents > section:nth-child(1) > section:nth-of-type(even) {
		padding: 0 3%;
	}
	#medical.page .inspection,
	#medical.page .cooperation {
		box-sizing: border-box;
		padding: 0 3%;
	}
	#medical.page .inspection li figure figcaption {
		font-size: 0.875em;
	}
	#medical.page .inspection li figure figcaption span {
		font-size: 90%;
	}
}
@media screen and ( max-width: 840px ) {
	#medical.page .inspection {
		width: 103.847%;
	}
	#medical.page .inspection > li {
		padding-right: 3.704%;
		width: 33.3334%;
	}
	#medical.page .inspection li figure img {
		max-width: 100%;
	}
	#medical.page .cooperation {
		padding: 0;
		width: 100%;
	}
	#medical.page .cooperation > li {
		padding: 0 3%;
		width: 50%;
	}
	#medical.page .cooperation > li:nth-child(2n+1) {
		clear: both;
	}
}
@media screen and ( max-width: 680px ) {
	#medical.page #intro article h3 {
		text-align: left;
	}
	#medical.page .inspection {
		padding: 0;
		width: 100%;
	}
	#medical.page .inspection > li {
		padding: 0 3%;
		width: 50%;
	}
}
@media screen and ( max-width: 580px ) {
	#medical.page #contents > section:nth-child(1) {
		margin-top: 0;
	}
	#medical.page #contents > section:nth-child(1) > section {
		float: none;
		width: 100%;
	}
	#medical.page #contents > section:nth-child(1) > section:nth-of-type(odd) {
		padding-right: 3%;
	}
	#medical.page #contents > section:nth-child(1) > section:nth-of-type(even) {
		padding-left: 3%;
	}
}
@media screen and ( max-width: 440px ) {
	#medical.page .inspection li figure figcaption span {
		display: block;
	}
	#medical.page .cooperation > li {
		margin-top: 1.5em;
		width: 100%;
	}
}
@media screen and ( max-width: 360px ) {
	#medical.page #intro article figure img {
		-webkit-transform: scale(1.25);
		transform: scale(1.25);
	}
}

/* Vaccination
---------------------------------------- */
#vaccination.page #intro article {
  min-height: 10.75em;
  overflow: visible;
}
#vaccination.page #intro article figure {
  left: 0.5em;
  margin-top: -4.6em;
}
#vaccination.page #intro article figure img {
  height: 23.125em;
}
#vaccination.page #intro article h3 {
  left: -8em;
  position: relative;
  text-align: left;
  top: 1em;
}
#vaccination.page #contents {
	overflow-x: hidden;
	padding-top: 0;
}

#vaccination.page .statement{
  text-align: center; 
  position: relative;
  font-size: 130%;
  margin:0 auto;
  max-width: 37.5em;
  margin-left: auto;
  margin-right: auto;
  margin-top: 3em;
  margin-bottom: 3em;
}

#vaccination.page .statement p{
  float: none;
}
#vaccination.page #contents > section {
	margin: auto;
	max-width: 65em;
	padding-bottom: 1.25em;
	position: relative;
}
#vaccination.page #contents > section {
	clear: both;
	margin: auto;
	margin-top: 4.5em;
	max-width: 65em;
	position: relative;
}
#vaccination.page #contents > section:nth-child(1) {
	margin-top: 0;
}
#vaccination.page #contents > section > h3 {
	font-size: 1.5625em;
	margin-bottom: -1em;
}
#vaccination.page #contents > section > h4 {
	border-bottom: 1px solid rgb(179, 148, 104);
	font-size: 1.25em;
	font-weight: normal;
	letter-spacing: 0.075em;
	margin-bottom: 0.25em;
	margin-top: 2.25em;
	padding-bottom: 0.45em;
}
#vaccination.page #contents > section > h4 + p {
	font-size: 0.9375em;
	margin-bottom: -0.5em;
}
#vaccination.page #contents .group {
	overflow: hidden;
	width: 103.847%;
}
#vaccination.page #contents .group section {
	box-sizing: border-box;
	float: left;
	margin-top: 1.25em;
	padding-right: 3.704%;
	width: 33.3334%;
}
#vaccination.page #contents .group section:nth-of-type(3n+1) {
	clear: both;
}
#vaccination.page #contents .group section h5 {
	border-bottom: 1px solid #c3c3c3;
	color: rgb(179,148,104);
	font-size: 1.125em;
	font-weight: bold;
	margin-top: 0.5em;
	margin-bottom: 0.6em;
	padding-bottom: 0.25em;
	padding-left: 1.2222em;
	position: relative;
}
#vaccination.page #contents .group section h5::before {
	background: url(../../img/icon_vakzin01.svg) no-repeat center;
	background-size: cover;
	content: "";
	display: block;
	height: 1em;
	left: 0;
	position: absolute;
	top: 0.3em;
	width: 0.6666em;
}
#vaccination.page #contents .group section h5 .sup {
	font-size: 70%;
	font-weight: normal;
	letter-spacing: 0.075em;
	line-height: 1.2;
	margin-left: 0.55em;
	position: absolute;
	white-space: nowrap;
}
#vaccination.page #contents .group section h5 .sup.line_1 {
	line-height: 2.4;
}
#vaccination.page #contents .group section h5 .sup.line_2 {
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	-webkit-transform-origin: left center;
	transform-origin: left center;
	white-space: pre;
}
#vaccination.page #contents .group section dl {
	margin: auto;
	overflow: hidden;
}
#vaccination.page #contents .group section dl > * {
	float: left;
	margin: auto;
}
#vaccination.page #contents .group section dl dt {
	clear: both;
	margin-top: 0.1em;
	width: 23.5%;
}
#vaccination.page #contents .group section dl dt span {
	background-color: rgb(170,147,109);
	border-radius: 0.3333em;
	color: #fff;
	display: inline-block;
	font-size: 0.75em;
	font-weight: bold;
	padding: 0.075em 0.5em;
	position: relative;
	top: -0.45em;
}
#vaccination.page #contents .group section dl dd {
	font-size: 0.875em;
	line-height: 1.65;
	margin-bottom: 0.35em;
	overflow: hidden;
	width: 76.5%;
}
#vaccination.page #contents .btn_big {
	margin-top: 3.25em;
}
#vaccination.page #contents .btn_big a::before {
  background: url(../../img/icon_schedule01.svg) no-repeat center;
  background-size: cover;
  content: "";
	display: inline-block;
  height: 1.4814em;
	margin-right: 0.6em;
	vertical-align: top;
  width: 1.4814em;
}
.btn_big a {
	background-color: rgb(170,147,109);
	border-radius: 0.2222em;
	color: #fff;
	display: block;
	font-size: 1.6875em;
	font-weight: bold;
	letter-spacing: 0.075em;
	padding: 1.35em 5%;
	position: relative;
	text-align: center;
  -webkit-transition: background-color 0.23s;
  transition: background-color 0.23s;
}
.btn_big a:hover {
	background-color: #bfae92;
}
.btn_big a::after {
	border: 2px solid #fff;
	border-radius: 0.16em;
	bottom: 3px;
	content: "";
	display: block;
	left: 3px;
	position: absolute;
	right: 3px;
	top: 3px;
}
.btn_big a span {
	text-decoration: underline;
}
#vaccination.page #contents .adult {
	margin-top: 3em;
	padding-bottom: 6.25em;
	padding-top: 1.25em;
}
#vaccination.page #contents .adult::before {
	background-color: rgba(170,147,109,0.03);
	border-top: 1px solid #ddd;
	bottom: 0;
	content: "";
	display: block;
	left: -100%;
	position: absolute;
	right: -100%;
	top: 0;
}
@media screen and ( max-width: 1140px ) {
	#vaccination.page #intro article figure {
		left: -2em;
	}
}
@media screen and ( max-width: 900px ) {
	#vaccination.page #intro article figure {
		left: auto;
	}
	#vaccination.page #intro article h3 {
		float: none;
		left: auto;
		margin-bottom: -0.75em;
		margin-left: auto;
		margin-right: auto;
		margin-top: -2.75em;
		text-align: center;
	}
	#vaccination.page #contents > section > h3,
	#vaccination.page #contents > section > h4,
	#vaccination.page #contents > section > p,
	#vaccination.page #contents > section .btn_big {
		margin-left: 3%;
		margin-right: 3%;
	}
	#vaccination.page #contents .group {
		width: 100%;
	}
	#vaccination.page #contents .group section {
		padding-left: 3%;
		padding-right: 3%;
		width: 50%;
	}
	#vaccination.page #contents .group section:nth-of-type(3n+1) {
		clear: inherit;
	}
	#vaccination.page #contents .group section:nth-of-type(2n+1) {
		clear: both;
	}
	#vaccination.page #contents > section {
		padding-left: 2%;
		padding-right: 2%;
	}
}
@media screen and ( max-width: 680px ) {
	#vaccination.page #intro article h3 {
		text-align: left;
	}
}
@media screen and ( max-width: 580px ) {
	#vaccination.page #contents .group section {
		float: none;
		width: 100%;
	}
	#vaccination.page #contents .group section dl dt {
		margin-right: 1em;
		width: inherit;
	}
	#vaccination.page .btn_big a span {
		display: block;
	}
}
@media screen and ( max-width: 360px ) {
	#vaccination.page #intro article figure img {
		-webkit-transform: scale(1.25);
		transform: scale(1.25);
	}
}

/* Visitcare
---------------------------------------- */
#visitcare.page #main {
	overflow-x: hidden;
}
#visitcare.page #intro article {
    min-height: 22.5em;
}
#visitcare.page #intro article figure {
    left: -2.2em;
    margin-top: -4.6em;
}
#visitcare.page #intro article figure img {
    height: 23.125em;
}
#visitcare.page #intro article h3 {
    left: -1.25em;
    max-width: 22.8572em;
    position: relative;
    text-align: left;
    top: 1em;
}
#visitcare.page #contents {
	padding-bottom: 6em;
}
#visitcare.page #contents h2 {
    margin-bottom: 3em;
}
#visitcare.page #contents > section {
	clear: both;
	margin: auto;
	margin-top: 4.5em;
	max-width: 68.5em;
	position: relative;
}
#visitcare.page #contents > section > section:not(.content) {
    overflow-x: hidden;
}
#visitcare.page #contents > section > section {
    box-sizing: border-box;
    position: relative;
}
#visitcare.page #contents > section > section > figure {
    float: right;
    max-width: 32.25em;
}
#visitcare.page #contents .content {
    margin-top: 5.5em;
    padding-bottom: 1.5em;
    padding-top: 3em;
}
#visitcare.page #contents .content::before {
    background-color: rgba(170,147,109,0.15);
    bottom: 0;
    content: "";
    display: block;
    left: -100%;
    position: absolute;
    right: -100%;
    top: 0;
}
#visitcare.page #contents .content::after {
    clear: both;
    content: "";
    display: block;
    height: 0.01px;
}
#visitcare.page #contents .content h3 {
    margin: auto 3% -0.25em;
}
#visitcare.page #contents .content h3,
#visitcare.page #contents .type h3 {
	font-size: 1.5625em;
}
#visitcare.page #contents .group {
    box-sizing: border-box;
    float: left;
    padding: 0 3%;
    width: 50%;
}
#visitcare.page #contents .group ul li {
    margin: 1.65em auto;
    padding-left: 1.875em;
    position: relative;
}
#visitcare.page #contents .group ul li::before {
    border: 2px solid rgba(170,147,109,0.7);
    border-radius: 100%;
    box-sizing: border-box;
    content: "";
    display: block;
    height: 0.875em;
    left: 0;
    position: absolute;
    top: 0.375em;
    width: 0.875em;
}
#visitcare.page #contents > section:nth-child(1) {
	margin-top: -10.75em;
    margin-bottom: 9em;
}
#visitcare.page #contents > section:nth-child(1) > section h4 {
	border-bottom: 1px solid rgb(179, 148, 104);
	font-size: 1.25em;
	font-weight: normal;
	letter-spacing: 0.075em;
	padding-bottom: 0.45em;
}
#visitcare.page #contents .type {
    padding: 0 3%;
}
#visitcare.page #contents .type h3 {
    margin: 2.5em auto 2em;
}
#visitcare.page #contents .range {
    overflow: hidden;
}
#visitcare.page #contents .range > li {
    box-sizing: border-box;
    float: left;
    width: 33.333%;
}
#visitcare.page #contents .range > li .box {
    background-color: rgba(170,147,109,0.15);
    border-radius: 1.75em;
    box-sizing: border-box;
    margin: auto;
    max-width: 18.75em;
    min-height: 16.875em;
    padding: 2em 1em;
    text-align: center;
}
#visitcare.page #contents .range > li .box figure {
    display: inline-block;
    margin-bottom: 1.4532em;
    max-width: 5.625em;
    width: 100%;
}
#visitcare.page #contents .range > li:nth-child(1) .box {
    margin-left: 0;
}
#visitcare.page #contents .range > li:nth-child(2) .box {
    background-color: rgba(170,147,109,0.3);
}
#visitcare.page #contents .range > li:nth-child(3) .box {
    margin-right: 0;
}
#visitcare.page #contents .range > li .box ul li::before {
    content: "- ";
}
#visitcare.page #contents .list {
    overflow: hidden;
    padding: 0 1.5% 4em;
}
#visitcare.page #contents .list dl {
    box-sizing: border-box;
    float: left;
    padding: 0 1.5%;
    width: 33.333%;
}
#visitcare.page #contents .list dl:nth-child(3n + 1) {
    clear: both;
}
#visitcare.page #contents .list dl > * {
    margin: 1.65em auto;
    padding-left: 1.375em;
    position: relative;
}
#visitcare.page #contents .list dl dt {
    font-size: 1.125em;
    margin-bottom: 0;
    padding-bottom: 0.25em;
}
#visitcare.page #contents .list dl dt::before {
    border: 2px solid rgba(170,147,109,0.7);
    border-radius: 100%;
    box-sizing: border-box;
    content: "";
    display: block;
    height: 0.7778em;
    left: 0;
    position: absolute;
    top: 0.375em;
    width: 0.7778em;
}
#visitcare.page #contents .list dl dd {
    border-top: 1px solid #C3C3C3;
    line-height: 2.15;
    margin-bottom: 0;
    margin-top: 0;
    padding-top: 0.5em;
}
#visitcare.page #contents aside {
	padding: 5em 3% 4em;
}
#visitcare.page #contents aside .inner {
	border: 1px solid #c3c3c3;
	box-sizing: border-box;
	color: rgba(69,62,52,0.9);
	padding: 2.75em 6em 2.75em 3em;
	overflow: hidden;
}
#visitcare.page #contents aside figure {
	float: left;
	margin-right: 3em;
	max-width: 19.375em;
    width: 100%;
}
#visitcare.page #contents aside h4 {
	font-size: 1.3125em;
	font-weight: normal;
}
#visitcare.page #contents aside p {
	font-size: 0.875em;
	margin: 0.5em auto;
	overflow: hidden;
}
#visitcare.page #contents .region .table_cell:nth-of-type(2) {
    width: 52%;
}
#visitcare.page #contents .region h2 {
    margin-bottom: 1.75em;
}
#visitcare.page #contents .region h3 {
    line-height: 1.6;
    margin-bottom: 0.9em;
    margin-top: 0;
}
#visitcare.page #contents .region .renge table {
    margin: 2em auto;
    width: 100%;
}
#visitcare.page #contents .region .renge table tr > * {
    font-size: 0.875em;
    padding: 0;
    vertical-align: middle;
    width: auto;
}
#visitcare.page #contents .region .renge table th {
    border-right: 1px solid #C3C3C3;
}
#visitcare.page #contents .region .renge table td {
    padding-left: 10%;
}
#visitcare.page #contents .region .renge .sup {
    color: rgb(179, 148, 104);
    font-size: 0.75em;
    position: relative;
    top: -0.5em;
}
#visitcare.page #contents .region .tel {
    margin: 2.1em 0 2.75em;
    max-width: 18.9375em;
}
#visitcare.page #contents .region #gmap_area {
    height: 31.875em;
    margin-top: 0.4em;
    max-width: 35.625em;
}
#visitcare.page #contents .region .address {
    font-size: 0.9375em;
    letter-spacing: 0.1em;
    margin-top: 0.8em;
}
#visitcare.page #contents .region .address .link {
    float: right;
}
@media screen and ( max-width: 1140px ) {
	#visitcare.page #intro article figure {
		left: -4.5em;
	}
}
@media screen and ( max-width: 900px ) {
	#visitcare.page #intro article figure {
		left: auto;
	}
	#visitcare.page #intro article h3 {
		float: none;
		left: auto;
		margin-bottom: 0;
		margin-left: auto;
		margin-right: auto;
		margin-top: -2.75em;
		max-width: 90%;
		text-align: center;
	}
    #visitcare.page #contents > section p.supplement {
        text-align: center;
    }
    #visitcare.page #contents .content {
        margin-top: 2.5em;
    }
    #visitcare.page #contents > section > section:not(.content):not(.type) {
        padding-left: 6.25%;
        padding-right: 6.25%;
    }
	#visitcare.page #contents > section:nth-child(1) {
		margin-top: -2em;
	}
    #visitcare.page #contents section h2 {
        margin-bottom: 1em;
    }
    #visitcare.page #contents > section > section h3 {
        font-size: 1.5em;
		float: none;
		left: auto;
		margin-bottom: 0;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
    #visitcare.page #contents > section > section > figure {
        float: none;
        margin-left: auto;
        margin-right: auto;
    }
    #visitcare.page #contents .type h3 {
        margin: 1.5em auto 0.5em;
    }
    #visitcare.page #contents .range > li .box {
        max-width: 16em;
    }
    #visitcare.page #contents aside {
        padding: 3em 0 0;
    }
    #visitcare.page #contents aside .inner {
        margin-left: 6.25%;
        margin-right: 6.25%;
        padding-left: 7%;
        padding-right: 7%;
    }
	#visitcare.page #contents aside figure {
		float: none;
		margin: 0 auto 2em;
	}
    #visitcare.page #contents .region {
        padding: 0 6.25% 1.5em;
    }
    #visitcare.page #contents .region > * {
        left: inherit;
    }
    #visitcare.page #contents .region h2 {
        left: 0;
        margin: 0.8em auto 1.1em;
    }
    #visitcare.page #contents .region .table {
        display: block;
    }
    #visitcare.page #contents .region .table_cell {
        display: block;
    }
    #visitcare.page #contents .region .table_cell:nth-of-type(2) {
        width: 100%;
    }
    #visitcare.page #contents .region h3 {
        margin-bottom: 0;
    }
    #visitcare.page #contents .region #gmap_area {
        height: 20em;
        margin-top: 2.3em;
        max-width: 100%;
    }
    #visitcare.page #contents .region .address .link {
        display: block;
        float: none;
    }
}
@media screen and ( max-width: 840px ) {
    #visitcare.page #contents .range > li {
        float: none;
        margin: 1.5em auto;
        width: 100%;
    }
    #visitcare.page #contents .range > li .box {
        min-height: auto;
        max-width: none;
    }
    #visitcare.page #contents .list {
        padding-bottom: 0;
        padding-left: 6.25%;
        padding-right: 6.25%;
    }
    #visitcare.page #contents .list dl {
        float: none;
        margin: 1.5em auto;
        padding: 0;
        width: 100%;
    }
}
@media screen and ( min-width: 480px ) and ( max-width: 840px ) {
    #visitcare.page #contents .range > li .box {
        overflow: hidden;
        text-align: left;
    }
    #visitcare.page #contents .range > li .box figure {
        float: left;
        margin: 0 2em;
    }
    #visitcare.page #contents .range > li .box ul {
        margin-top: 0.25em;
    }
}
@media screen and ( max-width: 680px ) {
	#visitcare.page #contents > section:nth-child(1) {
        margin-bottom: -1em;
		margin-top: 2em;
	}
	#visitcare.page #intro article h3 {
		text-align: left;
	}
}
@media screen and ( max-width: 580px ) {
	#visitcare.page #contents > section:nth-child(1) > section {
		float: none;
		width: 100%;
	}
    #visitcare.page #contents .group {
        float: none;
        padding: 0 6.25%;
        width: 100%;
    }
    #visitcare.page #contents .type {
        padding: 0 6.25%;
    }
    #visitcare.page #contents .range > li {
        margin: 1em auto;
    }
}
@media screen and ( max-width: 440px ) {
    #visitcare.page #contents > section > section h3 {
        font-size: 1.25em;
        text-align: left;
	}
    #visitcare.page #contents > section > section h3 br {
        display: none;
    }
    #visitcare.page #contents > section p.supplement {
        text-align: left;
    }
    #visitcare.page #contents > section p.supplement br {
        display: none;
    }
    #visitcare.page #contents .region .renge table {
        margin: 1em auto 2em;
    }
    #visitcare.page #contents .region .renge table th {
        padding-right: 0.75em;
    }
    #visitcare.page #contents .region .renge table td {
        padding-left: 0.75em;
    }
}
@media screen and ( max-width: 360px ) {
	#visitcare.page #intro article figure img {
		-webkit-transform: scale(1.25);
		transform: scale(1.25);
	}
}


/* orthopedics
---------------------------------------- */
#orthopedics #contents section{
  clear: both;
  margin: auto;
  width: 100%;
  padding: 4.2em 0;
  text-align: left;
}
#orthopedics #contents section:nth-child(2n+3){
  background-color: rgba(170,147,109,0.15);
}
#orthopedics #contents section h3{
  text-align: center;
  max-width: 68.5em;
}
#orthopedics #contents section p{
  max-width: 54.25em;
  width: 80%;
  margin: auto;
}
#orthopedics #contents section:nth-child(1){
  text-align: center;
  background-color: rgba(170,147,109,0.15);
}
#orthopedics #contents section .box-wrapper{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-flow: row wrap;
  text-align: left;
  margin:auto;
  margin-top: 2em;
  max-width: 54.8em;
}
#orthopedics #contents section .box-wrapper .box{
  width: 26.7em;
  padding: 0 1.25em 0 0;
  margin-bottom: 1.2em;
}
#orthopedics #contents section .box-wrapper .box:nth-of-type(2n){
  padding-right: 0;
}
#orthopedics #contents section .box-wrapper .box h4{
  font-size: 1.2em;
  color: rgba(69,62,52,1);
  font-weight: 400;
  border-bottom: 1px solid rgb(179, 148, 104);
  padding-bottom: 0.42em;
}
#orthopedics #contents section .box-wrapper .box p{
  width: 100%;
  margin: 0;
}
#orthopedics #contents section .box-wrapper .box p.tel{
  width: auto;
  margin: 1.33em 0 0;
}
#orthopedics #contents section .box-wrapper .box p.tel img{
  width: 80%;
  margin-left: 0%;
}
@media screen and ( min-width: 921px ) and ( max-width: 1080px){
  #orthopedics #contents section p{
    width: 80%;
  }
}
@media screen and ( max-width: 920px ) {
  #orthopedics #contents section h3,
  #orthopedics #contents section p,
  #orthopedics #contents section .box-wrapper{
    width: 85%;
    text-align: left;
    margin-left: auto;
    margin-right: auto;
  }
  #orthopedics #contents section .box-wrapper .box{
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
  }
  #orthopedics #contents section .box-wrapper .box p{
    font-size: 90%;
  }
}
@media screen and ( max-width: 640px ) {
  #orthopedics #contents section h3 {
    font-size: 1.5em;
  }
  #orthopedics #contents section .box-wrapper .box p.tel img{
    width: 80%;
    margin-left: 10%;
  }
}

/* Recruit
---------------------------------------- */
#recruit.page #intro p {
  font-size: 0.9375em;
  max-width: 36em;
}
#recruit.page #intro article {
	min-height: 24em;
	padding-bottom: 1.25em;
}
#recruit.page #contents {
	padding-bottom: 6em;
}
#recruit.page #contents > section:nth-child(1) {
	background-color: rgba(170,147,109,0.15);
	border-radius: 0.625em;
	margin: auto;
	max-width: 65em;
	overflow: hidden;
	padding-bottom: 3.25em;
	text-align: center;
}
#recruit.page #contents > section h3 {
	font-size: 1.5625em;
	letter-spacing: 0.075em;
	margin: 1.6em auto -0.5em;
}
#recruit.page #contents > section h3 + p {
	font-size: 0.9375em;
}
#recruit.page #contents .job li {
	display: inline-block;
	margin: 1.2em 0.8em 1.5em;
	max-width: 18.75em;
	text-align: left;
	vertical-align: top;
	width: 100%;
}
#recruit.page #contents .job li h4 {
	border-bottom: 1px solid #c3c3c3;
	color: rgb(179,148,104);
	font-size: 1.125em;
	font-weight: normal;
	letter-spacing: 0.075em;
	margin: 0.5em auto 0.25em;
	padding-bottom: 0.15em;
}
#recruit.page #contents .job li p {
	color: #4d4d4d;
	font-size: 0.875em;
	margin-top: 0.65em;
}
#recruit.page #contents .btn {
	margin-top: 2em;
}
@media screen and ( max-width: 900px ) {
	#recruit.page #contents {
		padding-left: 3%;
		padding-right: 3%;
	}
	#recruit.page #contents > section:nth-child(1) {
		padding-left: 4%;
		padding-right: 4%;
		width: 86%;
	}
	#recruit.page #contents .job {
		overflow: hidden;
		text-align: left;
	}
	#recruit.page #contents .job li {
		box-sizing: border-box;
		display: block;
		float: left;
		margin-left: 2%;
		margin-right: 2%;
		max-width: inherit;
		width: 46%;
	}
}
@media screen and ( max-width: 520px ) {
	#recruit.page #contents > section h3 + p br {
		display: none;
	}
	#recruit.page #contents .job li {
		float: none;
		margin-left: auto;
		margin-right: auto;
		max-width: 18.75em;
		width: 100%;
	}
}

/* Blog
---------------------------------------- */
#blog #main_column article h3 a:hover,
.meta .category a:hover,
.tags-links a:hover,
.entry-content a:hover {
	text-decoration: underline;
}
#blog #main {
	padding-bottom: 2em;
	padding-left: 6.25%;
	padding-right: 6.25%;
}
#blog.news #contents #main_column {
	float: none;
	margin-left: auto;
	margin-right: auto;
}
#blog h2 a {
	color: #1a1a1a;
}
#blog #contents {
	margin: auto;
	max-width: 56.25em;
	overflow: hidden;
	padding-bottom: 5.25em;
}
#blog.archive #main_column article a,
#blog #main_column article .meta a {
	color: rgba(69,62,52,0.9);
}
#blog #contents #main_column {
	float: left;
	max-width: 61.112%;
	width: 100%;
}
#blog #contents #sidebar {
	float: right;
	max-width: 31.112%;
	width: 100%;
}
#blog #main_column article .meta {
	border-bottom: 1px solid #c3c3c3;
	font-size: 0.875em;
	letter-spacing: 0.05em;
	margin-top: 3.35em;
	overflow: hidden;
	padding-bottom: 0.5em;
}
#blog #main_column article:first-of-type .meta {
	margin-top: 1.75em;
}
#blog #main_column article .meta time {
	color: #888;
	float: left;
	font-family: 'Lato', Arial, Helvetica, "sans-serif";
	letter-spacing: 0.15em;
}
#blog #main_column article .meta .category {
	margin: auto;
	text-align: right;
}
#blog #main_column article .meta .category::before {
	color: #4d4d4d;
	content: "カテゴリー | ";
}
#blog #main_column article .meta .category span:not(:first-child)::before {
	content: ",";
	margin-right: 0.5em;
}
#blog #main_column article h3 {
	font-size: 1.1875em;
	letter-spacing: 0.075em;
	line-height: 1.65;
}
#blog #main_column article h3::after {
	border-bottom: 1px solid rgba(170,147,109,0.7);
	content: "";
	display: block;
	margin-top: 0.85em;
	width: 1.4737em;
}
.pagination {
	margin: 5.25em auto 0;
	position: relative;
	text-align: center;
}
.pagination li {
	display: inline-block;
	font-size: 0.875em;
	margin: 0 0.175em;
	vertical-align: top;
}
.pagination li .page-numbers {
	background-color: rgb(170,147,109);
	border-radius: 0.1429em;
	color: #fff;
	font-weight: bold;
	display: inline-block;
	height: 2.1429em;
	line-height: 2.1429em;
	-webkit-transition: background-color 0.2s;
	transition: background-color 0.2s;
	width: 2.1429em;
	vertical-align: top;
}
.pagination li .current,
.pagination li a:hover {
	background-color: rgb(134,128,111);
}
.pagination li .next,
.pagination li .prev {
	background: url(../img/btn_arrow01.svg) no-repeat center transparent;
	background-size: cover;
	border-radius: 100%;
	display: block;
	height: 3em;
	overflow: hidden;
	margin-top: -1.5em;
	position: absolute;
	text-indent: 200%;
	top: 50%;
	white-space: nowrap;
	width: 3em;
}
.pagination li .next {
	right: 0;
}
.pagination li .prev {
	left: 0;
	-webkit-transform: scale(-1);
	transform: scale(-1);
}
.pagination li .next:hover,
.pagination li .prev:hover {
	background-color: rgba(199,178,153,0.2);
}
#sidebar {
	padding-top: 1.75em;
}
#sidebar a:hover {
	text-decoration: underline;
}
#sidebar #searchform {
	position: relative;
}
#sidebar #searchform label {
	display: none;
}
#sidebar #searchform .field {
	-webkit-appearance: none;
	border: 1px solid #e9e9e9;
	border-radius: 0.4286em;
	box-shadow: none;
	box-sizing: border-box;
	color: #4d4d4d;
	font-size: 0.875em;
	height: 2.5em;
	letter-spacing: 0.1em;
	line-height: 2.5em;
	padding: 0.55em 0.65em;
	width: 100%;
}
#sidebar #searchform .field::-webkit-input-placeholder {
	color: rgba(69,62,52,0.4);
	font-weight: normal;
}
#sidebar #searchform .field:-ms-input-placeholder {
	color: rgba(69,62,52,0.4);
	font-weight: normal;
}
#sidebar #searchform .field::-moz-placeholder {
	color: rgba(69,62,52,0.4);
	font-weight: normal;
}
#sidebar #searchform #searchsubmit {
	background: url(../img/icon_search01.svg) no-repeat center;
	background-size: 1.3125em 1.3125em;
	border: none;
	border-top-right-radius: 0.375em;
	border-bottom-right-radius: 0.375em;
	color: transparent;
	cursor: pointer;
	display: block;
	height: 2em;
	overflow: hidden;
	position: absolute;
	right: 1px;
	text-indent: 200%;
	top: 0;
	white-space: nowrap;
	width: 2em;
	z-index: 1;
}
#sidebar h1 {
	color: #4d4d4d;
	font-size: 1.5625em;
	font-weight: normal;
	letter-spacing: 0.1em;
	margin-bottom: 0.5em;
	margin-top: 1.5em;
	padding-left: 1.2em;
	position: relative;
}
#sidebar h1::before {
	background: url(../img/icon_category01.svg) no-repeat center;
	background-size: cover;
	content: "";
	display: block;
	height: 0.84em;
	left: 0;
	margin-top: -0.43em;
	position: absolute;
	top: 50%;
	width: 0.84em;
}
#sidebar aside[id^="categories"] ul li a,
#sidebar aside[id*="archives"] ul li a {
	color: rgba(69,62,52,0.9);
	font-size: 0.9375em;
}
#sidebar aside[id^="categories"] ul li {
	margin: 0.125em 0.25em 0.125em 0;
	padding-left: 1em;
	text-indent: -0.5em;
}
#sidebar aside[id^="categories"] ul li a::before {
	content: "- ";
	display: inline-block;
	margin-right: 0.5em;
}
#sidebar aside[id*="archives"] h1::before {
	background-image: url(../img/icon_archive01.svg);
}
.smallArchivesYearList li a::after {
	content: "年";
}
.smallArchivesMonthList li {
	display: inline-block;
}
.smallArchivesMonthList li a::after {
	content: "月";
}
.smallArchivesMonthList li span {
	color: #bbb;
	font-size: 0.9375em;
}
.entry-content {
	margin-bottom: 2.5em;
	margin-top: 1.5em;
}
#blog .entry-content h1 {
	font-weight: normal;
}
#blog .entry-content h2 {
	font-size: 1.4375em;
	letter-spacing: 0.14em;
	line-height: 1.65;
	text-align: left;
}
.entry-content p {
	font-size: 0.875em;
}
.entry-content img {
	height: auto;
}
.entry-content ul,
.entry-content ol {
	font-size: 0.875em;
	margin: 1.5em auto;
}
.entry-content ul {
	list-style: disc inside;
}
.entry-content ol {
	list-style: decimal inside;
}
.entry-content table {
	border-collapse: collapse;
	font-size: 0.875em;
}
.entry-content table thead tr {
	background-color: rgba(81,74,64,0.86);
	color: #fff;
}
.entry-content table tr > * {
	border: 1px solid #000;
	padding-left: 1em;
	padding-right: 1em;
}
.entry-content hr {
	background-color: rgba(170,147,109,0.7);
}
.share-link {
	margin-bottom: 5em;
	overflow: hidden;
	position: relative;
}
.share-link h4 {
	color: rgba(69,62,52,0.9);
	font-size: 0.8125em;
	font-weight: normal;
	letter-spacing: 0.075em;
	margin: 1em auto;
}
.share-link ul {
	display: table;
	table-layout: fixed;
	width: 100%;
}
.share-link ul li {
	background-color: #000;
	display: table-cell;
}
.share-link ul li a {
	color: #fff;
	display: block;
	overflow: hidden;
	padding: 0.31em;
	position: relative;
	text-align: center;
	text-indent: 200%;
	white-space: nowrap;
	z-index: 0;
}
.share-link ul li a::before {
	background: url(../img/share_google01.svg) no-repeat center #fff;
	background-size: 1.375em 1.375em;
	bottom: 0;
	content: "";
	display: block;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	-webkit-transition: opacity 0.4s;
	transition: opacity 0.4s;
	z-index: -1;
}
.share-link ul li a:hover::before {
	opacity: 0.9;
}
.share-link .google-plus a::before {
	background-color: #e57164;
}
.share-link .twitter a::before {
	background-color: #36bef2;
	background-image: url(../img/share_twitter01.svg);
}
.share-link .facebook a::before {
	background-color: #657cae;
	background-image: url(../img/share_facebook01.svg);
}
.share-link .line a::before {
	background-color: #36c837;
	background-image: url(../img/share_line01.svg);
}
.share-link .get-pocket a::before {
	background-color: #f2677a;
	background-image: url(../img/share_pocket01.svg);
}
.entry-meta {
	margin-top: -1.75em;
}
.entry-meta .tags-links {
	border-top: 1px solid #c3c3c3;
	border-bottom: 1px solid #c3c3c3;
	color: rgba(69,62,52,0.9);
	display: block;
	font-size: 0.8125em;
	padding: 1.25em 0 1.25em 3em;
	text-indent: -3em;
}
.entry-meta .tags-links a {
	color: rgba(69,62,52,0.9);
}
.page-nav {
	margin: 2em auto 3em;
	position: relative;
	text-align: center;
}
.page-nav > * {
	display: inline-block;
	font-size: 0.875em;
	margin: 0 0.175em;
	vertical-align: top;
}
.page-nav .next a,
.page-nav .prev a {
	background: url(../img/btn_arrow01.svg) no-repeat center transparent;
	background-size: cover;
	border-radius: 100%;
	display: block;
	height: 3em;
	overflow: hidden;
	margin-top: -1.5em;
	position: absolute;
	text-indent: 200%;
	-webkit-transition: background-color 0.2s;
	transition: background-color 0.2s;
	top: 50%;
	white-space: nowrap;
	width: 3em;
}
.page-nav > .index {
	font-size: 1em;
}
.page-nav > .index a {
	border: none;
}
.page-nav > .index a::before {
	background: url(../img/icon_list01.svg) no-repeat center transparent;
	background-size: cover;
	content: "";
	display: inline-block;
	height: 1.0555em;
	margin-right: 0.75em;
	vertical-align: text-top;
	width: 1.0555em;
}
.page-nav > .index a:hover {
	background-color: rgba(199,178,153,0.2);
	color: rgb(179,148,104);
}
.page-nav .next a {
	right: 0;
}
.page-nav .prev a {
	left: 0;
	-webkit-transform: scale(-1);
	transform: scale(-1);
}
.page-nav .next a:hover,
.page-nav .prev a:hover {
	background-color: rgba(199,178,153,0.2);
}
input,
textarea {
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}
#comments .comments-title {
	display: none;
}
#comments .comment-list,
#comments .comment-list .children {
	border-left: 3px solid rgba(170,147,109,0.15);
	list-style: none;
	padding: 0 1em;
}
#comments .comment-list .children {
	margin-bottom: 2em;
	padding-right: 0;
}
.comment footer {
	position: relative;
}
.comment-author img {
	display: none;
}
.comment-author::before {
	background: url(../img/avatar01.svg) no-repeat center transparent;
	background-size: cover;
	content: "";
	display: inline-block;
	height: 2.875em;
	margin-right: 0.5em;
	vertical-align: top;
	width: 2.875em;
}
.comment-author cite,
.comment-author .says {
	color: rgb(179,148,104);
	font-size: 0.875em;
}
.comment-author cite {
	display: inline-block;
	font-style: normal;
	margin-top: 1.6em;
}
.comment-author .says::before {
	content: "さん";
}
.commentmetadata a {
	color: #888;
	font-family: 'Lato', Arial, Helvetica, "sans-serif";
	font-size: 0.875em;
	left: 4.2em;
	letter-spacing: 0.15em;
	position: absolute;
	top: 0.1em;
}
.comment-list p {
	color: #1a1a1a;
	font-size: 0.875em;
	line-height: 1.5;
}
#comments .reply a {
	background-color: rgba(170,147,109,1);
	border-radius: 1.0714em;
	color: #fff;
	display: block;
	font-size: 0.875em;
	font-weight: bold;
	height: 2.1429em;
	letter-spacing: 0.25em;
	line-height: 2.1429em;
	margin-left: auto;
	text-align: center;
	text-indent: 0.25em;
	-webkit-transition: background-color 0.2s;
	transition: background-color 0.2s;
	width: 5em;
}
#respond {
	background-color: rgba(199,178,153,0.17);
	border-radius: 0.625em;
	margin-top: 1.5em;
	overflow: hidden;
	padding: 0 1.25em;
	position: relative;
}
#respond #reply-title {
	font-size: 1.3125em;
	margin: 0.5em auto;
	padding-left: 1.5em;
	position: relative;
}
#respond #reply-title::before {
	background: url(../img/icon_comment01.svg) no-repeat center transparent;
	background-size: cover;
	content: "";
	display: block;
	left: 0;
	height: 1em;
	margin-top: -0.55em;
	position: absolute;
	top: 50%;
	width: 1em;
}
#commentform p {
	position: relative;
	margin: 0.8em auto;
}
#commentform p label {
	color: rgba(69,62,52,0.4);
	font-size: 0.875em;
	left: 0.65em;
	position: absolute;
	top: 0.25em;
}
#commentform input,
#commentform textarea {
	border: none;
	border-radius: 0.4286em;
	box-sizing: border-box;
	color: #4d4d4d;
	font-size: 0.875em;
	letter-spacing: 0.1em;
	padding: 0.55em 0.65em;
	width: 100%;
}
#commentform textarea {
	height: 11em;
}
#commentform .comment-notes {
	bottom: 1em;
	color: #808080;
	font-size: 0.8125em;
	position: absolute;
}
#commentform #email-notes {
	display: block;
}
#commentform .form-allowed-tags {
	color: #808080;
	font-size: 0.8125em;
}
#commentform #submit {
	background-color: rgba(170,147,109,1);
	border-radius: 1.1666em;
	cursor: pointer;
	color: #fff;
	display: block;
	font-size: 1.125em;
	font-weight: bold;
	height: 2.3333em;
	letter-spacing: 0.25em;
	margin: 1.3em 0;
	margin-left: auto;
	text-align: center;
	text-indent: 0.25em;
	-webkit-transition: background-color 0.2s;
	transition: background-color 0.2s;
}
#comments a:hover {
	text-decoration: underline;
}
#comments .reply a:hover,
#commentform #submit:hover {
	background-color: rgba(170,147,109,0.8);
	text-decoration: none;
}
@media screen and ( max-width: 580px ) {
	#blog #contents #main_column,
	#blog #contents #sidebar {
		float: none;
		max-width: inherit;
	}
	#blog #sidebar {
		margin-top: 4em;
	}
}

/* 404
---------------------------------------- */
#error #intro h2 .jp {
	letter-spacing: 0.15em;
}
#error .text {
	overflow: hidden;
	padding-bottom: 6.75em;
	text-align: center;
}
#error .text p {
	margin-bottom: 2.5em;
	max-width: 100%;
}

/* Javascript
======================================== */
.post {
	display: none;
}
.mfp-bg {
	background-color: rgba(69,62,52,0.8);
}
.mfp-inline-holder .mfp-content {
	background-color: #fff;
	border-radius: 0.625em;
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
	max-width: 42.5em;
	padding: 1em 3em 2em;
}
.mfp-content .post {
	display: block;
}
.mfp-arrow {
	height: 3.875em;
	margin-top: -1.9375em;
	margin-left: 2em;
	opacity: 1;
	top: 50%;
	-webkit-transform: scale(1);
	transform: scale(1);
	width: 3.875em;
}
.mfp-arrow:active {
	margin-top: -1.9375em;
}
.mfp-arrow::before {
	background: url(../img/arrow05.svg) no-repeat center rgba(255,255,255,0.7);
	border: none;
	border-radius: 100%;
	height: 3.875em;
	margin-top: 0;
	margin-left: inherit;
	opacity: 1;
	-webkit-transition: background-color 0.2s;
	transition: background-color 0.2s;
	width: 3.875em;
}
.mfp-arrow:hover::before {
	background-color: rgba(255,255,255,1);
}
.mfp-arrow::after {
	display: none;
}
.mfp-arrow-right {
	margin-left: inherit;
	margin-right: 2em;
  right: 0;
	-webkit-transform-origin: center;
	transform-origin: center;
}
.mfp-arrow-left::before {
	margin-left: 0;
	-webkit-transform: scale(-1);
	transform: scale(-1);
}
@media screen and ( max-width: 900px ) {
	.mfp-arrow {
		font-size: 75%;
		margin-left: 0;
	}
	.mfp-arrow::before,
	.mfp-arrow:hover::before {
		background-color: transparent;
	}
	.mfp-arrow-right {
		margin-right: 0;
	}
}
@media screen and ( max-width: 480px ) {
	.mfp-inline-holder .mfp-content {
		padding-left: 2em;
		padding-right: 2em;
	}
}
.post h3 {
	border-bottom: 1px solid rgb(179, 148, 104);
	color: rgba(69,62,52,0.9);
	font-size: 1.3125em;
	font-weight: normal;
	margin-bottom: 0.5em;
	padding-bottom: 0.3em;
}
.post p {
	color: rgba(69,62,52,0.9);
	font-size: 0.875em;
}
img[src*="tracker.kantan-access.com"] {
	display: none;
}
