/*
Theme Name: 一般社団法人 宇部市医師会
Author: GALERA
*/

@charset "UTF-8";

html, body, div, span,
h1, h2, h3, h4, h5, h6, p, blockquote,
small, strong,
dl, dt, dd, ol, ul, li,
table, tbody, tr, th, td,
article, aside, footer, header, nav {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
	box-sizing: border-box;
}

body {
    line-height: 1;
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', '游ゴシック', YuGothic, sans-serif;
	font-weight: 400;
	font-size: 16px;
	color: #333;
	overflow-wrap: break-word;
	background: #fff;
	box-sizing: border-box;
	letter-spacing: 0.2px;
	height: 100%;
	overflow-x: hidden;
}

/* Safari用ハックをChromeに非適用 */
@supports (-webkit-touch-callout: none) {
  body {
    height: -webkit-fill-available;
  }
}

/* iOSのボタンのスタイルをリセット */
input[type="submit"] {
  -webkit-appearance: none;
  border-radius: 0;
}

article, aside, main, footer, header, hgroup, menu, nav, section { 
    display:block;
	box-sizing: border-box;
}

li {
	list-style: none;
}

a {
	color: #222;
	text-decoration: none;
}

img {
	width: 100%;
	height: auto;
}

video {
	width: 100%;
	height: auto;
}

.flex {
	display: flex;
}

.flex-sb {
	justify-content: space-between;
}

.flex-right {
	justify-content: right;
}

.ai-center {
	align-items: center;
}

header {
	width: 100%;
	padding: 0;
	position: fixed;
	top: 0;
	z-index: 900;
	background: #fff;
	padding-right: 0px;
	padding-left: 9%;
	transition: .4s;
	border-bottom: 1px solid #fff;
}

header.is-animation {
	transition: .4s;
	border-bottom: 1px solid #ddd;
}

header .inner {
	width: 100%;
	margin: 0 auto;
	position: relative;
	height: 90px;
	transition: 0.4s;
}

header.is-animation .inner {
	height: 80px;
	transition: 0.4s;
}

header .inner h1 a {
	display: block;
	font-size: 28px;
	letter-spacing: 2px;
	transition: 0.4s;
	position: relative;
	padding-left: 52px;
}

header .inner h1 a span {
	display: block;
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 6px;
	letter-spacing: 1px;
	transition: 0.4s;
}

header .inner h1 a::before {
	content: '';
	position: absolute;
	background: url('./images/logo-uma.png');
	top: 3px;
	left: 0;
	width: 45px;
	height: 45px;
	background-size: contain;
	background-repeat: no-repeat;
	transition: 0.4s;
	image-rendering: -webkit-optimize-contrast;
}

header.is-animation .inner h1 a {
	font-size: 26px;
	padding-left: 48px;
}

header.is-animation .inner h1 a span {
	font-size: 13px;
	margin-bottom: 4px;
}

header.is-animation .inner h1 a::before {
	top: 0;
	left: 0;
	width: 45px;
	height: 45px;
}

header .header-wrap {
	max-width: 1400px;
	width: 100%;
	margin: 0 auto;
	padding: 0 0 0;
	text-align: right;
}

header nav ul {
	display: flex;
	justify-content: right;
	margin-right: 60px;
}

header nav ul li a {
	margin: 0 17px;
	padding: 14px 2px;
	font-weight: 500;
  position: relative;
  display: inline-block;
  text-decoration: none;
}

header nav ul li a:hover {
	color: #222;
	text-decoration: none;
}

header nav ul li a::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 1%;
  height: 1px;
  background: transparent;
  transform: scale(1, 1);
  transform-origin: center;
  transition: .15s;
}

header nav ul li a:hover::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #333;
  transform: scale(1, 1);
}

/* ----------------------------------
ハンバーガーメニュー
---------------------------------- */

@media screen and (max-width: 1279px) {
	header h1 {
		margin: 0 auto;
		padding-left: 0;
	}
	header nav {
		display: none;	
	}
}

#nav-drawer {
	transition: 0.4s;
}

#nav-open:hover,
.is-animation .inner #nav-open:hover {
    cursor: pointer;
}

/*チェックボックス等は非表示*/
.nav-unshown {
  display:none;
}

/*アイコンのスペース*/
#nav-open {
  display: inline-block;
  width: 90px;
  height: 90px;
  vertical-align: middle;
	background: linear-gradient( 200deg, #015dae 0%, #01a3e1 100%);
	box-sizing: border-box;
	padding-top: 32px;
	padding-left: 25px;
	z-index: 9999;
	position: relative;
	transition: 0.4s;
}

header.is-animation #nav-open {
	width: 80px;
	height: 80px;
	padding-top: 28px;
	padding-left: 21px;
}

#nav-open:hover {
	background: linear-gradient( 200deg, #01a3e1 0%, #01a3e1 100%);
}

/*ハンバーガーアイコン*/
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 2px;/*線の太さ*/
  width: 40px;/*長さ*/
  border-radius: 3px;
  background: #fff;
  display: block;
  content: '';
  cursor: pointer;
}
#nav-open span:before {
  bottom: -12px;
}
#nav-open span:after {
  bottom: -24px;
}

/* 閉じることができるカバー（余白部分） */
#nav-close {
  display: none;/*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 0;/*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  transition: .3s ease-in-out;
}

#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;/* 最前面に*/
  width: 76%;/* %指定で右側に隙間を作ることが可能（閉じるカバーを表示）*/
  height: 100%;
  transition: .3s ease-in-out;/*滑らかに表示*/
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);/*左に隠しておく*/
	background: linear-gradient( 200deg, #015dae 0%, #01a3e1 100%);
}

/*チェックが入ったら表示*/
#nav-input:checked ~ #nav-close {
  display: block;/*カバーを表示*/
  opacity: 0.3;
}

#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  box-shadow: 6px 0 25px rgba(0,0,0,.15);
	border-radius: 0;
	background: linear-gradient( 200deg, #0167b5 0%, #019ddc 100%);
}

#nav-content div.nav-logo {
	background: #fff;
	padding: 22px 20px;
	box-sizing: border-box;
	text-align: center;
}

#nav-content div.nav-logo a {
	font-size: 30px;
	letter-spacing: 2px;
	font-weight: 600;
}

#nav-content ul {
    display: block;
    width: 100%;
    margin: 0 auto 8px;
    border-bottom: 1px solid #ddd;
	padding: 30px 0px 10px;
	max-width: 900px;
}

#nav-content ul li a {
	display: inline-block;
	line-height: 1.6;
	color: #fff;
	font-weight: 500;
	box-sizing: border-box;
	font-size: 17px;
	text-align: left;
	margin-bottom: 0;
	padding: 10px 0 8px 10px;
}

#nav-content ul li a:hover {
	text-decoration: underline;
}

#nav-content ul li ul {
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	align-items: flex-start;
	padding: 0px 0px 18px 26px;
}

#nav-content ul li ul li a {
	line-height: 1.8;
	padding: 3px 16px;
	font-weight: 400;
	font-size: 15px;
	min-width: 260px;
}

#nav-content ul li ul.drawer-bottom {
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	align-items: flex-start;
	padding: 30px 20px 20px;
	border-bottom: none;
}

#nav-content ul li a.drawer-close {
	border: none;
	margin-top: 12px;
	text-align: center;
	padding: 10px 0 10px 0;
	cursor: pointer;
}

#nav-content ul.for-close {
	border-bottom: none;
	padding-top: 0px;
	text-align: center;
}

#nav-content div.link-area  {
	padding: 40px 0 40px;
	text-align: center;
}

#nav-content div.link-area .app-area {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	margin: 0 auto 40px;
}

#nav-content div.link-area .app-area .appstore {
	max-width: 126px;
	margin-right: 40px;
}

#nav-content div.link-area .app-area .googleplay {
	max-width: 156px;
}

#nav-content div.link-area .web-area {
	margin: 0 auto 0;
}

#nav-content div.link-area .web-area img {
	max-width: 325px;
}

/* ----------------------------------
ここまでハンバーガーメニュー
---------------------------------- */

main {
	margin-top: 90px;
}

main section.first-visual {
    width: 100%;
}

main section.first-visual .first-photo {
	text-align: right;
	position: relative;
}


main section.first-visual .first-photo .first-photo-wrap {
    position: relative;
    width: 80%;
	display: inline-block;
	overflow: hidden;
}

main section.first-visual .first-photo .first-photo-wrap img.photo {
	display: block;
	border-radius: 0;
	height: 78vh;
	width: 100%;
	position: relative;
	z-index: 36;
	object-fit: cover;
	font-family: 'object-fit: cover; object-position: 40% 50%;';
	object-position: 40% 50%;
}

main section.first-visual div.copy {
    position: absolute;
    top: 26%;
    padding-left: 8%;
    z-index: 50;
}

main section.first-visual div.copy span.text {
	display: block;
    font-size: 50px;
	line-height: 1.7;
	text-align: left;
	font-weight: 600;
	color: #015dae;
	background: linear-gradient(to right, #015dae, #01a3e1);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	text-fill-color: transparent;
}

main section.first-visual div.copy span.text span.english {
	margin: 20px 0 0 10px;
	display: block;
	font-size: 24px;
	font-weight: 500;
	letter-spacing: 1px;
	border-bottom: 1px solid #0070ba;
	font-family: 'Cinzel', serif;
}

main section div.pickup {
	margin: 60px auto 0;
	display: flex;
	justify-content: left;
	align-items: stretch;
	border: 1px solid #0059ac;
	border-radius: 4px;
}

main section div.pickup > h2 {
	color: #0059ac;
	font-weight: 600;
	padding: 43px 10px 20px;
	letter-spacing: 2px;
	font-size: 22px;
	text-align: center;
	width: 250px;
	display: inline-block;
	margin-bottom: 0;
}

main section div.pickup > h2 span {
	position: relative;
	padding-left: 28px;
}

main section div.pickup > h2 span::before {
	content: '';
	background-image: url('./images/pickup.png');
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: 18px;
	position: absolute;
	width: 18px;
	height: 18px;
	left: 0;
	top: 5px;
}

main section div.pickup > div {
	width: 100%;
	padding: 10px 0;
}

main section div.pickup > div ul {
    border-left:  1px solid #0059ac;
	padding: 0 30px;
}

main section div.pickup > div ul li {
    display: block;
	color: #333;
	font-size: 15px;
	font-weight: 400;
	text-align: left;
	line-height: 1.6;
	padding: 10px 0 10px;
    text-decoration: none;
	border-bottom: 1px solid #bbb;
}

main section div.pickup > div ul li:last-child {
	border-bottom: none;
}

main section div.pickup > div ul li a {
    display: block;
	color: #015dae;
	font-size: 15px;
	font-weight: 400;
	text-align: left;
	line-height: 1.6;
    text-decoration: none;
}

main section div.pickup > div ul li a:hover {
    text-decoration: underline;
}

main section.under-first-photo {
	margin: -210px 0 0;
}

main section.under-first-photo > div {
	background: linear-gradient( to right, #015dae 0%, #01a3e1 100%);
	width: 100%;
	margin: 0;
	height: 350px;
}

main section.center-text {
	width: 100%;
	padding: 40px 0;
}

main section.center-text.top-news {
	text-align: center;
	max-width: 1920px;
	padding: 60px 30px 60px;
	margin: 0 auto 0;
	background: #f6f6f6;
}

main section.center-text.top-news a.go-to-list {
	text-align: right;
	display: block;
	color: #555;
	font-size: 15px;
	padding-right: 4px;
	text-decoration: none;
}

main section.center-text.top-news a.go-to-list:hover {
	text-decoration: underline;
}

main section.center-text .center-text-wrap h2 {
	margin-bottom: 40px;
}

main section.center-text .center-text-wrap h3 {
	margin-bottom: 40px;
}

main section.center-text .center-text-wrap p {
	font-size: 16px;
	font-weight: 400;
	color: #333;
	line-height: 2.0;
	margin-bottom: 12px;
}

.custom-btn {
	padding: 18px 20px;
	font-weight: 500;
	display: inline-block;
	margin-top: 50px;
	min-width: 280px;
	box-sizing: border-box;
	color: #0197d0;
	letter-spacing: 1px;
	font-size: 16px;
	border-radius: 30px;
	border: 2px solid #0197d0;
	background: #fff;
	transition: 0.2s;
}

.custom-btn:hover {
	background: #0197d0;
	color: #fff;
}

.wrap {
	max-width: 1920px;
    width: 100%;
    margin: 0 auto;
	overflow: hidden;
	text-align: center;
	padding: 0px 0 60px;
}

.wrap.large-top {
    padding-top: 120px;
}

.wrap.small-top {
    padding-top: 20px;
}

.wrap p {
	text-align: left;
}

.w-1500 {
	max-width: 1500px;
    width: 100%;
    margin: 0 auto;
}

.w-1400 {
	max-width: 1400px;
    width: 100%;
    margin: 0 auto;
}

.w-1300 {
	max-width: 1300px;
    width: 100%;
    margin: 0 auto;
}

.w-1200 {
	max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

.w-1100 {
	max-width: 1100px;
    width: 100%;
    margin: 0 auto;
}

.w-1000 {
	max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}

.w-900 {
	max-width: 900px;
    width: 100%;
    margin: 0 auto;
}

.w-800 {
	max-width: 800px;
    width: 100%;
    margin: 0 auto;
}

.bg-blue {
	background: #ecfbfa;
}

.b-radius-10 {
	border-radius: 10px;
}

h2 {
	font-size: 42px;
	display: inline-block;
	margin-bottom: 60px;
	color: #015dae;
	font-family: Barlow, sans-serif;
	font-weight: 700;
	letter-spacing: 0.2em;
}

h2 span.japanese {
	font-size: 16px;
	display: block;
	font-weight: 500;
	margin-top: 14px;
	font-family: 'Noto Sans JP', sans-serif;
	color: #222;
	letter-spacing: 1px;
}

h3 {
	font-size: 32px;
	font-weight: 500;
	color: #222;
	line-height: 1.8;
	margin-bottom: 26px;
}

.wrap .box {
	display: flex;
	justify-content: left;
	align-items: flex-start;
	width: 100%;
}

.wrap .box .photo {
	width: 50%;
	margin-bottom: 80px;
	height: 700px;
overflow: hidden;
}

.wrap .box .photo img.animation {
	width: 100%;
	object-fit: cover;
	object-position: left 0px;
	transition-duration: 4s;
	 transition-timing-function: linear;
	height: 700px;
}

.wrap .box .photo img.animation.animated {
	width: 100%;
	object-fit: cover;
	object-position: right 0px;
}

.wrap .box .text-box {
	width: 40%;
	padding: 110px 30px 40px 120px;
}

.wrap .box h3 {
	text-align: left;
}

h3.top-about {
	font-size: 26px;
	font-weight: 500;
	color: #222;
	line-height: 1.8;
	margin-bottom: 26px;
}

.wrap .box p {
	text-align: left;
	font-size: 16px;
	line-height: 2.2;
	letter-spacing: 0.2px;
}

section.bg-image {
	background: linear-gradient( to right, #015dae 0%, #01a3e1 100%);
	padding: 80px 0 80px;
}

section.bg-image > div {
	display: flex;
	justify-content: center;
	max-width: 1200px;
	width: 100%;
	height: 660px;
	margin: 0 auto 0;
	box-shadow: 0 0 14px #00529b;
}

section.bg-image > div .bg-image-left {
	width: 50%;
	background: #fff;
	padding: 50px;
	border-radius: 4px 0 0 4px;
}

section.bg-image > div .bg-image-left h3 {
	line-height: 1.8;
	font-size: 22px;
}

section.bg-image > div .bg-image-left p {
	line-height: 1.8;
}

section.bg-image > div .bg-image-left ul {
	margin: 30px 30px 0;
	padding: 0;
}

section.bg-image > div .bg-image-left ul li {
	position: relative;
	border-bottom: 1px solid #ccc;
}

section.bg-image > div .bg-image-left ul li::after {
	content: '';
	position: absolute;
	bottom: -1px;
	left: 0;
	height: 2px;
	width: 0%;
	background: #015dae;
	transition: 0.3s;
}

section.bg-image > div .bg-image-left ul li:hover::after {
	content: '';
	position: absolute;
	bottom: -1px;
	left: 0;
	height: 2px;
	width: 100%;
	background: #015dae;
}

section.bg-image > div .bg-image-left ul li a {
	font-size: 16px;
	display: block;
	line-height: 1.8;
	padding: 30px 10px 10px;
	position: relative;
	transition: 0.2s;
}

section.bg-image > div .bg-image-left ul li a:hover {
	color: #015dae;
}

section.bg-image > div .bg-image-left ul li a::before {
	content: '→';
	position: absolute;
	bottom: 8px;
	right: 6px;
	color: #999;
	font-size: 16px;
	transition: 0.2s;
}

section.bg-image > div .bg-image-left ul li a:hover::before {
	color: #015dae;
}

section.bg-image > div .bg-image-left ul li a::after {
	content: '';
	position: absolute;
	bottom: -1px;
	right: 0;
	height: 2px;
	width: 30px;
	background: #015dae;
}

section.bg-image > div .bg-image-right {
	width: 50%;
}

section.bg-image > div .bg-image-right img {
	width: 100%;
	height: 660px;
	border-radius: 0 4px 4px 0;
	object-fit: cover;
	object-position: center 0;
}

section.top-about {
	margin: 60px 0 0;
}

section.top-about div.box {
	background: #f6f6f6;
}

section.everyone {
	padding: 20px 0 50px;
}

section.top-news {
	padding: 0 30px 40px;
	background: transparent;
}

section.top-news > .wrap {
	max-width: 1200px;
	margin: 0px auto 0;
	align-items: stretch;
	display: flex;
	justify-content: space-between;
	padding: 10px;
}

section.top-news > .wrap > div {
	background: #fff;
	max-width: 560px;
	width: 100%;
	padding: 32px;
	border-radius: 4px;
	box-shadow: 0 0 10px #999;
}

section.top-news > .wrap > div h3 {
	font-size: 20px;
	font-weight: 500;
	color: #222;
	line-height: 1.8;
	margin-bottom: 10px;
	display: inline-block;
	position: relative;
	padding-left: 38px;
}

section.top-news > .wrap > div:first-child h3::before {
	content: '';
	position: absolute;
	background: url('./images/icon1.png');
	width: 28px;
	height: 28px;
	background-size: cover;
	top: 5px;
	left: 0;
}

section.top-news > .wrap > div:last-child h3::before {
	content: '';
	position: absolute;
	background: url('./images/icon2.png');
	width: 28px;
	height: 28px;
	background-size: cover;
	top: 5px;
	left: 0;
}

section.top-news ul {
	margin: 20px auto 20px;
}

section.top-news li a span.date {
	min-width: 110px;
	max-width: 110px;
	display: inline-block;
	font-size: 15px;
	border-right: 1px solid #ddd;
	margin-right: 16px;
	padding: 0 6px;
	text-align: center;
}

section.top-news li a {
	width: 100%;
	padding: 22px 0px 20px 0;
	border-bottom: 1px solid #ddd;
	transition: 0.15s;
	box-sizing: border-box;
	font-size: 15px;
	line-height: 1.7;
	text-align: left;
	display: flex;
	justify-content: left;
	align-items: inherit;
	position: relative;
}

section.top-news li:first-child a {
	border-top: 1px solid #ddd;
}

section.top-news li a:hover {
	color: #015dae;
	border-bottom: 1px solid #015dae;
}

section.top-news li:hover a::after {
	color: #333;
	right: 10px;
}

section.top-news .bg-gray {
	background: #f6f6f6;
	height: 300px;
	margin-top: -300px;
}

section.footer-contact .wrap {
	padding: 0 0 60px;
}

section.footer-contact .footer-contact-image {
	background: #fff;
	padding: 0 80px 0;
}

section.footer-contact .footer-contact-image img {
	box-shadow: 80px 80px #f6f6f6;
}

section.footer-contact .footer-contact-text {
	background: linear-gradient( to right, #015dae 0%, #01a3e1 100%);
	margin: -70px auto 20px;
	padding: 60px 0 60px;
	position: relative;
	border-radius: 4px;
	max-width: 1200px;
	width: 100%;
	box-shadow: 0 0 14px #666;
}

section.footer-contact .footer-contact-text h2 {
	color: #fff;
}

section.footer-contact .footer-contact-text .box-tel,
section.footer-contact .footer-contact-text .box-mail {
	background: #fff;
	padding: 30px 20px 40px;
	border-radius: 4px;
	width: 48%;
}

section.footer-contact .footer-contact-image img {
	width: 100%;
	height: auto;
}

section.footer-contact .footer-contact-text .box-mail .custom-btn {
	margin-top: 14px;
	border-radius: 30px;
	min-width: 300px;
	padding: 16px;
}

section.footer-contact .footer-contact-text .box-tel h3,
section.footer-contact .footer-contact-text .box-mail h3 {
	font-weight: 600;
	font-size: 19px;
	margin-bottom: 18px;
	color: #333;
}

section.footer-contact .footer-contact-text .box-tel .tel-number {
	color: #015dae;
	font-size: 18px;
}

section.footer-contact .footer-contact-text .box-tel .tel-number span,
section.footer-contact .footer-contact-text .box-tel .tel-number span a {
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 2px;
	color: #009edb;
	margin-left: 10px;
	margin-bottom: 18px;
}

section.footer-contact .footer-contact-text .box-tel .fax-number {
	font-size: 15px;
	color: #666;
	margin-top: 18px;
	display: block;
	margin-left: 20px;
}

section.footer-contact .footer-contact-text .box-tel .fax-number span,
section.footer-contact .footer-contact-text .box-tel .fax-number span a {
	font-size: 22px;
	display: inline-block;
	margin-left: 10px;
	font-weight: 600;
	letter-spacing: 1px;
	color: #666;
}

section.footer-contact .footer-contact-text h2 span {
	color: #fff;
}

section.footer-contact p {
	text-align: center;
	margin-top: 20px;
}

section.footer-contact a.custom-btn img.mail-btn {
	width: 160px;
	vertical-align: text-bottom;
	padding: 0 8px;
}

section.footer-contact .tel-and-mail {
	display: flex;
	justify-content: space-between;
	max-width: 1050px;
	margin: 0 auto 20px;
}

footer {
	padding: 0;
	color: #333;
	font-weight: 400;
}

footer p {
	line-height: 1.6;
}

footer a {
	color: #333;
	margin: 0 20px;
	padding: 4px 0;
	font-weight: 400;
	position: relative;
	display: inline-block;
	text-decoration: none;
	line-height: 1.6;
}

footer a:hover {
  text-decoration: underline;
}

footer .footer-wrap {
	background: #f6f6f6;
	padding: 60px 0 80px;
}

footer .footer-wrap .footer-above {
	margin: 0 auto;
	padding: 0 20px;
	background: #f6f6f6;
}

footer .footer-wrap .footer-above nav {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	padding: 0px;
	max-width: 1200px;
	margin: 0 auto;
}

footer .footer-wrap .footer-above nav > ul {
	display: block;
	padding: 0;
}

footer .footer-wrap .footer-above nav > div {
	display: block;
	padding: 0;
}

footer .footer-wrap .footer-above nav > div.footer-above-citizen {
	flex-basis: 25%;
}

footer .footer-wrap .footer-above nav > div.footer-above-medical-facilities {
	flex-basis: 25%;
}

footer .footer-wrap .footer-above nav > div.footer-above-involved {
	flex-basis: 25%;
}

footer .footer-wrap .footer-above nav > div.footer-above-about {
	flex-basis: 25%;
	padding-left: 30px;
}

footer .footer-wrap .footer-above nav ul li {
	padding: 0 8px;
}

footer .footer-wrap .footer-above nav ul li a {
	font-size: 15px;
	line-height: 1.6;
	padding: 6px 0 6px 10px;
	display: block;
}

footer .footer-wrap .footer-above nav h4 a {
	font-weight: 500;
	font-size: 16px;
	padding: 6px 0 6px;
	display: block;
	border-bottom: 1px solid #bbb;
	margin-bottom: 16px;
	letter-spacing: 0.06em;
	position: relative;
}

footer .footer-wrap .footer-above nav h4 a::after {
	content: '';
	position: absolute;
	background: #00669a;
	width: 20px;
	height: 2px;
	bottom: -1px;
	left: 0;
	transition: 0.2s;
}

footer .footer-wrap .footer-above nav h4 a:hover::after {
	width: 100%;
}

footer .footer-wrap .footer-above nav h4 a:hover {
	text-decoration: none;
}


footer .footer-wrap .footer-above .footer-above-about ul {
	padding: 0 0 20px;
	margin: 0 0 20px;
	border-bottom: 1px solid #bbb;
}

footer .footer-wrap .footer-above .footer-above-about ul li a {
	padding-left: 0;
	margin-left: 0;
}

footer .footer-wrap .footer-above .footer-above-about ul li.li-about a {
	font-size: 16px;
}

footer .footer-wrap .footer-above .footer-above-about > div p.footer-name {
	font-size: 19px;
	font-weight: 600;
	margin: 30px 0 10px;
	letter-spacing: 1px;
}

footer .footer-wrap .footer-above .footer-above-about > div p.footer-name span {
	font-size: 0.8em;
	font-weight: 500;
}

footer .footer-wrap .footer-above .footer-above-about > div p.footer-info {
	font-size: 16px;
	letter-spacing: 0.8px;
	line-height: 1.8;
}

footer .footer-wrap .footer-above .footer-above-about > div p.footer-info a.goto-map {
	font-size: 14px;
	color: #015dae;
	text-decoration: underline;
	margin: 0 0 12px;
	padding: 0;
	display: inline-block;
}

footer .footer-wrap .footer-above .footer-above-about > div p.footer-info a.goto-map:hover {
	text-decoration: none;
}

footer .footer-wrap .footer-above .footer-above-about > div p.footer-info span.number {
	display: block;
	font-size: 16px;
	letter-spacing: 0.8px;
	line-height: 1.8;
	text-decoration: none;
}

footer .footer-bottom {
	width: 100%;
	margin: 0;
	background: linear-gradient( to right, #015dae 0%, #01a3e1 100%);
	padding: 30px 20px 30px;
}

footer .footer-bottom > div {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

footer .footer-bottom a {
	margin: 0;
	color: #fff;
}

footer .footer-bottom nav {
	padding: 0;
	margin: 0;
	border: none;
}

footer .footer-bottom nav ul {
	display: flex;
	justify-content: left;
	align-items: center;
}

footer .footer-bottom nav ul li {
	margin: 0;
}

footer .footer-bottom nav ul li::after {
	content: '|';
	color: #01a3e1;
}

footer .footer-bottom nav ul li:last-child::after {
	content: none;
}

footer .footer-bottom nav ul li a {
	font-weight: 400;
	font-size: 15px;
	padding: 6px 12px 6px;
	margin: 0 10px;
}

footer .footer-bottom nav ul li a.new-window {
	padding-right: 20px;
}

footer .footer-bottom nav ul li a.new-window::after {
	content: '';
	background-image: url('./images/linkwhite.png');
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: contain;
	position: absolute;
	width: 12px;
	height: 12px;
	right: 2px;
	top: 11px;
}

footer p.copyright {
	color: #fff;
	font-size: 14px;
}

main.sub {
	width: 100%;
	background: #fff;
	padding: 0 0 80px;
}

main.sub.main-blue {
	background: #f1f7f9;
	margin-bottom: 60px;
}

main.sub.main-blue .content {
	background: #f1f7f9;
}

main.sub h2.japanese {
	font-size: 32px;
	margin-bottom: 50px;
	color: #015dae;
	font-weight: 700;
	display: block;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 1px;
}

main.sub.list-page h2.japanese {
	font-size: 20px;
	margin-bottom: 0px;
	color: #222;
	font-weight: 500;
	display: block;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 1px;
	text-align: left;
}

main.sub.list-page h2.japanese.list-h {
	font-size: 19px;
	margin-bottom: 12px;
	color: #222;
	font-weight: 500;
	display: block;
	font-family: 'Noto Sans JP', sans-serif;
	letter-spacing: 1px;
	text-align: left;
	border-bottom: 1px solid #666;
	padding: 8px 0;
}

main.sub section {
	padding: 50px 0 40px;
}

main.sub .subpage-top {
	width: 100%;
	height: 160px;
	background: linear-gradient( to right, #015dae 0%, #01a3e1 100%);
	padding: 0 30px;
	margin-bottom: 80px;
	position: relative;
	overflow: hidden;
}

main.sub .subpage-top::after {
	content: 'UBE MEDICAL ASSOCIATION';
	position: absolute;
	font-family: Barlow, sans-serif;
	font-size: 4vw;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: #015dae;
	bottom: -7px;
	left: 0;
	z-index: 10;
	display: block;
	text-align: left;
	background: linear-gradient(to right, #0171bc, #0195d7);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	text-fill-color: transparent;
}

main.sub .subpage-top-wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding-top: 68px;
}

main.sub .subpage-top-wrap h2 {
	font-size: 31px;
	color: #fff;
	letter-spacing: 2px;
	margin: 0;
	position: relative;
	z-index: 20;
	line-height: 1.3;
}

main.sub .subpage-top-wrap h2 span.small-txt {
	font-size: 0.86em;
	letter-spacing: 1px;
}

main.sub .content {
	width: 100%;
	background: #fff;
	margin: 0 auto;
}

main.sub .content section.list-wrap {
	padding-top: 0;
}

main.sub .content h3 {
	font-size: 23px;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.06em;
	padding-bottom: 16px;
	margin-top: 10px;
	margin-bottom: 40px;
	border-bottom: none;
	position: relative;
}

main.sub .content h3::after {
	position: absolute;
	content: '';
	height: 6px;
	width: 100%;
	bottom: 0;
	left: 0;
	background: linear-gradient(to right, #0063c4 0%, #01a2e1 10%, #eee 10% 100%);
	border-radius: 2px;
}

main.sub .content h3 span.small-text {
	font-size: 0.86em;
	font-weight: 400;
}

main.sub .content div.reporting-file {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	margin-bottom: 30px;
}

main.sub .content div.reporting-file > a {
	width: 48%;
	font-size: 17px;
	background: #f4fbfc;
	border: 1px solid #0166b4;
	box-sizing: border-box;
	padding: 20px 10px 20px 54px;
	margin: 0 0 30px;
	position: relative;
	line-height: 1.6;
	display: block;
}

main.sub .content div.reporting-file > a::before {
	content: '';
	position: absolute;
	background-image: url('./images/pdf.png');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 22px;
	width: 22px;
	height: 22px;
	left: 20px;
	top: 22px;
}

main.sub .content div.reporting-file > a span {
	color: #777;
	font-weight: 400;
	font-size: 0.9em;
	padding-left: 16px;
	letter-spacing: 0.1em;
}

main.sub .content div.reporting-file > a:hover {
	background: #e8f6f9;
	border: 1px solid #0166b4;
	text-decoration: underline;
}

main.sub .content div.reporting-file.one-pdf {
	display: block;
	margin: 30px 0 0;
	text-align: left;
}

main.sub .content div.reporting-file.one-pdf > a {
	width: 100%;
	max-width: 610px;
	font-size: 16px;
	box-sizing: border-box;
	margin: 0;
	display: inline-block;
}

main.sub .content div.reporting-file-Word {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	margin-bottom: 30px;
}

main.sub .content div.reporting-file-Word > a {
	width: 48%;
	font-size: 17px;
	background: #f4fbfc;
	border: 1px solid #0166b4;
	box-sizing: border-box;
	padding: 20px 10px 20px 54px;
	margin: 0 0 30px;
	position: relative;
	line-height: 1.6;
	display: block;
}

main.sub .content div.reporting-file-Word > a::before {
	content: '';
	position: absolute;
	background-image: url('./images/Word.png');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 22px;
	width: 22px;
	height: 22px;
	left: 20px;
	top: 22px;
}

main.sub .content div.reporting-file-Word > a span {
	color: #777;
	font-weight: 400;
	font-size: 0.9em;
	padding-left: 16px;
	letter-spacing: 0.1em;
}

main.sub .content div.reporting-file-Word > a:hover {
	background: #e8f6f9;
	border: 1px solid #0166b4;
	text-decoration: underline;
}

main.sub .content div.reporting-file-Word.one-pdf {
	display: block;
	margin: 30px 0 0;
	text-align: left;
}

main.sub .content div.reporting-file-Word.one-pdf > a {
	width: 100%;
	max-width: 610px;
	font-size: 16px;
	box-sizing: border-box;
	margin: 0;
	display: inline-block;
}

main.sub .content div.reporting-file-Excel {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	margin-bottom: 30px;
}

main.sub .content div.reporting-file-Excel > a {
	width: 48%;
	font-size: 17px;
	background: #f4fbfc;
	border: 1px solid #0166b4;
	box-sizing: border-box;
	padding: 20px 10px 20px 54px;
	margin: 0 0 30px;
	position: relative;
	line-height: 1.6;
	display: block;
}

main.sub .content div.reporting-file-Excel > a::before {
	content: '';
	position: absolute;
	background-image: url('./images/Excel.png');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 22px;
	width: 22px;
	height: 22px;
	left: 20px;
	top: 22px;
}

main.sub .content div.reporting-file-Excel > a span {
	color: #777;
	font-weight: 400;
	font-size: 0.9em;
	padding-left: 16px;
	letter-spacing: 0.1em;
}

main.sub .content div.reporting-file-Excel > a:hover {
	background: #e8f6f9;
	border: 1px solid #0166b4;
	text-decoration: underline;
}

main.sub .content div.reporting-file-Excel.one-pdf {
	display: block;
	margin: 30px 0 0;
	text-align: left;
}

main.sub .content div.reporting-file-Excel.one-pdf > a {
	width: 100%;
	max-width: 610px;
	font-size: 16px;
	box-sizing: border-box;
	margin: 0;
	display: inline-block;
}
main.sub .content div.kawaraban,
main.sub .content div.paper {
	display: flex;
	justify-content: left;
	align-items: flex-start;
	flex-wrap: wrap;
	margin: 70px 0 0;
}

main.sub .content div.kawaraban > a,
main.sub .content div.paper > a {
	width: 22%;
	background: #edf2f4;
	border: 1px solid #cddbe1;
	box-sizing: border-box;
	padding: 12px;
	margin: 0 3% 46px 0;
}

main.sub .content div.kawaraban > a > img,
main.sub .content div.paper > a > img {
	width: 100%;
	margin-bottom: 10px;
	border: 1px solid #cddbe1;
}

main.sub .content div.kawaraban > a span.kawaraban-title,
main.sub .content div.paper > a span.paper-title {
	position: relative;
	padding-left: 36px;
	line-height: 1.6;
	font-size: 16px;
	display: inline-block;
}

main.sub .content div.kawaraban > a span.kawaraban-title::before,
main.sub .content div.paper > a span.paper-title::before {
	content: '';
	position: absolute;
	background-image: url('./images/pdf.png');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 23px;
	width: 23px;
	height: 23px;
	left: 0px;
	top: 1px;
}

main.sub .content div.kawaraban > a span.kawaraban-title > span,
main.sub .content div.paper > a span.paper-title > span {
	color: #333;
	font-weight: 400;
	font-size: 14px;
	padding-left: 2px;
	letter-spacing: 0.6px;
}

main.sub .content div.kawaraban > a:hover,
main.sub .content div.paper > a:hover {
	background: #d8e3e7;
	border: 1px solid #c3d4da;
	text-decoration: none;
}

main.sub .content .introduction {
	width: 100%;
	margin-bottom: 50px;
	position: relative;
}

main.sub .content .introduction .introduction-text {
	width: 76%;
	background: #fff;
	margin: -200px 0 0 auto;
	position: relative;
	z-index: 10;
	border-radius: 10px 0 0 0;
	padding: 80px 50px 2px 70px;
	min-height: 210px;
}

main.sub .content .introduction .introduction-text::before {
	content: '';
	background: linear-gradient(to right, #0167b5, #019ddc);
	width: 150px;
	height: 4px;
	position: absolute;
	top: 50px;
	left: 70px;
	border-radius: 6px;
}

main.sub .content .introduction .introduction-text p {
	line-height: 2;
}

main.sub .content .introduction .introduction-text p.introduction-heading {
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 14px;
}

main.sub .content ul.plan {
	margin: 70px 0 30px;
	padding: 0;
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	align-items: stretch;
}

main.sub .content ul.plan li {
	width: 30%;
	margin-right: 3%;
	margin-bottom: 40px;
	padding: 20px 0px 10px 14px;
	list-style-type: none;
	border-bottom: 1px solid #bbb;
	display: flex;
	justify-content: left;
	align-items: center;
}

main.sub .content ul.plan li span.number {
	display: inline-block;
	min-width: 58px;
	font-size: 34px;
	font-weight: 900;
	font-style: italic;
	box-sizing: border-box;
	border-right: 1px solid #666;
	margin-right: 22px;
	color: #015dae;
	background: linear-gradient(to right, #015dae, #01a3e1);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	text-fill-color: transparent;
}

main.sub .content ul.plan li span.text {
	display: inline-block;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.6;
}

main.sub .content .subpage p {
	font-size: 16px;
	line-height: 2.0;
	margin-bottom: 26px;
	font-weight: 400;
	word-wrap:break-word;
	word-break: break-word;
}

main.sub .content .subpage p.right {
	text-align: right;
}

main.sub .content .subpage h3 {
	font-size: 24px;
	font-weight: 400;
	line-height: 1.6;
	margin-top: 46px;
	margin-bottom: 16px;
	border-bottom: none;
}

main.sub .content .subpage h3 span {
	font-size: 24px;
	font-weight: 600;
	font-family: arial, sans-serif;
	margin-right: 4px;
}

main.sub .content .subpage.about h3 {
	font-size: 28px;
	font-weight: 500;
	line-height: 1.6;
	margin-top: 16px;
	margin-bottom: 30px;
	border-bottom: none;
	letter-spacing: 0.6px;
	text-align: left;
}

main.sub .content .subpage div.border {
	border: 1px solid #666;
	border-radius: 10px;
	margin: 60px 0 40px;
	padding: 0 40px 30px;
}

main.sub .content .subpage div.border div.for-border {
	margin: -14px auto 40px;
	text-align: center;
	display: block;
}

main.sub .content .subpage div.border div.for-border span {
	font-size: 20px;
	padding: 0 30px;
	background: #fff;
}

main.sub .content .information {
	background: #ecfbfa;
	margin: 30px 0 40px;
	padding: 30px 40px;
	display: block;
}

main.sub .content .information p {
	margin-bottom: 0;
	line-height: 2;
}

main.sub .content .information p:first-child {
	margin-bottom: 10px;
	padding-bottom: 10px;
	line-height: 1.6;
	border-bottom: 1px solid #666;
}

main.sub .content .information p a {
	color: #333;
	text-decoration: none;
}

main.sub .content .subpage div.navigation {
	margin: 0 auto 30px;
}

main.sub .content .subpage div.navigation ul {
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	align-items: flex-start;
	margin: 0 auto 0;
	max-width: 1200px;
}

main.sub .content .subpage div.navigation ul li {
	list-style: none;
	width: 24%;
	margin: 0 1% 20px 0;
	padding: 0;
	text-align: center;
}

main.sub .content .subpage div.navigation ul.col-5 li {
	width: 19%;
	margin: 0 1% 14px 0;
}

main.sub .content .subpage div.navigation ul.col-6 li {
	width: 15.8%;
	margin: 0 0.8% 14px 0;
}

main.sub .content .subpage div.navigation ul li a {
	display: block;
	font-size: 15px;
	border: 1px solid #015dae;
	font-weight: 400;
	text-decoration: none;
	color: #015dae;
	box-sizing: border-box;
	letter-spacing: 0;
	position: relative;
	height: 50px;
	border-radius: 3px;
	transition: 0.2s;
}

main.sub .content .subpage div.navigation ul li a span.text {
	display: block;
	box-sizing: border-box;
	width: 100%;
	padding: 0 4px;
	line-height: 1.5;
  position: absolute;
  top: 50%;
  -webkit-transform : translateY(-50%);
  transform : translateY(-50%);
}

main.sub .content .subpage div.navigation ul li a:hover {
	background: #015dae;
	color: #fff;
}

main.sub .content .subpage h3.heading {
	font-weight: 500;
	font-size: 21px;
}


main.sub .content .card-area {
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	margin: 0;
}

main.sub .content .card-area .card {
	width: 22%;
	padding: 0;
	margin: 0 1.5% 40px;
	box-shadow: 8px 8px 26px #c6d1ec;
	border-radius: 10px;
}

main.sub .content .card a {
	background: #fff;
	text-decoration: none;
	text-align: center;
	padding: 30px 10px 10px;
	border: 1px solid #ddd;
	display: block;
	box-sizing: border-box;
	height: 100%;
	border-radius: 6px;
	transition: 0.2s;
}

main.sub .content .card a img {
	width: 96px;
	margin-bottom: 20px;
	transition: 0.2s;
}

main.sub .content .card a:hover img {
	filter: contrast(96%) saturate(120%);
}

main.sub .content .card p {
	font-size: 18px;
	margin-bottom: 16px;
    font-weight: 500;
	color: #333;
	line-height: 1.5;
}

main.sub .content .card p.card-title {
	min-height: 52px;
}

main.sub .content .card p.about-card {
	font-size: 14px;
	color: #555;
	line-height: 1.8;
	margin-bottom: 2px;
}

main.sub .content .card p.card-more {
	border-top: 1px solid #ccc;
	text-align: right;
	display: block;
	margin: 16px 20px 16px;
	position: relative;
}

main.sub .content .card p.card-more::before {
	content: '';
	position: absolute;
	background: #00669a;
	width: 20px;
	height: 2px;
	top: -2px;
	left: 0;
	transition: 0.2s;
}

main.sub .content .card:hover p.card-more::before {
	content: '';
	position: absolute;
	background: #00669a;
	width: 100%;
	height: 2px;
	top: -2px;
	left: 0;
}

main.sub .content .card p.card-more span {
	font-size: 13px;
	color: #666;
	transition: 0.2s;
}

main.sub .content .card:hover p.card-more span {
	color: #00669a;
}

main.sub .content .card a:hover {
	text-decoration: none;
}

main.sub .content table {
	width: 100%;
	border-collapse: collapse;
	border: none;
	margin: 20px 0 50px;
	border-top: 1px solid #0166b4;
	table-layout: fixed;
}

main.sub .content table th,
main.sub .content table td {
	border-bottom: 1px solid #bbb;
	border-right: 1px solid #bbb;
	padding: 14px 10px 14px 10px;
	line-height: 1.6;
	vertical-align: middle;
	white-space: normal;
	letter-spacing: 0;
	line-height: 1.8;
}

main.sub .content table th:last-child,
main.sub .content table td:last-child {
	border-right: none;
}

main.sub .content table td.border-right {
	border-right: 1px solid #bbb;
}

main.sub .content table td.rs-border {
	border-right: 1px solid #bbb;
}

main.sub .content table th {
	font-weight: 400;
	background: #f4fbfc;
	width: 10%;
}

main.sub .content table td {
	text-align: left;
}

main.sub .content table td.center {
	text-align: center;
}

main.sub .content table td.vertical {
	vertical-align: top;
}

main.sub .content table td.span {
	font-weight: 400;
}

main.sub .content table td a {
	color: #0073bd;
	font-weight: 500;
}

main.sub .content table td a:hover {
	text-decoration: underline;
}

main.sub .content table.organization td ul li {
	margin: 0 0 12px;
	padding-left: 4px;
	list-style-type: disc;
}


main.sub .content table.single-info th {
	width: 16%;
}

main.sub .content table.single-info td {
	padding: 14px 10px 14px 30px;
}

main.sub .content h3.border-top {
	padding-top: 60px;
	margin-top: 80px;
	border-top: 1px solid #ddd;
}

main.sub .content p.indent-ml {
	margin-left: 40px;
	margin-top: -6px;
}

main.sub .content div.committee {
	margin-top: 50px;
	margin-bottom: 40px;
	padding-bottom: 10px;
	border-bottom: 1px solid #ddd;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

main.sub .content div.committee h4 {
	width: 35%;
	margin-top: 0;
	padding-right: 40px;
}

main.sub .content div.committee .committee-wrap {
	width: 70%;
}

main.sub .content div.committee table th,
main.sub .content div.committee table td {
	padding: 14px 10px 14px 20px;
	line-height: 1.8;
}

main.sub .content div.committee table th {
	width: 16%;
	font-size: 15px;
}

main.sub .content div.committee table td {
	word-break: keep-all;
}

div.pics-2 {
	align-items: flex-start;
	display: flex;
	justify-content: space-between;
	margin: 20px auto 0;
}

div.pics-2 a {
	width: 47%;
}


div.pics-2 a div.app-pic img {
	max-width: 570px;
	width: 100%;
	height: 320px;
	object-fit: cover;
	object-position: 0 bottom;
}

div.pics-2 a:last-child div.app-pic img {
	object-position: 0 50%;
}

div.pics-2 a div.app-pic p {
	padding: 26px 0 14px;
	font-weight: 500;
	font-size: 19px;
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	transition: 0.2s;
}

div.pics-2 a div.app-pic p::before {
	content: '';
	position: absolute;
	background: #ccc;
	width: 100%;
	height: 1px;
	display: block;
	bottom: -10px;
	z-index: -1;
}

div.pics-2 a div.app-pic p::after {
	content: '';
	position: absolute;
	background: #015dae;
	width: 24%;
	height: 3px;
	display: block;
	bottom: -10px;
	z-index: 1;
	transition-duration: 0.3s;
	transition-property: width;
}

div.pics-2 a:hover div.app-pic p {
	color: #015dae;
}

div.pics-2 a:hover div.app-pic p::after {
	width: 100%;
}

div.pics-2 a div.app-pic p span.arrow {
	color: #999;
	position: relative;
	font-size: 15px;
	padding-right: 12px;
	transition-duration: 0.3s;
}

div.pics-2 a div.app-pic p span.arrow::after {
	content: '';
	position: absolute;
	width: 30px;
	height: 30px;
	border: 1px solid #999;
	border-radius: 50%;
	left: -8px;
	top: -8px;
	transition-duration: 0.3s;
}

div.pics-2 a:hover div.app-pic p span.arrow {
	color: #015dae;
}

div.pics-2 a:hover div.app-pic p span.arrow::after {
	border: 1px solid #015dae;
}

main.sub .content dl.history {
	margin: 40px 0 40px;
	width: 100%;
	padding: 0;
	display: flex;
	justify-content: left;
	align-items: inherit;
	flex-wrap: wrap;
	border-top: 1px solid #999;
}

main.sub .content dl.history dt {
	width: 15%;
	padding: 24px 0 18px 20px;
	border-bottom: 1px solid #999;
	font-weight: 500;
	font-size: 17px;
	line-height: 1.8;
	text-align: left;
}

main.sub .content dl.history dt span {
	font-weight: 400;
	color: #444;
}

main.sub .content dl.history dd {
	width: 85%;
	border-bottom: 1px solid #999;
	padding: 24px 0 18px 20px;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.8;
	text-align: left;
}

main.sub .content dl.history dd ul {
	margin: 0;
	padding: 0;
}

main.sub .content dl.history dd ul li {
	margin: 0 0 12px;
	padding: 0 0 0 8px;
	list-style-type: disc;
	position: relative;
}

main.sub .content dl.history dd ul li:last-child {
	margin: 0;
}

main.sub .content dl.history dt.history-current,
main.sub .content dl.history dd.history-current {
	border-bottom: none;
}

main.sub .content dl.history dd.history-current {
	padding: 24px 0 26px 28px;
}

main.sub .content h4 {
	font-size: 21px;
	margin: 50px 0 30px;
	font-weight: 500;
	padding: 2px 0px 0px 18px;
	line-height: 1.6;
	position: relative;
}

main.sub .content h4::before {
	content: '';
	background: linear-gradient( to bottom, #0161b1 0%, #019ddd 100%);
	width: 5px;
	height: 100%;
	position: absolute;
	margin-left: -18px;
	border-radius: 2px;
}

main.sub .content h4 span.small {
	font-size: 0.78em;
}

main.sub .content .iframe-map {
	position: relative;
	width: 100%;
	padding-top: 50%;
	margin: 20px 0;
}

main.sub .content .iframe-map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

main.sub .content.post h3.title {
	font-size: 22px;
	font-weight: 500;
	line-height: 1.8;
	padding-bottom: 20px;
	margin-top: 10px;
	margin-bottom: 60px;
	border-bottom: none;
	position: relative;
}

main.sub .content.post h3.title::after {
	position: absolute;
    content: '';
	height: 6px;
	width: 100%;
	bottom: 0;
	left: 0;
	background: linear-gradient(to right, #0063c4 0%, #01a2e1 10%, #eee 10% 100%);
}

main.sub .content p {
	font-size: 16px;
	line-height: 1.8;
	margin-bottom: 30px;
	font-weight: 400;
}


main.sub .content p.center {
	text-align: center;
}

main.sub .content p.right {
	text-align: right;
}

main.sub .content p span.underline,
main.sub .content p.underline {
	text-decoration: underline;
}

main.sub .content p span.big,
main.sub .content p.big {
	font-size: 1.3em;
	margin-bottom: 14px;
}

main.sub .content p strong {
	font-weight: 500;
}

main.sub .content.post img,
main.sub .content .topic-text img {
	margin-top: 30px;
	margin-bottom: 30px;
	width: auto;
	max-width: 100%;
	border: 1px solid #ddd;
	display: block;
}

main.sub .content.post img.alignright,
main.sub .content .topic-text img.alignright {
	margin-left: auto;
}

main.sub .content.post img.alignleft,
main.sub .content .topic-text img.alignleft {
	margin-right: auto;
}

main.sub .content.post img.aligncenter,
main.sub .content .topic-text img.aligncenter {
	margin-left: auto;
	margin-right: auto;
}

main.sub .content ul,
main.sub .content ol {
    margin: 10px 0 30px 28px;
    line-height: 1.8;
}

main.sub .content ul li {
    list-style: circle;
    padding-left: 10px;
	font-weight: 400;
	margin-bottom:4px;
}

main.sub .content ol li {
    list-style: decimal;
    padding-left: 10px;
	margin-bottom:4px;
}

main.sub .content a {
	color: #0066b4;
	font-weight: 500;
	text-decoration: none;
}

main.sub .content a:hover {
	text-decoration: underline;
}

main.sub .content ul.link-ul {
	margin: 40px 0 40px 0;
}

main.sub .content ul.link-ul li {
	margin: 0;
	border-bottom: 1px solid #bbb;
	list-style-type: none;
	padding: 26px;
}

main.sub .content ul.link-ul li:first-child {
	border-top: 1px solid #bbb;
}

main.sub .content ul.link-ul li a {
	color: #0066b4;
	font-weight: 500;
	text-decoration: none;
	display: inline-block;
}

main.sub .content ul.link-ul li a:hover {
	text-decoration: underline;
}

a.pdf {
	position: relative;
	padding-right: 30px;
	font-size: 20px;
}

a.pdf::after {
	content: '';
	background: url('./images/pdf.png');
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 24px;
	position: absolute;
	width: 24px;
	height: 24px;
	right: 0;
	left: auto;
	top: 4px;
	bottom: auto;
}

main.sub .content blockquote {
    position: relative;
    padding: 34px 20px 10px 20px;
    background: #f5f5f5;
    color: #333;
    margin: 20px 20px 30px;
}
 
main.sub .content blockquote::before {
    display: inline-block;
    position: absolute;
    top: 12px;
    left: 12px;
    content: "“";
    color: #bbb;
    font-size: 40px;
    line-height: 1;
    font-family: arial;
    font-weight: 600;
}
 
main.sub .content blockquote p {
    padding: 0;
    margin: 10px 0 20px;
    font-size: 15px;
    line-height: 1.8;
}

/* 記事一覧ページ */
main.sub .list {
	width: 100%;
	max-width: 1200px;
	background: #fff;
	margin: 0 auto;
}

main.sub .list .post-item {
	margin-bottom: 60px;
}

main.sub .list .post-item ul li a {
	display: block;
	border-bottom: 1px solid #ccc;
	width: 100%;
	margin-bottom: 0px;
	color: #0066b4;
	padding: 26px 0;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.7;
	position: relative;
	box-sizing: border-box;
}

main.sub .list .post-item ul li:first-child a {
	border-top: 1px solid #ccc;
}

main.sub .list .post-item ul li a:hover {
	color: #0066b4;
	text-decoration: underline;
}

main.sub .list .post-item ul.segment-list li a {
	padding: 26px 2%;
}

main.sub .list .post-item span.date {
	width: 140px;
	display: inline-block;
	color: #333;
	font-size: 15px;
	font-weight: 400;
	text-align: center;
	border-right: 1px solid #aaa;
	margin-right: 40px;
}

main.sub .list .post-item span.post-title {
	width: 85%;
	display: block;
}

.page-navi {
	margin-top: 80px !important;
	margin-bottom: 50px !important;
}

.wp-pagenavi {
	display: flex !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
}

.wp-pagenavi span.current {
	background: #01a3e1 !important;
	color: #fff !important;
	border: 1px solid #01a3e1 !important;
}

.wp-pagenavi a, .wp-pagenavi span {
    padding: 10px 14px !important;
	background: #fff !important;
	color: #222 !important;
	transition-duration: 0.2s;
	margin-bottom: 12px !important;
	border-radius: 3px;
}

.wp-pagenavi span.extend {
    border: none !important;
	padding: 13px 4px 0 !important;
}

.wp-pagenavi a:hover {
	background: #01a3e1 !important;
	color: #222 !important;
	border: 1px solid #01a3e1 !important;
}

.wp-pagenavi span.current {
	border: 1px solid #01a3e1 !important;
}

/* 記事個別ページ */
main.sub .post {
	width: 100%;
	max-width: 1000px;
	background: #fff;
	margin: 0 auto;
}

main.sub .content.post .topic {
	border: none;
	background: #fff;
	padding: 0;
	margin: 0 0 60px;
}

main.sub .content.post .topic .topic-name {
	border-bottom: none;
	text-align: left;
	padding: 0;
	margin: 0;
}

main.sub .content.post .topic .topic-name h3 {
	font-size: 22px;
	font-weight: 500;
	line-height: 1.8;
	padding-bottom: 20px;
	margin-top: 10px;
	margin-bottom: 60px;
	border-bottom: none;
	position: relative;
}

main.sub .content.post .topic .topic-name h3::after {
	content: '';
}

main.sub .content.post .topic .topic-box {
	padding: 0 20px 0 0;
}

main.sub .content.post span.entry-meta {
    font-size: 16px;
	color: #666;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 20px;
	display: block;
}

main.sub .content.post .go-to div.go-to-post {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin: 80px auto 30px;
	padding-top: 30px;
	border-top: 1px solid #ddd;
}

main.sub .content.post div.go-to div.go-to-post > div {
	width: 50%;
}

main.sub .content.post .go-to a {
	display: block;
	padding: 0;
	margin: 1px;
	text-decoration: none;
	color: #666;
	line-height: 1.7;
	font-size: 14px;
}

main.sub .content.post .go-to a:hover {
	text-decoration: none;
}

main.sub .content.post .go-to a span {
	display: block;
	color: #333;
}

main.sub .content.post .go-to a span:hover {
	text-decoration: underline;
}

main.sub .content.post .go-to a.custom-btn.gotolist {
	padding: 12px 10px;
	margin: 0 auto;
	border: none;
	color: #fff;
	max-width: 200px;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	min-width: auto;
	font-size: 14px;
	background: #01a3e1;
	border-radius: 30px;
}

main.sub .content.post .go-to a.custom-btn.gotolist:hover {
	background: #0183c9;
	text-decoration: none;
}

main.sub .content.post .go-to div.single-next {
	border-right: 1px solid #eee;
	padding-right: 30px;
}

main.sub .content.post .go-to div.single-next a {
	position: relative;
	padding-left: 30px;
}

main.sub .content.post .go-to div.single-next a::before {
	content: '←';
	position: absolute;
	top: 0;
	left: 0;
	font-weight: 500;
	color: #333;
}

main.sub .content.post .go-to div.single-previous {
	border-left: 1px solid #d9d9d9;
}


main.sub .content.post .go-to div.single-previous a {
	position: relative;
	padding-right: 30px;
	padding-left: 30px;
}

main.sub .content.post .go-to div.single-previous a::before {
	content: '→';
	position: absolute;
	top: 0;
	right: 0;
	font-weight: 500;
	color: #333;
}

main.sub .content.post .go-to div.single-button {
	padding-top: 40px;
	border-top: 1px solid #ccc;
}

main.page-404-main {
	padding-bottom: 0;
}

footer.page-404-footer {
	padding-top: 0;
}

td.point span::after {
	content: ' ・ ';
}

td.point span:last-child::after {
	content: none;
}

a.external span {
	position: relative;
	padding-right: 20px;
	display: inline-block;
}

a.external span::after {
	content: '';
	background-image: url('./images/linkblack.png');
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: 12px;
	position: absolute;
	width: 12px;
	height: 12px;
	right: 0;
	top: 7px;
}

a.external span:hover {
	text-decoration: underline;
}

.contact dl {
	margin: 6px 0 6px;
	padding: 0;
	background: #f6f6f6;
	display: flex;
	justify-content: left;
	align-items: center;
}

.contact dl.apply-button {
	margin-top: 30px;
}


.contact dl dt {
	width: 30%;
	padding: 20px;
	font-size: 15px;
	letter-spacing: 0;
}

.contact dl dd {
	width: 70%;
	padding: 20px;
}

.contact dl dd textarea,
.contact dl dd input {
	padding: 4px 8px;
	font-family: メイリオ, Meiryo, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif;
	font-weight: 500;
	letter-spacing: 1px;
	font-size: 16px;
	box-sizing: border-box;
}

.contact dl dd input {
	width: 65%;
}

.contact dl dd textarea {
	width: 94%;
}

.contact .required {
	font-size: 12px;
	background: #57a72b;
	padding: 1px 4px;
	margin-left: 12px;
	color: #fff;
}

.contact input.submit-confirm {
	padding: 12px 4px;
	margin: 30px auto;
	border: none;
	color: #fff;
	max-width: 250px;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	min-width: auto;
	font-size: 15px;
	font-weight: 500;
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', '游ゴシック', YuGothic, sans-serif;
	background: #01a3e1;
	border-radius: 26px;
	cursor: pointer;
}

.contact input.submit-confirm:hover {
	background: #018cbf;
}

.contact .back input {
	cursor: pointer;
	background: none;
	border: none;
	padding: 10px;
	color: #333;
	font-size: 15px;
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', '游ゴシック', YuGothic, sans-serif;
	font-weight: 400;
}

.contact .back input:hover {
	text-decoration: underline;
}

main.sub .content .sitemap h3 {
	margin: 0;
	padding: 0;
}

main.sub .content .sitemap h3::after {
	content: none;
}

main.sub .content .sitemap h3 a {
	display: block;
	line-height: 1.6;
	color: #000;
	font-weight: 500;
	box-sizing: border-box;
	font-size: 17px;
	text-align: left;
	margin-bottom: 4px;
	padding: 10px 0 10px 10px;
	display: block;
	border-top: 1px solid #015dae;
	border-bottom: 1px solid #bbb;
	margin: 40px 0 20px;
}


main.sub .content .sitemap ul {
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	align-items: flex-start;
    width: 100%;
	padding: 0 0 0 20px;
	margin: 0;
}

main.sub .content .sitemap li {
	list-style-type: none;
}

main.sub .content .sitemap ul li a {
	line-height: 1.8;
	padding: 4px 20px;
	font-weight: 400;
	font-size: 16px;
	min-width: 260px;
	color: #333;
	display: inline-block;
}

main.sub .content .about-greeting {
	display: flex;
	justify-content: left;
	align-items: flex-start;
	margin: 130px 0 0;
    background: linear-gradient( to right, #fff 0, #fff 16%, #f6f6f6 16%, #f6f6f6 100% );
}

main.sub .content .about-greeting .greeting-photo {
	margin-top: -50px;
}

main.sub .content .about-greeting .greeting-photo img {
	max-width: 300px;
	min-width: 300px;
	width: 100%;
	max-height: 500px;
	height: auto;
	margin-right: 60px;
}

main.sub .content .about-greeting .greeting-photo p {
	padding: 20px;
}

main.sub .content .about-greeting .greeting-photo p span.name {
	font-size: 22px;
	font-weight: 500;
	margin-right: 20px;
}

main.sub .content .about-greeting .greeting-photo p span.name-english {
	font-size: 14px;
	font-weight: 300;
	color: #666;
}

main.sub .content .about-greeting .greeting-text {
	padding: 50px 20px 40px 10px;
	max-width: 758px;
}

main.sub .content .about-greeting .greeting-text p.big {
	font-size: 22px;
	font-weight: 500;
	margin-bottom: 36px;
}

main.sub .content table.opening-hours tr th,
main.sub .content table.opening-hours tr td {
	border-right: 1px solid #bbb;
	padding: 8px 0px 8px 0px;
}

main.sub .content table.opening-hours td {
	text-align: center;
	line-height: 1.6;
	letter-spacing: 1px;
}

main.sub .content table.opening-hours {
	border-left: 1px solid #bbb;
}

main.sub .content table.opening-hours tr td.time-zone {
	background: #f4fbfc;
}

th span.nami,
td span.nami {
	display: block;
	transform: rotate(90deg);
	font-size: 10px;
	color: #666;
	font-weight: 400;
	text-align: center;
	transform-origin: 50% 50% 0;
}

main.sub .content p.about-closed {
	margin: -10px 0 40px;
}

main.sub .content p.about-closed span {
	display: inline-block;
	margin-right: 14px;
	padding: 2px 12px;
	background: #f4fbfc;
	font-size: 0.92em;
	border-radius: 3px;
	border: 1px solid #c0d4d7;
}


/* 100周年スライド */
.loop_wrap {
	margin: 60px 0 0;
	padding-bottom: 60px;
	border-bottom: 1px solid #ddd;
}

.loop_wrap .slide-part {
	display: flex;
	width: 100%;
	height: auto;
	overflow: hidden;
	position: relative;
}

.loop_wrap .slide-part img {
	width: auto;
	min-height: 200px;
	max-height: 290px;
	height: 100%;
	object-fit: contain;
}

.loop_wrap .slide-part img.first-slide {
	animation: loop 160s -80s linear infinite;
}

.loop_wrap .slide-part img.last-slide {
	animation: loop2 160s linear infinite;
}

@-webkit-keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}

@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}

@-webkit-keyframes loop2 {
  0% {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-200%);
  }
}

@keyframes loop2 {
  0% {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-200%);
  }
}

.loop_wrap .slide-part .loop-text {
	position: absolute;
	width: 420px;
	height: 100%;
	padding: 70px 30px 30px 60px;
	background: rgba(255,255,255,0.95);
	top: 0;
	bottom: 0;
	left: 100px;
	z-index: 10;
}

.loop_wrap .slide-part .loop-text p {
	color: #015dae;
	font-size: 36px;
	font-family: serif;
	font-weight: 600;
	line-height: 1.7;
}

.loop_wrap .slide-part .loop-text p span {
	display: block;
	color: #333;
	font-size: 22px;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 600;
	margin-top: 20px;
}
/* 100周年スライド ここまで */

.loop_wrap .btn-part {
	margin: 10px auto 0;
	text-align: center;
}

.custom-btn.gold {
	padding: 18px 40px;
	font-weight: 500;
	display: inline-block;
	box-sizing: border-box;
	color: #c4aa67;
	letter-spacing: 0.4px;
	font-size: 15px;
	border-radius: 30px;
	border: 2px solid #c4aa67;
	background: #fff;
	transition: 0.2s;
}

.custom-btn.gold:hover {
	color: #fff;
	border: 2px solid #c4aa67;
	background: #c4aa67;
	transition: 0.2s;
}

main.sub .content p.anniversary-text {
	margin: 40px 0 50px;
	text-align: center;
}

div.structure-pc,
div.structure-sp {
	position: relative;
	width: 100%;
}

div.structure-pc .link-1 {
	position: absolute;
	z-index: 2;
	width: 40%;
	height: 5%;
	top: 13%;
	right: 5%;
}

div.structure-pc .link-2 {
	position: absolute;
	z-index: 2;
	width: 40%;
	height: 5%;
	top: 20.5%;
	right: 5%;
}

div.structure-pc .link-3 {
	position: absolute;
	z-index: 2;
	width: 40%;
	height: 5%;
	top: 28%;
	right: 5%;
}

div.structure-pc .link-4 {
	position: absolute;
	z-index: 2;
	width: 40%;
	height: 10.5%;
	top: 76.5%;
	right: 5%;
}

div.structure-pc .link-5 {
	position: absolute;
	z-index: 2;
	width: 40%;
	height: 5%;
	top: 94%;
	right: 5%;
}


main.sub .content a.new-window span {
	padding-right: 20px;
	display: inline-block;
	position: relative;
}

main.sub .content a.new-window span::after {
	content: '';
	background-image: url('./images/linkblack.png');
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: 13px;
	position: absolute;
	width: 13px;
	height: 13px;
	right: 0;
	top: 5px;
}

main.sub .content a.new-window span:hover {
	text-decoration: underline;
}

main.sub .content .shounika {
	background: #f4fbfc;
	padding: 20px 0;
	margin: 0 0 40px;
}

main.sub .content .shounika .shounika-name {
	background: #f4fbfc;
	border-bottom: 1px solid #abd0d9;
	text-align: left;
}

main.sub .content .shounika .shounika-name a {
	padding: 0 10px 12px 40px;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.6;
	margin: 0;
	letter-spacing: 0.4px;
	display: inline-block;
}

main.sub .content .shounika .shounika-koumoku {
	padding: 20px 40px 0;
}

main.sub .content .shounika table,
main.sub .content .shounika table th,
main.sub .content .shounika table tr td.time-zone {
	background: #fff;
}

main.sub .content .shounika table {
	border-top: 1px solid #bbb;
	margin: 10px 0 20px;
}

main.sub .content .shounika table tr th,
main.sub .content .shounika table tr td {
	padding: 5px 0px 5px 0px;
	font-size: 15px;
}

main.sub .content .shounika .shounika-koumoku > div {
	display: flex;
	justify-content: left;
}

main.sub .content .shounika .shounika-koumoku > div p {
	margin: 0 0 4px;
}

main.sub .content .shounika .shounika-koumoku > div p.koumoku-name {
	min-width: 70px;
}

main.sub .content .shounika .shounika-koumoku .senmongairai {
	padding: 20px 0;
}

main.sub .content div.border-wrap {
	margin: 0 auto;
	padding: 40px;
	width: 100%;
	border: 12px solid #eff7f9;
}

main.sub .content div.border-wrap-gray {
	margin: 80px auto 0;
	border: 10px solid #e2e2e2;
}

main.sub .content div.border-wrap p.border-wrap-title {
	font-size: 20px;
	border-bottom: 1px solid #bbb;
	display: block;
	margin: 0 0 20px;
	padding: 0 0 10px;
}

main.sub .content div.border-wrap .border-wrap-box {
	display: flex;
	justify-content: space-between;
	text-align: left;
}

main.sub .content div.border-wrap .border-wrap-box > div {
	width: 46%;
}

main.sub .content div.border-wrap .border-wrap-box h4 {
	font-size: 21px;
	margin: 20px 0 20px;
	padding: 2px 0px 0px 18px;
}

main.sub .content div.border-wrap .border-wrap-box h4 span {
	font-size: 0.8em;
	font-weight: 500;
}

main.sub .content div.border-wrap .border-wrap-box ul {
	margin: 10px 0 10px 20px;
	line-height: 1.8;
}

main.sub .content div.border-wrap .border-wrap-box ul li {
	list-style: disc;
	padding-left: 6px;
	font-size: 17px;
}

main.sub .content div.border-wrap .border-wrap-box dl {
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	border-top: 1px solid #bbb;
}

main.sub .content div.border-wrap .border-wrap-box dl dt {
	width: 38%;
	padding: 10px 0 10px 26px;
	line-height: 1.8;
	border-bottom: 1px solid #bbb;
}

main.sub .content div.border-wrap .border-wrap-box dl dt span {
	display: block;
	color: #555;
	font-size: 0.86em;
}

main.sub .content div.border-wrap .border-wrap-box dl dd {
	width: 62%;
	padding: 10px 0;
	line-height: 1.8;
	border-bottom: 1px solid #bbb;
}

main.sub .content div.border-wrap .border-wrap-box .iframe-map {
	padding-top: 40%;
	margin: 20px 0 0;
}

main.sub .content div.border-wrap.bgcolor-blue {
	background: #eff7f9;
	margin: 50px 0 70px;
	padding: 20px 30px;
	text-align: left;
}

main.sub .content div.border-wrap.bgcolor-blue ul {
	margin-bottom: 0;
}

main.sub .content div.border-wrap.bgcolor-blue ul li {
	list-style: disc;
	font-size: 18px;
}

main.sub .content .topic {
	border-top: 1px solid #0166b4;
	background: #f4fbfc;
	padding: 20px 0;
	margin: 0 0 50px;
}

main.sub .content .topic .topic-name {
	border-bottom: 1px solid #bbb;
	text-align: left;
	padding: 0 20px 20px 40px;
	margin: 0;
}

main.sub .content .topic .topic-name span {
	background: #1270af;
	color: #fff;
	display: inline-block;
	padding: 5px 20px;
	margin-bottom: 14px;
	border-radius: 20px;
	font-size: 14px;
	letter-spacing: 0.8px;
}

main.sub .content .topic .topic-name h3 {
	color: #333;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.6;
	margin: 0;
	padding: 0;
	letter-spacing: 0.4px;
	display: block;
}

main.sub .content .topic .topic-name h3::after {
	content: none;
}

main.sub .content .topic .topic-box {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

main.sub .content .topic .topic-box {
	padding: 40px 80px 10px 40px;
}

main.sub .content .topic .topic-box .topic-text {
	width: 55%;
}

main.sub .content .topic .topic-box .topic-text.w-100pct {
	width: 100%;
}

main.sub .content .topic .topic-box .topic-file {
	width: 40%;
	padding: 0 2%;
}

main.sub .content .topic .topic-box .topic-file a {
	display: block;
	border: 2px solid #ddd;
	transition: 0.1s;
}

main.sub .content .topic .topic-box .topic-file a:hover {
	border: 2px solid #1270af;
}

main.sub .content .topic .topic-box .topic-file a img {
	margin: 0;
	border: none;
}

main.sub .content .topic .topic-box .topic-file p.hosoku {
	font-size: 14px;
	color: #666;
	margin: 4px 0 0;
	padding: 0;
}

main.sub .content ul.list-ul {
	margin: 10px 0 30px 0;
}

main.sub .content ul.list-ul li {
	list-style-type: none;
	padding-left: 0;
}

main.sub .content ul.list-ul li a {
	display: block;
	border-bottom: 1px solid #ccc;
	width: 100%;
	margin-bottom: 0px;
	color: #0066b4;
	padding: 20px 0 20px 20px;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.7;
	position: relative;
	box-sizing: border-box;
}

main.sub .content .list-ul li:first-child a {
	border-top: 1px solid #ccc;
}

main.sub .content .list-btn {
	text-align: center;
}

main.sub .content .custom-btn.blue {
	padding: 16px 20px;
	font-weight: 500;
	display: inline-block;
	box-sizing: border-box;
	color: #0197d0;
	letter-spacing: 0.4px;
	font-size: 15px;
	border-radius: 36px;
	border: 2px solid #0197d0;
	background: #fff;
	min-width: 350px;
	line-height: 1.5;
	transition: 0.2s;
}

main.sub .content .custom-btn.blue:hover {
	background: #0197d0;
	color: #fff;
	text-decoration: none;
}

main.sub .content .list-btn.for-segment {
	background: #f4fbfc;
	padding: 30px 20px;
	margin: 40px 0 60px;
}

main.sub .content .list-btn.for-segment .custom-btn.blue {
	margin-top: 0;
}


main.sub .content table.column-3,
main.sub .content table.column-4 {
	border-top: 1px solid #0166b4;
}

main.sub .content table.column-3 td {
	padding-left: 2%;
}

main.sub .content table.column-3 th:first-child {
	width: 12%;
}

main.sub .content table.column-3 th:nth-child(2),
main.sub .content table.column-3 th:nth-child(3) {
	width: 44%;
}

main.sub .content table.column-3.table-404020 th:first-child {
	width: 40%;
}

main.sub .content table.column-3.table-404020 th:nth-child(2) {
	width: 40%;
}

main.sub .content table.column-3.table-404020 th:nth-child(3) {
	width: 20%;
}

main.sub .content table.column-3.table-403525 th:first-child {
	width: 40%;
}

main.sub .content table.column-3.table-403525 th:nth-child(2) {
	width: 35%;
}

main.sub .content table.column-3.table-403525 th:nth-child(3) {
	width: 25%;
}

main.sub .content table.column-4 td {
	padding-left: 2%;
	width: 25%;
}

main.sub .content table.column-4.table-22262626 th:first-child {
	width: 22%;
}

main.sub .content table.column-4.table-22262626 th:nth-child(2) {
	width: 26%;
}

main.sub .content table.column-4.table-22262626 th:nth-child(3) {
	width: 26%;
}

main.sub .content table.column-4.table-22262626 th:nth-child(4) {
	width: 26%;
}

main.sub .content table.column-4.table-35153020 th:first-child {
	width: 35%;
}

main.sub .content table.column-4.table-35153020 th:nth-child(2) {
	width: 15%;
}

main.sub .content table.column-4.table-35153020 th:nth-child(3) {
	width: 30%;
}

main.sub .content table.column-4.table-35153020 th:nth-child(4) {
	width: 20%;
}

main.sub .content table.column-4.table-30302218 th:first-child {
	width: 30%;
}

main.sub .content table.column-4.table-30302218 th:nth-child(2) {
	width: 30%;
}

main.sub .content table.column-4.table-30302218 th:nth-child(3) {
	width: 22%;
}

main.sub .content table.column-4.table-30302218 th:nth-child(4) {
	width: 18%;
}


main.sub .content .btn-ex-link {
	text-align: left;
}

main.sub .content .btn-ex-link .custom-btn.blue {
	padding: 16px 20px;
	margin-top: 10px;
	margin-bottom: 60px;
	min-width: 280px;
	text-align: center;
}

main.sub .content .btn-ex-link .custom-btn.blue span {
	padding-right: 24px;
	position: relative;
    display: inline-block;
    line-height: 1.5;
}

main.sub .content .btn-ex-link .custom-btn.blue span::after {
	content: '';
	background-image: url('./images/linkblue.png');
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: 13px;
	position: absolute;
	width: 13px;
	height: 13px;
	right: 0;
	top: 5px;
}

main.sub .content .btn-ex-link .custom-btn.blue:hover span::after {
	content: '';
	background-image: url('./images/linkwhite.png');
}

img.img-w-1000 {
	max-width: 1000px;
}

img.img-w-620 {
	max-width: 620px;
}

main.sub .content .related-links-page ul {
	padding: 0;
	margin: 12px 0 40px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: flex-start;
}

main.sub .content .related-links-page h3 {
	margin-bottom: 30px;
}

main.sub .content .related-links-page ul li {
	width: 48%;
	list-style: none;
}

main.sub .content .related-links-page ul li a {
	display: block;
	border-bottom: 1px solid #bbb;
	padding-bottom: 10px;
	margin-bottom: 20px;
	font-size: 17px;
}

main.sub .content .related-links-page ul li a:hover span {
	text-decoration: underline;
}

main.sub .content .homecare-video {
	background: #f4fbfc;
	margin: 0 -200% 60px;
	padding: 60px 200%;
	text-align: center;
}

main.sub .content .homecare-video .homecare-video-textarea {
	border-top: 1px solid #bbb;
}

main.sub .content .homecare-video p.homecare-video-heading {
	margin-top: -24px;
	display: inline-block;
	padding: 0 30px;
	font-size: 24px;
	font-weight: 500;
	background: #f4fbfc;
	vertical-align: top;
	margin-bottom: 20px;
}
main.sub .content .homecare-video div.video-wrap {
	position: relative;
	width: 100%;
	padding-top: 56.3%;
	margin: 20px 0;
}
main.sub .content .homecare-video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
main.sub .content table a.pdf-link {
	position: relative;
	padding-left: 30px;
	display: block;
}

main.sub .content table a.pdf-link::before {
	content: '';
	position: absolute;
	background-image: url('./images/pdf.png');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 20px;
	width: 20px;
	height: 20px;
	left: 0px;
	top: 4px;
}

main.sub .content .home-care-map {
	padding: 0;
	margin: 50px 0 48px;
	display: flex;
	justify-content: left;
	align-items: flex-start;
}

main.sub .content .home-care-map div.home-care-map-image {
	width: 40%;
	margin-top: 10px;
}

main.sub .content .home-care-map div.home-care-map-image img {
	width: 64%;
	margin: 0 auto;
	display: block;
}

main.sub .content .home-care-map div.home-care-map-pdf {
	width: 55%;
	margin: 20px 0 0;
}

main.sub .content .home-care-map div.home-care-map-pdf a {
	width: 100%;
	margin: 0 0 20px;
}

main.sub .content p.goto-top {
	text-align: right;
	margin: -36px 0 20px;
	padding: 0;
	line-height: 1.6;
}

main.sub .content p.goto-top a {
	text-decoration: underline;
	font-size: 15px;
	font-weight: 400;
	position: relative;
	padding-left: 20px;
}

main.sub .content p.goto-top a::before {
	content: '';
	position: absolute;
	background: url('./images/goto-top.png');
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: 16px;
	position: absolute;
	width: 16px;
	height: 16px;
	left: 0;
	top: 4px;
}

main.sub .content p.goto-top a:hover {
	text-decoration: none;
}

main.sub .content .subpage div.navigation ul.col-2 {
	justify-content: center;
}

main.sub .content .subpage div.navigation ul.col-2 li {
	list-style: none;
	width: 30%;
	margin: 0 1% 20px 1%;
	padding: 0;
	text-align: center;
}
main.sub .content .subpage div.navigation ul.col-2 li a {
	font-size: 16px;
	height: 60px;
}

main.sub .content .mw_wp_form .error {
	color: #ee0000;
	display: block;
	font-size: 16px;
	margin: 10px auto 10px 0;
}

main.sub .content div.mw_wp_form.mw_wp_form_confirm .contact dl dd {
	line-height: 1.6;
}

main.sub .content .contact-page-tel {
	margin-bottom: 60px;
}

main.sub .content .contact-page-tel > div {
	display: flex;
	justify-content: left;
	background: #f1f7f9;
	padding: 34px 0 24px;
	margin-top: -10px;
}

main.sub .content .contact-page-tel p.tel-number {
	color: #015dae;
	font-size: 20px;
	margin-bottom: 10px;
	padding-left: 12%;
}

main.sub .content .contact-page-tel p.fax-number {
	color: #666;
	font-size: 20px;
	margin-bottom: 10px;
	padding-left: 13%;
}

main.sub .content .contact-page-tel p.tel-number span,
main.sub .content .contact-page-tel p.tel-number span a {
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 2px;
	color: #009edb;
	margin-left: 14px;
}

main.sub .content .contact-page-tel p.fax-number span,
main.sub .content .contact-page-tel p.fax-number span a {
	font-size: 30px;
	font-weight: 600;
	letter-spacing: 2px;
	color: #666;
	margin-left: 14px;
}

main.sub .content p.minus-mt24 {
	margin-top: -24px;
	margin-bottom: 40px;
}


main.sub .content div.attention {
	text-align: center;
	margin: -30px 0 50px;
}

main.sub .content div.attention p {
	font-size: 18px;
	padding: 0 0 0 32px;
	margin: 0;
	position: relative;
	display: inline-block;
}

main.sub .content div.attention p::before {
	content: '';
	position: absolute;
	background: url('./images/attention.png');
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: 21px;
	position: absolute;
	width: 21px;
	height: 21px;
	left: 0;
	top: 7px;
}

.pickup-blue {
	background: #f0f6fa;
}


/* レスポンシブ
-------------------------------- */

@media screen and (max-width: 1599px) {
	header nav ul {
		margin-right: 40px;
	}
}

@media screen and (max-width: 1499px) {
	header {
		padding-left: 30px;
	}
	header nav ul {
		margin-right: 22px;
	}
	header nav ul li a {
		margin: 0 15px;
		padding: 14px 0;
	}
}

@media screen and (max-width: 1399px) {
	section.footer-contact .footer-contact-text {
		margin: -60px auto 20px;
		padding: 40px 40px 40px;
		max-width: 80%;
	}
	main.sub .content .homecare-video {
		margin: 0 0 60px;
		padding: 60px 10px;
	}
	header nav ul li a {
		margin: 0 12px;
	}
}

@media screen and (max-width: 1319px) {
	footer .footer-bottom {
		padding: 30px 20px 60px;
	}
}


@media screen and (max-width: 1239px) {
	.wrap {
		padding: 0 40px 30px;
	}
	main.sub .w-1200 {
		padding-left: 20px;
		padding-right: 20px;
	}
	.wrap .box .photo {
		height: 660px;
		margin-bottom: 60px;
	}
	.wrap .box .photo img.animation.animated {
		object-position: 80% 100%;
		height: 660px;
	}
	.wrap .box .text-box {
		width: 50%;
		padding: 90px 50px 40px 50px;
	}
	section.top-news > .wrap > div {
		max-width: 48%;
	}
	main.sub .subpage-top::after {
		font-size: 5vw;
		bottom: -3px;
	}
	main.sub .list {
		padding: 0 20px;
	}
	main.sub .post {
		padding: 0 20px;
	}

	header .inner h1 a::before {
		image-rendering: auto;
	}

}
/* --------------- △ここまで max-width: 1239px --------------- */


@media screen and (max-width: 1199px) {
	header {
		padding-left: 0;
	}
	header.is-animation {
		background: #fff;
		border-bottom: 1px solid #ddd;
	}
	header .inner {
		width: 100%;
		margin: 0 auto;
		padding: 0;
		height: 80px;
		transition: 0.4s;
	}
	header.is-animation .inner {
		height: 72px;
		transition: 0.4s;
	}
	#nav-open {
		width: 80px;
		height: 80px;
		padding-top: 28px;
		padding-left: 20px;
	}
	header.is-animation .inner #nav-open {
		width: 72px;
		height: 72px;
		padding-top: 24px;
		padding-left: 16px;
	}
	#nav-content div.nav-logo a {
		font-size: 28px;
	}
	main {
		margin-top: 80px;
	}
	.wrap.large-top {
		padding-top: 60px;
	}
	.wrap.lr-padding {
		padding-left: 0;
		padding-right: 0;
	}
	section.bg-image {
		padding: 80px 40px 80px;
	}
	section.bg-image > div {
		max-width: 1160px;
		height: 620px;
	}
	section.bg-image > div .bg-image-right img {
		height: 620px;
	}
	section.bg-image > div .bg-image-left ul {
		margin: 20px 30px 0px;
	}
	section.bg-image > div .bg-image-left ul li a {
		padding: 22px 10px 10px;
	}
	#nav-content ul {
		margin: 0 auto 10px;
		padding: 30px 30px 6px;
	}
	#nav-content ul li ul {
		padding: 0px 0px 20px 12px;
	}
	#nav-content ul li ul.drawer-bottom {
		padding: 20px 0 10px;
	}
	#nav-content {
		width: 80%;
	}
	.custom-btn {
		padding: 16px 10px;
		letter-spacing: 0.4px;
		font-size: 14px;
		border-radius: 40px;
	}
	section.footer-contact a.custom-btn img.mail-btn {
		padding: 4px 0 0;
		display: block;
		margin: 0 auto;
	}
	h2,
	main section.center-text .center-text-wrap h2 {
		font-size: 38px;
		margin-bottom: 30px;
	}
	main.sub .content .subpage.about h3 {
		font-size: 26px;
		margin-top: 12px;
		margin-bottom: 28px;
		letter-spacing: 0.4px;
	}
	main.sub {
		padding: 0 0 20px;
	}
	footer a.footer-logo {
		margin: 20px auto 0;
	}
	.wrap > .w-1100 {
		padding-left: 0;
		padding-right: 0;
	}
	h3 {
		font-size: 24px;
		line-height: 1.8;
		margin-bottom: 20px;
	}
	section.top-news li a {
		padding: 12px 0 10px;
	}
	section.top-news li a span.date {
		width: 116px;
		margin-right: 12px;
	}
	main.sub .list .post-item ul li a {
		padding: 16px 16px 16px 16px;
	}
	main.sub .list .post-item span.date {
		border-right: none;
		margin: 0;
		padding-bottom: 2px;
		display: block;
		text-align: left;
	}
	main.sub .content .subpage div.navigation ul li a {
		font-size: 15px;
	}
	main.sub .content .subpage div.navigation ul.col-5 li {
		width: 32%;
	}
	main.sub .content div.kawaraban > a,
	main.sub .content div.paper > a {
		width: 30%;
		margin: 0 1.5% 46px 1.5%;
	}
	main.sub .content dl.history dt {
		width: 20%;
	}
	main.sub .content dl.history dd {
		width: 80%;
	}
	main.sub .content .homecare-video {
		margin: 0 0 60px;
		padding: 60px 10px;
	}
	main.sub .content div.attention {
		text-align: left;
		padding: 0 0 0 6px;
	}
}
/* --------------- △ここまで max-width: 1199px --------------- */

@media screen and (min-width: 960px) {
	.custom-btn br {
		display: none;
	}
	img.model-for-sp {
		display: none;
	}
	li.for-sp {
		display: none;
	}
	footer .footer-wrap .footer-above nav input.acd-check,
	footer .footer-wrap .footer-above nav label.acd-label,
	footer .footer-wrap .footer-above nav div.acd-content {
		display: none;
	}
}

@media screen and (max-width: 959px) {
	main.sub .subpage-top::after {
		content: 'UBE MEDICAL ASSOCIATION';
		font-size: 5.6vw;
	}
	main.sub .content .card-area .card {
		width: 30%;
	}
	img.model-for-pc {
		display: none;
	}
	img.model-for-sp {
		margin-bottom: 30px;
	}
	main section.first-visual {
		height: auto;
	}

	main section.first-visual div.copy span.text {
		font-size: 42px;
		line-height: 1.6;
	}
	main section.first-visual div.copy span.text span.english {
		display: none;
	}
	h3 {
		font-size: 20px;
		line-height: 1.8;
		margin-bottom: 16px;
	}
	h3.top-about {
		font-size: 20px;
	}
	.wrap .box p {
		text-align: left;
		font-size: 15px;
		line-height: 1.8;
	}
	.custom-btn {
		margin-top: 30px;
	}
	.footer-c-blue,
	.footer-c-green,
	.footer-c-orange {
		display: none;
	}
	main.sub .subpage-top {
		height: 120px;
		margin-bottom: 60px;
	}
	main.sub .subpage-top-wrap {
		padding-top: 42px;
	}
	main.sub .subpage-top-wrap h2 {
		font-size: 32px;
	}
	main.sub .content .subpage div.navigation ul li {
		width: 46%;
		margin: 0 2% 20px 2%;
	}
	main.sub .content .subpage div.navigation ul li a {
		line-height: 50px;
		padding: 0;
		height: 52px;
	}
	main.sub .content .subpage h3.heading {
		font-size: 20px;
		margin-top: 30px;
	}
	.wrap {
		padding: 0 30px 40px;
	}
	div.pics-2 {
		margin: 0px auto 0;
	}
	h2 {
		font-size: 36px;
		margin-bottom: 20px;
	}
	main.sub .content .subpage.about h3 {
		font-size: 20px;
		margin-top: 10px;
		margin-bottom: 28px;
		letter-spacing: 0px;
	}
	main.sub .content .subpage p {
		line-height: 1.8;
	}
	div.pics-2 {
		flex-flow: column;
		justify-content: center;
		align-items: center;
	}
	div.pics-2.link > a {
		max-width: 540px;
		width: 100%;
	}
	div.pics-2.link > a:first-child {
		margin-bottom: 70px;
	}
	div.pics-2 a div.app-pic img {
		height: 290px;
		object-position: 0 50%;
	}
	div.pics-2 > div.app-pic {
		margin-right: 0;
		margin-bottom: 30px;
	}
	div.pics-2 a div.app-pic p {
		padding: 24px 0 8px;
		font-size: 18px;
	}
	div.pics-2 a div.app-pic p span.arrow {
		font-size: 14px;
	}
	div.pics-2 a div.app-pic p span.arrow::after {
		width: 28px;
		height: 28px;
		left: -9px;
		top: -7px;
	}
	section.bg-image {
		padding: 60px 30px 60px;
		height: auto;
	}
	section.bg-image > div {
		height: auto;
		display: block;
		border: none;
		box-shadow: none;
	}
	section.bg-image > div .bg-image-left {
		padding: 40px;
		width: 100%;
		border-radius: 4px 4px 0 0;
	}
	section.bg-image > div .bg-image-left ul li a {
		padding: 20px 10px 8px;
	}
	section.bg-image > div .bg-image-right {
		width: 100%;
		height: auto;
	}
	section.bg-image > div .bg-image-right img {
		height: 330px;
		border-radius: 0 0 4px 4px;
		object-position: center;
	}
	main section.center-text.top-news {
		padding: 40px 30px 30px;
		margin-bottom: 0px;
	}
	h2 {
		font-size: 32px;
		margin-bottom: 34px;
		letter-spacing: 0.16em;
	}
	section.top-news > .wrap {
		display: block;
		margin: 0 auto;
	}
	section.top-news > .wrap > div {
		padding: 26px 22px;
		box-shadow: 0 0 6px #999;
		max-width: 100%;
		margin: 0 auto 40px;
	}
	section.top-news > .wrap > div h3 {
		margin-bottom: 0px;
	}
	section.top-news > .wrap > div h3 a {
		font-size: 19px;
		margin-bottom: 8px;
	}
	section.top-news > .wrap > div h3 a::before {
		width: 18px;
		height: 18px;
		left: -30px;
	}
	section.top-news ul {
		margin: 12px auto 18px;
	}

	footer a.footer-logo {
		display: none;
	}
	section.footer-contact .footer-contact-image {
		padding: 0 0px 0;
	}
	section.footer-contact .footer-contact-text {
		margin: 40px auto 0;
		padding: 30px 30px 30px;
		max-width: 100%;
		border-radius: 0;
		box-shadow: none;
	}
	#nav-content div.nav-logo {
		padding: 20px 10px;
	}
	#nav-content div.nav-logo a {
		font-size: 22px;
	}
	#nav-content ul {
		margin: 0 auto 6px;
		padding: 20px 30px 20px;
	}
	#nav-content ul li ul {
		padding: 0 0 10px;
		display: block;
	}
	#nav-content ul li ul li {
		width: 100%;
	}
	#nav-content ul li ul li a {
		padding: 2px 0 2px 30px;
		font-size: 15px;
	}
	.loop_wrap .slide-part .loop-text {
		left: 6%;
	}
	footer .footer-wrap {
		padding: 30px 0 40px;
		margin-top: 60px;
	}
	footer .footer-wrap .footer-above nav {
		display: block;
		padding: 0;
	}
	footer .footer-wrap .footer-above nav ul {
		width: 100%;
		flex-flow: column;
	}
	footer .footer-wrap .footer-above nav .sp-none {
		display: none;
	}
	footer .footer-wrap .footer-above nav h4 a {
		font-weight: 500;
		font-size: 15px;
		padding: 8px 0 8px;
	}
	footer .footer-wrap .footer-above nav > div.footer-above-citizen,
	footer .footer-wrap .footer-above nav > div.footer-above-medical-facilities,
	footer .footer-wrap .footer-above nav > div.footer-above-involved {
		display: none;
	}
	footer .footer-wrap .footer-above nav > div.footer-above-about {
		flex-basis: auto;
		margin-bottom: 20px;
		padding-left: 0;
	}
	footer .footer-wrap .footer-above .footer-above-about ul {
		border-bottom: 1px solid #bbb;
		border-top: none;
		padding: 4px 0 30px;
		margin: 20px 0 0;
	}
	footer .footer-wrap .footer-above .footer-above-about ul li a {
		padding: 6px 20px;
	}
	footer .footer-wrap .footer-above nav > div.footer-above-about > div {
		padding: 10px 20px 10px;
	}
	footer .footer-bottom {
		padding: 30px 20px 30px;
	}
	footer .footer-bottom > div {
		display: block;
	}
	footer p.copyright {
		margin-top: 30px;
		text-align: center;
	}
	.acd-check {
		display: none;
	}
	.acd-label {
		color: #333;
		display: block;
		cursor: pointer;
		position: relative;
		padding: 18px 30px 18px;
		border-bottom: 1px solid #bbb;
		margin: 16px 0 6px;
		font-weight: 500;
	}
	.acd-label::after {
		position: absolute;
		content: '';
		background: url(./images/arrow-down.png);
		top: 17px;
		right: 4%;
		width: 21px;
		height: 21px;
		background-size: contain;
		background-repeat: no-repeat;
		filter: grayscale(100%);
	}
	.acd-content {
		height: 0;
		opacity: 0;
		padding: 0 10px;
		transition: .1s;
		visibility: hidden;
	}
	.acd-check:checked + .acd-label + .acd-content {
		height: 100%;
		opacity: 1;
		padding: 0;
		visibility: visible;
	}
	.acd-check:checked + .acd-label:after {
		position: absolute;
		content: '';
		background: url(./images/arrow-down.png);
		top: 17px;
		right: 4%;
		width: 21px;
		height: 21px;
		background-size: contain;
		background-repeat: no-repeat;
		filter: grayscale(100%);
		transform: rotateZ(180deg);
	}
	.acd-check:checked + .acd-label + .acd-content ul {
		padding: 0;
	}
	footer .footer-wrap .footer-above nav ul li a {
		font-size: 15px;
		line-height: 1.6;
		padding: 6px 0 6px 16px;
		display: block;
	}
	main.sub .content table.column-4 th {
		font-size: 15px;
		line-height: 1.6;
	}
	main.sub .content table.column-4 td {
		font-size: 15px;
		line-height: 1.6;
		padding-left: 2%;
		padding-right: 1%;
	}
	main.sub .content .introduction .introduction-text {
		width: 90%;
		margin: -60px 0 0 auto;
		padding: 60px 50px 2px 50px;
	}
	main.sub .content .introduction .introduction-text::before {
		content: '';
		top: 36px;
		left: 50px;
	}
	main.sub .content .introduction .introduction-text p.introduction-heading {
		font-size: 20px;
	}
	main.sub .content div.reporting-file {
		display: block;
	}
	main.sub .content div.reporting-file > a {
		width: 80%;
		font-size: 16px;
		padding: 18px 6px 18px 50px;
		margin: 0 0 26px;
	}
	main.sub .content div.reporting-file > a::before {
		content: '';
		left: 17px;
		top: 20px;
	}
	main.sub .content div.reporting-file-Word {
		display: block;
	}
	main.sub .content div.reporting-file-Word > a {
		width: 80%;
		font-size: 16px;
		padding: 18px 6px 18px 50px;
		margin: 0 0 26px;
	}
	main.sub .content div.reporting-file-Word > a::before {
		content: '';
		left: 17px;
		top: 20px;
	}
	main.sub .content div.reporting-file-Excel {
		display: block;
	}
	main.sub .content div.reporting-file-Excel > a {
		width: 80%;
		font-size: 16px;
		padding: 18px 6px 18px 50px;
		margin: 0 0 26px;
	}
	main.sub .content div.reporting-file-Excel > a::before {
		content: '';
		left: 17px;
		top: 20px;
	}

	main.sub .content table.organization td ul {
		margin: 10px 0 20px 19px;
		line-height: 1.6;
	}
	main.sub .content table.organization td ul li {
		padding-left: 0px;
		margin-left: 0px;
	}
	main.sub .content table.organization td ul li span {
		display: block;
		font-size: 0.92em;
		color: #555;
		font-weight: 300;
	}
	main.sub .content div.committee {
		display: block;
	}
	main.sub .content div.committee h4 {
		width: 100%;
		margin-top: 0;
		margin-bottom: 20px;
		padding-right: 0;
	}
	main.sub .content div.committee .committee-wrap {
		width: 100%;
	}
	main.sub .content div.committee table th {
		padding-left: 1%;
		padding-right: 1%;
	}
	main.sub .content .introduction {
		margin-bottom: 10px;
	}
	main.sub .content .home-care-map {
		margin: 0 0 40px;
		display: block;
	}
	main.sub .content .home-care-map .home-care-map-image {
		display: none;
	}
	main.sub .content .home-care-map div.home-care-map-pdf {
		margin: 40px 0 0;
		width: 100%;
	}
	main.sub .content .homecare-video {
		margin-bottom: 40px;
		padding-bottom: 40px;
	}
	main.sub .content .topic .topic-name {
		padding: 0 10px 20px 20px;
	}
	main.sub .content .topic .topic-box {
		padding: 40px 20px 10px 20px;
	}
	.contact dl {
		display: block;
	}
	.contact dl dt {
		width: 100%;
		padding: 20px 0 0 20px;
	}
	.contact dl dd textarea, .contact dl dd input {
		font-size: 15px;
	}
	.contact dl.apply-button {
		text-align: center;
	}
	main.sub .content ul.plan {
		margin: 10px 0 10px;
	}
	main.sub .content ul.plan li {
		width: 46%;
		margin-right: 4%;
		margin-bottom: 30px;
		padding: 10px 0px 10px 14px;
	}
	main.sub .content ul.plan li span.number {
		display: inline-block;
		min-width: 52px;
		font-size: 30px;
	}
	main.sub .content ul.plan li span.text {
		display: inline-block;
		font-size: 19px;
		font-weight: 500;
		letter-spacing: 0.06em;
	}
	main.sub .content div.mw_wp_form.mw_wp_form_confirm .contact dl dt {
		padding: 20px 0 6px 20px;
	}
	main.sub .content div.mw_wp_form.mw_wp_form_confirm .contact dl dd {
		width: 100%;
	}
	main.sub .content .contact-page-tel > div {
		display: block;
		padding: 20px 10px 10px 40px;
	}
	main.sub .content .contact-page-tel p.tel-number,
	main.sub .content .contact-page-tel p.fax-number {
		font-size: 18px;
		padding-left: 0;
	}
	main.sub .content .contact-page-tel p.tel-number span,
	main.sub .content .contact-page-tel p.fax-number span,
	main.sub .content .contact-page-tel p.tel-number span a,
	main.sub .content .contact-page-tel p.fax-number span a {
		font-size: 24px;
	}
	main section.first-visual .motion-txt {
		background: rgba(255, 255, 255, 0.6);
		padding: 10px 10px 10px 10px;
	}
	main.sub .content div.attention {
		margin: -20px 0 40px;
	}
	main.sub .content div.attention p {
		line-height: 1.6;
	}
	main.sub .content div.attention p::before {
		content: '';
		position: absolute;
		top: 4px;
	}
}
/* --------------- △ここまで max-width: 959px --------------- */


@media screen and (min-width: 800px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
	div.structure-sp {
		display: none;
	}

}


@media screen and (max-width: 799px) {
	.w-1100 {
		padding-left: 20px;
		padding-right: 20px;
	}
	main.sub .content .shounika .shounika-name a {
		padding: 0 10px 12px 20px;
		font-size: 20px;
	}
	main.sub .content .shounika .shounika-koumoku {
		padding: 16px 20px 0;
	}
	main.sub .content table.opening-hours tr th,
	main.sub .content table.opening-hours tr td {
		padding: 5px 0px 5px 0px;
		font-size: 14px;
	}
	main.sub .content .card-area .card {
		width: 47%;
	}
	main section.first-visual .first-photo .first-photo-wrap img.photo {
		font-family: 'object-fit: cover; object-position: 40% 50%;';
		object-position: 40% 50%;
	}
	br.for-pc {
		display: none;
	}
	main section.first-visual div.copy {
		padding-left: 6%;
	}
	main section.first-visual .first-photo div.latest-news dl dt {
		padding: 42px 22px 20px;
		letter-spacing: 1px;
		font-size: 16px;
	}
	main section.first-visual .first-photo div.latest-news {
		width: 90%;
	}
	footer a {
		padding: 6px 0;
		font-size: 15px;
	}
	#nav-content ul li a {
		font-size: 16px;
		margin-bottom: 0;
		padding: 8px 0 8px 0;
	}
	#nav-content div.link-area {
		padding: 30px 0 30px;
	}
	main section.first-visual div.center-text-wrap p {
		text-align: left;
	}
	main section.first-visual div.center-text-wrap {
		padding: 90px 30px 20px;
	}
	.center-text .center-text-btn {
		margin-bottom: -40px;
		margin-top: 20px;
	}
	.wrap.large-top {
		padding-top: 60px;
	}
	.wrap .box .text-box {
		padding: 0 0 40px;
		width: 100%;
	}
	section.top-news li a {
		padding: 0 20px 10px;
		display: block;
	}
	section.top-news li a span.date {
		display: block;
		min-width: auto;
		max-width: none;
		width: 100%;
		text-align: left;
		margin: 0;
		padding: 10px 0 4px;
		border-right: none;
		color: #666;
	}
	section.top-news li a span.post-title {
		padding: 0 0 4px;
		display: block;
	}
	section.footer-contact .wrap p {
		font-size: 15px;
	}
	main section.under-first-photo {
		margin: -190px 0 0;
	}
	main section.under-first-photo > div {
		height: 320px;
	}
	.wrap .box {
		display: block;
	}
	.wrap .box .photo {
		margin-bottom: 50px;
		height: auto;
		width: 100%;
	}
	.wrap .box .photo img.animation {
		object-position: 80% 100%;
		height: 400px;
	}
	.wrap .box .photo img.animation.animated {
		object-position: 80% 100%;
		height: 400px;
	}
	.wrap .box .text-box {
		padding: 0 30px 40px;
		width: 100%;
	}
	h3.top-about {
		font-size: 20px;
	}
	section.footer-contact .tel-and-mail {
		display: block;
	}
	section.footer-contact .footer-contact-text .box-tel,
	section.footer-contact .footer-contact-text .box-mail {
		padding: 24px 10px 36px;
		width: 100%;
		margin-bottom: 30px;
	}
	div.structure-pc {
		display: none;
	}
	div.structure-sp .link-1 {
		position: absolute;
		z-index: 2;
		width: 62%;
		height: 3.2%;
		top: 12%;
		right: 9%;
	}
	div.structure-sp .link-2 {
		position: absolute;
		z-index: 2;
		width: 62%;
		height: 3.2%;
		top: 23%;
		right: 9%;
	}
	div.structure-sp .link-3 {
		position: absolute;
		z-index: 2;
		width: 62%;
		height: 3.2%;
		top: 34%;
		right: 9%;
	}
	div.structure-sp .link-4 {
		position: absolute;
		z-index: 2;
		width: 62%;
		height: 7%;
		top: 81%;
		right: 22%;
	}
	div.structure-sp .link-5 {
		position: absolute;
		z-index: 2;
		width: 62%;
		height: 3.2%;
		top: 96.2%;
		right: 22%;
	}
	.loop_wrap .slide-part .loop-text {
		width: 43vw;
		padding: 36px 0 10px 34px;
		left: 4%;
	}
	.loop_wrap .slide-part .loop-text p {
		font-size: 4vw;
	}
	.loop_wrap .slide-part .loop-text p span {
		font-size: 2.9vw;
		margin-top: 16px;
	}
	main section div.pickup > h2 {
		padding: 40px 4px 10px;
		font-size: 18px;
		width: 150px;
	}
	main section div.pickup > h2 span {
		padding-left: 26px;
	}
	main section div.pickup > h2 span::before {
		background-size: 16px;
		width: 16px;
		height: 16px;
		top: 4px;
	}
	h2,
	main section.center-text .center-text-wrap h2 {
		font-size: 28px;
		margin-bottom: 28px;
		letter-spacing: 0.1em;
	}
	h2 span.japanese {
		font-size: 15px;
		font-weight: 400;
		margin-top: 13px;
	}
	section.top-news > .wrap > div h3 {
		font-size: 18px;
		padding-left: 34px;
	}
	section.top-news > .wrap > div h3::before {
		content: '';
		width: 24px;
		height: 24px;
		top: 5px;
	}
	section.bg-image > div .bg-image-left {
		padding: 30px;
	}
	section.bg-image > div .bg-image-left h3 {
		font-size: 20px;
		line-height: 1.6;
	}
	h3.top-about {
		font-size: 18px;
		margin-bottom: 22px;
		line-height: 1.6;
	}
	section.footer-contact .footer-contact-text .box-tel .tel-number span,
	section.footer-contact .footer-contact-text .box-tel .tel-number span a {
		font-size: 26px;
	}
	header .inner h1 a {
		font-size: 28px;
	}
	header .inner h1 a span {
		font-size: 14px;
	}
	main section div.pickup > div ul {
		padding: 0 14px;
	}
	.loop_wrap {
		margin: 40px 0 0;
		padding-bottom: 40px;
	}
	main.sub .content .related-links-page ul {
		display: block;
	}
	main.sub .content .related-links-page ul li {
		width: 98%;
	}
	main.sub .content .related-links-page ul li a {
		padding-bottom: 6px;
		margin-bottom: 16px;
	}
	main.sub .content div.kawaraban > a,
	main.sub .content div.paper > a {
		width: 47%;
		margin: 0 1.5% 30px 1.5%;
	}
	main.sub .content div.border-wrap {
		padding: 20px;
	}
	main.sub .content div.border-wrap .border-wrap-box {
		display: block;
	}
	main.sub .content div.border-wrap .border-wrap-box > div {
		width: 100%;
	}
	main.sub .content div.border-wrap .border-wrap-box h4 {
		font-size: 19px;
		margin: 36px 0 30px;
	}
	main.sub .content .topic .topic-box {
		display: block;
	}
	main.sub .content .topic .topic-box .topic-text {
		width: 100%;
		margin-bottom: 40px;
	}
	main.sub .content .topic .topic-box .topic-file {
		width: 100%;
	}
	main.sub .content div.border-wrap .border-wrap-box .emergency dl {
		display: flex;
	}
	main.sub .content div.border-wrap .border-wrap-box .emergency dl dt {
		width: 38%;
		font-size: 15px;
		line-height: 1.6;
	}
	main.sub .content div.border-wrap .border-wrap-box .emergency dl dd {
		width: 62%;
		font-size: 15px;
	}
	main.sub .content div.border-wrap .border-wrap-box .emergency dl dd:last-child {
		border-bottom: 1px solid #bbb;
	}
	main.sub .content div.border-wrap .border-wrap-box .iframe-map {
		padding-top: 60%;
		margin: 40px 0 0;
	}
	main.sub .content .about-greeting {
		display: block;
	}
	main.sub .content .about-greeting .greeting-photo img {
		min-width: auto;
		margin-top: -40px;
	}
	main.sub .content .about-greeting .greeting-photo p span.name {
		font-size: 20px;
		margin-right: 16px;
	}
	main.sub .content .about-greeting .greeting-photo p {
		margin-bottom: 20px;
	}
	main.sub .content .about-greeting .greeting-text {
		padding: 30px 0 0;
		max-width: none;
		width: 100%;
		background: #fff;
	}
	main.sub .content .about-greeting .greeting-text p.big {
		font-size: 18px;
		margin-bottom: 32px;
	}
	main.sub .content .about-greeting .greeting-text p.big br {
		display: none;
	}
}
/* --------------- △ここまで max-width: 799px --------------- */


@media screen and (min-width: 680px) {
	main.sub .content p.about-scroll {
		display: none;
	}
}

@media screen and (max-width: 679px) {
	main.sub .content .subpage div.navigation ul.col-2 li {
		width: 46%;
		margin: 0 2% 20px 2%;
	}
	main.sub .content .subpage div.navigation ul.col-2 li a {
		font-size: 15px;
		height: 54px;
	}
	main.sub .content .subpage div.navigation ul.col-6 li {
		width: 18%;
		margin: 0 2% 14px 0;
	}
	main.sub .content .shounika .shounika-name a {
		padding: 0 10px 12px 10px;
		font-size: 18px;
	}
	main.sub .content .shounika .shounika-koumoku {
		padding: 16px 6px 0 10px;
	}
	main.sub .content table.opening-hours tr th,
	main.sub .content table.opening-hours tr td {
		width: 12.5%;
	}
	main.sub .content table.opening-hours tr th:first-child,
	main.sub .content table.opening-hours tr td:first-child {
		width: 10%;
	}
	main.sub .content table tr th,
	main.sub .content table tr td {
		font-size: 14px;
		line-height: 1.6;
		padding-left: 1%;
		padding-right: 1%;
	}
	main.sub .content div.scroll {
		overflow: auto;
		white-space: nowrap;
	}
	main.sub .content div.scroll table {
		min-width: 679px;
		width: 100%;
		margin: 10px 0 20px;
	}
	main.sub .content div.scroll table tr th,
	main.sub .content div.scroll table tr td {
		font-size: 14px;
		padding: 10px 1% 10px 1%;
		line-height: 1.6;
	}
	main.sub .content div.scroll::-webkit-scrollbar {　
		height: 5px;
	}
	main.sub .content div.scroll::-webkit-scrollbar-track{　
		background: #F1F1F1;
	}
	main.sub .content div.scroll::-webkit-scrollbar-thumb {　　
		background: #BCBCBC;
	}
	main.sub .content p.about-scroll {
		font-size: 14px;
		color: #57a72b;
	}
	main.sub .content div.scroll table .fixed01 {
		position: sticky;
		left: 0;
		text-align: center;
	}
	main.sub .content div.scroll table .fixed01.fixed01-first:before {
		border-top: 1px solid #0166b4;
	}
	main.sub .content div.scroll table .fixed01:before {
		content: "";
		position: absolute;
		top: -1px;
		left: -1px;
		width: 100%;
		height: 100%;
		border: 1px solid #bbb;
	}
	main.sub .content div.scroll table.schedule {
		border-right: 1px solid #bbb;
	}
	main.sub .content h3 {
		font-size: 20px;
		font-weight: 500;
		line-height: 1.6;
		letter-spacing: 0.04em;
		padding-bottom: 12px;
		margin-top: 10px;
		margin-bottom: 30px;
	}
	main.sub .content h4 {
		font-size: 18px;
		margin: 30px 0 20px;
		font-weight: 500;
		padding: 2px 0px 0px 18px;
		line-height: 1.6;
	}
	main.sub .content h4::before {
		content: '';
		height: 90%;
	}
	main.sub .content div.border-wrap p.border-wrap-title {
		font-size: 18px;
		border-bottom: 2px solid #bbb;
		margin: 0 0 16px;
		padding: 0 0 8px;
	}
	main.sub .content div.border-wrap.bgcolor-blue ul li {
		font-size: 16px;
		padding-left: 4px;
	}
	main.sub .content div.border-wrap.bgcolor-blue {
		margin: 40px 0 60px;
		padding: 10px 10px;
	}
	main section.first-visual div.center-text-wrap h3 {
		margin-bottom: 36px;
		text-align: left;
	}
	main section.first-visual div.center-text-wrap h3 br {
		display: none;
	}
	main.sub .content table.column-3 th:first-child {
		width: 25%;
	}
	main.sub .subpage-top-wrap {
		padding-top: 42px;
	}
	main.sub .subpage-top-wrap h2 {
		font-size: 24px;
	}
	.wp-pagenavi a,
	.wp-pagenavi {
		justify-content: center !important;
	}
	.wp-pagenavi a,
	.wp-pagenavi span {
		padding: 10px 14px !important;
		font-size: 14px !important;
	}
	main.sub .content .subpage div.navigation ul li a {
		padding: 0;
		height: 46px;
		font-size: 14px;
	}
	main.sub .content dl.history dt {
		width: 25%;
		padding: 16px 10px 16px 20px;
		font-weight: 400;
		font-size: 16px;
		line-height: 1.6;
	}
	main.sub .content dl.history dd {
		width: 75%;
		padding: 16px 4px 16px 14px;
		font-weight: 400;
		font-size: 16px;
		line-height: 1.6;
	}
	main.sub .content dl.history dd ul li {
		padding: 0 0 0 1px;
	}
	main.sub .content dl.history dd.history-current {
		padding: 20px 0 20px 18px;
	}
	main section.first-visual div.copy span.text {
		font-size: 34px;
	}
	.wrap .box .photo img.animation.animated {
		height: 320px;
	}
	h2 {
		font-size: 30px;
	}
	h2 span.japanese {
		font-size: 15px;
	}
	.custom-btn {
		padding: 14px 10px;
		letter-spacing: 0px;
		min-width: 220px;
	}
	.loop_wrap .slide-part .loop-text {
		width: 40vw;
		padding: 30px 0 10px 20px;
	}
	.loop_wrap .slide-part img {
		width: auto;
		max-height: 200px;
	}
	.custom-btn.gold {
		padding: 16px 20px;
		letter-spacing: 0px;
		font-size: 14px;
	}
	main section div.pickup {
		margin: 40px auto 0;
	}
	footer .footer-bottom nav ul {
			display: block;
	}
	footer .footer-bottom nav ul li::after {
		content: none;
	}
	footer .footer-wrap {
		padding: 20px 0 20px;
		margin-top: 50px;
	}
	#nav-content ul li ul li a {
		padding: 4px 0 4px 20px;
		font-size: 14px;
		min-width: auto;
	}
	main.sub .content .subpage div.navigation ul.col-5 {
		padding: 0;
	}
	main.sub .content .subpage div.navigation ul.col-5 li {
		width: 46%;
		margin: 0 2% 4% 2%;
	}
	main.sub .content div.reporting-file > a {
		width: 100%;
		font-size: 15px;
		padding: 14px 6px 14px 40px;
		margin: 0 0 24px;
	}
	main.sub .content div.reporting-file > a::before {
		content: '';
		left: 13px;
		top: 17px;
		width: 20px;
		height: 20px;
		background-size: 20px;
	}
	main.sub .content div.reporting-file-Word > a {
		width: 100%;
		font-size: 15px;
		padding: 14px 6px 14px 40px;
		margin: 0 0 24px;
	}
	main.sub .content div.reporting-file-Word > a::before {
		content: '';
		left: 13px;
		top: 17px;
		width: 20px;
		height: 20px;
		background-size: 20px;
	}
	main.sub .content div.reporting-file-Excel > a {
		width: 100%;
		font-size: 15px;
		padding: 14px 6px 14px 40px;
		margin: 0 0 24px;
	}
	main.sub .content div.reporting-file-Excel > a::before {
		content: '';
		left: 13px;
		top: 17px;
		width: 20px;
		height: 20px;
		background-size: 20px;
	}
	main.sub .content div.committee {
		margin-top: 30px;
		margin-bottom: 30px;
		padding-bottom: 0px;
	}
	main.sub .content div.committee table th {
		font-size: 14px;
	}
	main.sub .content .homecare-video p.homecare-video-heading {
		margin-top: -20px;
		padding: 0 26px;
		font-size: 20px;
	}
	main.sub .content ul.link-ul li {
		padding: 20px;
	}
	main.sub .content ul.list-ul li a {
		padding: 16px 16px 16px 16px;
		font-size: 16px;
		line-height: 1.6;
	}
	.contact dl dd {
		width: 100%;
		padding: 16px 20px 16px;
	}
	.contact dl dd input {
		width: 94%;
	}
	.mwform-tel-field input[type="text"],
	.mwform-zip-field input[type="text"] {
		display: inline-block;
		width: 28% !important;
	}
	main.sub .subpage-top::after {
		content: 'UBE MEDICAL ASSOCIATION';
		font-size: 6.5vw;
		background: linear-gradient(to right, #0171bc, #01a1e0);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
		background-clip: text;
		text-fill-color: transparent;
	}
	main.sub .content ul.plan {
		display: block;
	}
	main.sub .content ul.plan li {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
	main.sub .content ul.plan li span.number {
		display: inline-block;
		min-width: 50px;
		font-size: 28px;
	}
	main.sub .content ul.plan li span.text {
		display: inline-block;
		font-size: 18px;
	}
}
/* --------------- △ここまで max-width: 679px --------------- */


@media screen and (min-width: 480px) {
	br.sp480 {
		display: none;
	}
}

@media screen and (max-width: 479px) {
	main.sub .content.post h3.title {
		margin-bottom: 40px;
	}
	main.sub .content .iframe-map {
		padding-top: 80%;
	}
	main.sub.list-page h2.japanese.list-h {
			padding: 8px 0 8px 10px;
	}
	main.sub .content .subpage div.navigation ul.col-6 li {
		width: 23%;
	}
	main.sub .content .subpage p {
		font-size: 15px;
		line-height: 1.6;
	}
	main.sub .content .shounika .shounika-koumoku {
		padding: 16px 4px 0 4px;
	}
	main.sub .content .shounika .shounika-koumoku > div {
		padding-left: 6px;
	}
	main.sub .content table.opening-hours tr th:first-child,
	main.sub .content table.opening-hours tr td:first-child {
		width: 8%;
	}
	main.sub .content.post table.opening-hours,
	main.sub .content.post table.opening-hours {
		margin-left: -10px;
		margin-right: -10px;
		width: calc( 100% + 20px);
	}
	.wrap {
		padding: 0 20px 40px;
	}
	header .inner h1 a span {
		font-size: 13px;
		margin-bottom: 4px;
	}
	header.is-animation .inner h1 a span {
		font-size: 13px;
		margin-bottom: 4px;
	}
	main section div.pickup > h2 span {
		padding-left: 0;
	}
	main section div.pickup > h2 {
		padding: 40px 2px 10px;
		font-size: 16px;
		width: 110px;
		letter-spacing: 0.6px;
	}
	main section div.pickup > h2 span::before {
		content: none;
	}
	.loop_wrap .slide-part .loop-text {
		display: none;
	}
	main section.first-visual div.copy {
		padding: 0 0 0 6%;
		top: 24%;
	}
	section.top-news > .wrap > div {
		padding: 26px 10px 10px;
	}
	section.top-news > .wrap > div h3 {
		font-size: 17px;
	}
	img.model-for-sp {
		margin-left: -20px;
		margin-right: -10px;
		width: calc( 100% + 30px );
	}
	main.sub .content .subpage .iframe-map {
		padding-top: 60%;
	}
	#nav-content div.nav-logo {
		padding: 16px 20px 14px;
	}
	#nav-content div.nav-logo a {
		max-width: 150px;
	}
	#nav-content ul {
		padding: 20px 30px 30px;
	}
	main.sub .content.post span.entry-meta {
		font-size: 15px;
		margin-bottom: 12px;
	}
	main.sub .content.post h3.title {
		font-size: 19px;
		padding-bottom: 12px;
		font-weight: 500;
		letter-spacing: 0;
	}
	main.sub .content .subpage.policy p {
		font-size: 15px;
	}
	main.sub .content .subpage.policy h3 {
		font-size: 18px;
		margin-top: 36px;
		margin-bottom: 12px;
	}
	main.sub .content .subpage.policy h3 span {
		font-size: 22px;
	}
	main.sub .content .subpage.policy div.border {
		margin: 50px 0 40px;
		padding: 0 20px 12px;
	}
	main.sub .content .subpage.policy div.border div.for-border {
		margin: -14px auto 20px;
	}
	main.sub .content .subpage.policy div.border div.for-border span {
		font-size: 18px;
		padding: 0 12px;
	}
	main.sub .content ul,
	main.sub .content ol {
		margin: 10px 0 26px 22px;
	}
	main.sub .content ul li,
	main.sub .content ol li {
		padding-left: 6px;
		font-size: 15px;
	}
	main.sub .content .policy .information {
		margin: 30px 0 30px;
		padding: 20px 20px;
	}
	footer p.copyright {
		font-size: 14px;
	}
	.custom-btn {
		font-weight: 500;
	}
	main section.first-visual div.copy span.text {
		font-size: 24px;
	}
	main section.first-visual .first-photo .first-photo-wrap img.photo {
		height: 66vh;
		font-family: 'object-fit: cover; object-position: 40% 50%;';
		object-position: 40% 50%;
	}
	 main section.under-first-photo > div {
		height: 260px;
	}
	.wrap .box .photo img.animation {
		height: 240px;
		transition-duration: 0s;
	}
	.wrap .box .photo img.animation.animated {
		height: 240px;
		transition-duration: 0s;
	}
	h3.top-about {
		font-size: 16px;
	}
	div.pics-2 a div.app-pic p {
		font-size: 17px;
	}
	div.pics-2 a div.app-pic img {
		height: 190px;
		object-position: 0 50%;
	}
	section.bg-image {
		padding: 40px 20px 30px;
	}
	section.bg-image > div .bg-image-left {
		padding: 24px;
	}
	section.bg-image > div .bg-image-left h3 {
		line-height: 1.6;
		font-size: 18px;
	}
	section.bg-image > div .bg-image-left p {
		font-size: 15px;
	}
	section.bg-image > div .bg-image-left ul {
		margin: 14px 0 20px;
	}
	section.bg-image > div .bg-image-right img {
		height: 200px;
	}
	section.bg-image > div .bg-image-left ul li a {
		font-size: 15px;
	}
	section.bg-image > div .bg-image-left ul li a::before {
		content: '→';
		font-size: 15px;
	}
	.wrap .box .photo {
		margin-bottom: 40px;
	}
	h2, main section.center-text .center-text-wrap h2 {
		font-size: 30px;
	}
	main section.center-text.top-news {
		padding: 30px 10px 10px;
	}
	section.footer-contact .footer-contact-text .box-tel h3,
	section.footer-contact .footer-contact-text .box-mail h3 {
		font-size: 17px;
	}
	section.footer-contact .footer-contact-text .box-tel .tel-number {
		color: #015dae;
		font-size: 17px;
	}
	section.footer-contact .footer-contact-text .box-tel .tel-number span,
	section.footer-contact .footer-contact-text .box-tel .tel-number span a {
		font-size: 24px;
		letter-spacing: 1px;
		margin-left: 6px;
	}
	section.footer-contact .footer-contact-text .box-tel .fax-number {
	font-size: 15px;
	}
	section.footer-contact .footer-contact-text .box-tel .fax-number span,
	section.footer-contact .footer-contact-text .box-tel .fax-number span a {
		font-size: 16px;
		margin-left: 4px;
		letter-spacing: 1px;
	}
	section.footer-contact .footer-contact-text .box-tel,
	section.footer-contact .footer-contact-text .box-mail {
		padding: 22px 0px 28px;
	}
	section.footer-contact .footer-contact-text .box-mail .custom-btn {
			min-width: 240px;
	}
	main {
		margin-top: 70px;
	}
	header .inner h1 a {
		font-size: 24px;
	}

	header.is-animation .inner h1 a {
		font-size: 24px;
	}
	header .inner {
		height: 70px;
	}
	header.is-animation .inner {
		height: 70px;
	}
	#nav-open {
		width: 70px;
		height: 70px;
		padding-top: 25px;
		padding-left: 20px;
	}
	header.is-animation .inner #nav-open {
		width: 70px;
		height: 70px;
		padding-top: 25px;
		padding-left: 20px;
	}
	#nav-open span, #nav-open span::before,
	#nav-open span::after {
		height: 1px;
		width: 30px;
	}
	#nav-open span::before {
		bottom: -10px;
	}
	#nav-open span::after {
		bottom: -20px;
	}
	main.sub .subpage-top {
		height: 110px;
		margin-bottom: 50px;
	}
	main.sub .subpage-top-wrap h2 span.small-txt {
		font-size: 0.8em;
		letter-spacing: 0.6px;
	}
	main.sub .subpage-top::after {
		content: 'UBE MEDICAL ASSOCIATION';
		font-size: 7.4vw;
		bottom: -2px;
		letter-spacing: 0px;
	}

	main.sub .content table.column-4 th {
		font-size: 14px;
	}
	main.sub .content table.column-4 td {
		font-size: 14px;
		line-height: 1.6;
		padding-left: 1%;
		padding-right: 1%;
	}
	main.sub .content table.single-info th {
		width: 26%;
		text-align: left;
		padding-left: 10px;
	}
	main.sub .content table.single-info td {
		padding: 10px 6px 10px 20px;
	}
	main.sub .content.post .go-to div.single-next {
		padding-right: 20px;
	}

	main.sub .content.post .go-to div.single-next a {
		padding-left: 20px;
	}
	main.sub .content.post .go-to div.single-previous a {
		padding-right: 20px;
		padding-left: 20px;
	}
	footer .footer-wrap .footer-above .footer-above-about > div p.footer-info span.number a {
		font-size: 16px;
		padding: 0;
		margin: 0;
	}
	main.sub .content .sitemap ul {
		display: block;
		padding: 0;
	}
	main.sub .content .sitemap ul li a {
		font-size: 15px;
		min-width: auto;
	}
	main.sub .content .related-links-page ul li a {
		font-size: 15px;
	}
	main.sub .content div.kawaraban > a,
	main.sub .content div.paper > a {
		width: 100%;
		margin: 0 auto 30px;
	}
	main.sub .content .introduction {
		margin-bottom: 26px;
	}
	main.sub .content .introduction .introduction-text {
		margin: -40px 0 0 auto;
		padding: 38px 10px 2px 30px;
	}
	main.sub .content .introduction .introduction-text::before {
		content: '';
		width: 80px;
		top: 24px;
		left: 26px;
	}
	main.sub .content .introduction .introduction-text p.introduction-heading {
		font-size: 19px;
	}
	main.sub .content div.border-wrap {
		padding: 10px;
		border: 8px solid #eff7f9;
	}
	main.sub .content div.border-wrap .border-wrap-box dl {
		display: block;
	}
	main.sub .content div.border-wrap .border-wrap-box dl dt {
		width: 100%;
		padding: 8px 0 8px 10px;
	}
	main.sub .content div.border-wrap .border-wrap-box dl dd {
		width: 100%;
		padding: 10px 6px 26px 10px;
	}
	main.sub .content div.border-wrap .border-wrap-box dl dd:last-child {
		border-bottom: none;
	}
	main.sub section {
		padding: 40px 0 40px;
	}
	main.sub .content .list-btn.for-segment {
		padding: 20px 10px;
		margin: 30px 0 50px;
	}
	main.sub .content .custom-btn.blue {
		letter-spacing: 0.2px;
		font-size: 14px;
		min-width: 280px;
	}
	main.sub .content .custom-btn.blue:hover {
		background: #fff;
		color: #0197d0;
	}
	#nav-content ul li ul li a {
		padding: 3px 0 3px 20px;
		font-size: 15px;
	}
	main.sub .list .post-item ul li a {
		padding: 16px 6px 16px 10px;
		font-size: 16px;
	}
	main.sub .content ul.link-ul li {
		padding: 16px 6px 16px 10px;
	}
	main.sub .content ul.link-ul li a {
		font-size: 16px;
		line-height: 1.7;
	}
	main.sub .content div.border-wrap p.border-wrap-title {
		font-size: 17px;
		border-bottom: 1px solid #bbb;
		margin: 0 0 14px;
		padding: 4px 0 6px;
	}
	main.sub .subpage-top-wrap h2 {
		font-size: 22px;
	}
	main.sub .content .card-area .card {
		width: 100%;
		padding: 0;
		margin: 0 0 26px;
		box-shadow: 4px 4px 14px #c6d1ec;
		border-radius: 10px;
	}
	main.sub .content .card a {
		display: flex;
		justify-content: left;
		align-items: flex-start;
		padding: 20px 20px 10px 20px;
		flex-direction: row-reverse;
	}
	main.sub .content .card a > div {
		padding: 2px 10px 0 0;
		width: 70%;
	}
	main.sub .content .card a > div p.card-title {
		font-size: 17px;
		min-height: 40px;
		text-align: left;
		margin-bottom: 20px;
	}
	main.sub .content .card p.card-more {
		border-top: 1px solid #ccc;
		text-align: left;
		display: block;
		margin: 16px 20px 16px 4px;
		position: relative;
	}
	main.sub .content .card a img {
		width: 30%;
		margin: 0;
		padding: 0;
	}
	main.sub .content dl.history dt {
		width: 30%;
		padding: 16px 10px 16px;
		font-size: 15px;
	}
	main.sub .content dl.history dd {
		width: 70%;
		padding: 16px 4px 16px 14px;
		font-size: 15px;
	}
	main.sub .content .about-greeting .greeting-photo img {
		width: 60vw;
	}
	main.sub .content .about-greeting .greeting-photo p {
		padding: 20px 0;
	}
	main.sub .content .about-greeting .greeting-text p.big {
		font-size: 17px;
	}
	main.sub .content .topic .topic-name {
		padding: 0 10px 16px 20px;
	}
	main.sub .content .topic .topic-name h3 {
		font-size: 19px;
	}
	main.sub .content.post .topic .topic-name h3 {
		font-size: 19px;
		padding-bottom: 12px;
		margin-bottom: 40px;
	}
	main.sub .content p span.big,
	main.sub .content p.big {
		font-size: 1.2em;
	}
	main.sub .post {
		padding: 0 20px;
	}
	section.footer-contact .wrap {
		padding: 0 0 20px;
	}
	main.sub .content p.anniversary-text {
		margin: 40px 0 50px;
		text-align: left;
	}
	.custom-btn.gold:hover {
		color: #c4aa67;
		background: #fff;
	}
	.custom-btn:hover {
		color: #0197d0;
		background: #fff;
	}
	main.sub .content h3.border-top {
		padding-top: 40px;
		margin-top: 60px;
	}
	main.sub .content .introduction .introduction-text p {
		line-height: 1.8;
	}
	main.sub .content .contact-page-tel {
		margin-bottom: 50px;
	}
	main.sub .content .contact-page-tel > div {
		display: block;
		padding: 16px 10px 8px 40px;
		margin-top: 0px;
	}
	main.sub .content .contact-page-tel p.tel-number,
	main.sub .content .contact-page-tel p.fax-number {
		font-size: 16px;
		padding-left: 0;
	}
	main.sub .content .contact-page-tel p.tel-number span,
	main.sub .content .contact-page-tel p.tel-number span a {
		font-size: 21px;
		margin-left: 8px;
		letter-spacing: 1px;
	}
	main.sub .content .contact-page-tel p.fax-number span,
	main.sub .content .contact-page-tel p.fax-number span a {
		font-size: 19px;
		margin-left: 8px;
		letter-spacing: 1px;
	}
	main.sub .content h3::after {
		content: '';
		background: linear-gradient(to right, #0063c4 0%, #01a2e1 20%, #eee 20% 100%);
	}
	main.sub .content.post h3.title::after {
	    content: '';
		background: linear-gradient(to right, #0063c4 0%, #01a2e1 20%, #eee 20% 100%);
	}
	main.sub .content .subpage div.navigation ul li a:hover {
		background: #fff;
		color: #015dae;
	}
	main.sub .content table td.font-1plus {
		font-size: 15px;
	}
	main.sub .content div.attention p {
		font-size: 16px;
	}

	header .inner h1 a {
		padding-left: 48px;
	}
	header.is-animation .inner h1 a {
		padding-left: 48px;
	}
	header .inner h1 a::before {
		width: 41px;
		height: 41px;
		top: 0;
	}
	header.is-animation .inner h1 a::before {
		width: 41px;
		height: 41px;
	}

	/* ブラウザの「戻る」に対応 */
	main.homepage a,
	main.homepage a:hover {
		transition-duration: 0s !important;
	}
	main.homepage .top-about .center-text-btn.effect-fade-b {
		transition-duration: 0s !important;
		transform: none !important;
	}
	main.homepage section.top-news > .wrap > div {
		transition-duration: 0s important;
	}
	main.homepage div.pics-2.effect-fade-b {
		transition-duration: 0s !important;
		transform: none !important;
	}
	main.homepage div.pics-2 a div.app-pic p {
		transition-duration: 0s !important;
	}
	main.homepage section.footer-contact .wrap,
	main.homepage section.footer-contact .footer-contact-text,
	main.homepage section.footer-contact .footer-contact-text .box-tel,
	main.homepage section.footer-contact .footer-contact-text .box-mail {
		transition-duration: 0s !important;
	}
	/* ここまで　ブラウザの「戻る」に対応 */

}
/* --------------- △ここまで max-width: 479px --------------- */


@media screen and (max-width: 369px) {
	#nav-content ul li ul li a {
		padding: 2px 0 2px 16px;
		font-size: 14px;
	}
	.custom-btn {
		min-width: 260px;
	}
	main.sub .content .list-btn.for-segment {
		padding: 30px 10px;
	}
	main.sub .content .custom-btn.blue {
		letter-spacing: 0;
		min-width: auto;
	}
}


/* ------------------------------------
動くエフェクト
------------------------------------ */

.effect-fade {
	opacity : 0;
	transition : all 600ms;
}

.effect-fade-b {
	transform : translate(0px, 100px);
	transition : all 600ms;
}

.effect-fade.effect-scroll {
	opacity : 1;
	transform : translate(0, 0);
}

@media screen and (max-width: 479px) {
	.effect-fade-b {
		transform : translate(0px, 60px);
		transition : all 600ms;
	}
}

/* ------------------------------------
文字を覆うエフェクト
------------------------------------ */
.motion-txt {
  display: inline-block;
  position: relative;
  overflow: hidden;
  padding: 0;
}

main section.first-visual .motion-txt {
  padding-bottom: 12px;
  padding-left: 4px;
}

.motion-txt:after {
  content: '';
  position: absolute;
  opacity: 1;
  left: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  background-color: #015dae;
background: linear-gradient( to right, #015dae, #01a3e1 );
  transform: translate3d(-101%, 0, 0);
}

.js-scroll.show .motion-txt:after {
  transition-property: transform, opacity;
  transition-duration: 0.9s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  transform: translate3d(0, 0, 0);
}

.js-scroll.done .motion-txt:after {
  transition-property: transform;
  transition-duration: 0.5s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  transform: translate3d(103%, 0, 0);
}

.motion-txt .motion-inner {
  display: inline-block;
  opacity: 0;
}

.js-scroll.done .motion-txt .motion-inner {
  opacity: 1;
}

/* ------------------------------------
幾何学模様
------------------------------------ */

#particles-js {
	width: 100%;
	height: 100%;
	display: block;
}

/* ここまでエフェクト -------------- */

/* 画像の回り込み */
/*
.alignnone {
  padding: 4px;
  margin: 0px 15px 0 15px;
}
.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding: 4px;
}
.alignright {
  float: right;
  display: inline;
  padding: 4px;
  margin: 0px 15px 0 15px;
}
.alignleft {
  float: left;
  display: inline;
  padding: 4px;
  margin: 0px 15px 0 15px;
}
.clear {
  clear: both;
}
*/
/* 文字の回り込み -------------- */

@media print {
	header {
		display: none;
	}
	main.sub .subpage-top {
		display: none;
	}
	main.sub .content .subpage div.navigation ul {
		display: none;
	}
}

@media print {
	footer {
	    display: none;
	}
	main.sub .subpage-top {
		display: none;
	}
	main.sub .content .subpage div.navigation ul {
		display: none;
	}
}


/* ---------------------------------------------------------------------
▽2021.12.21 追加
------------------------------------------------------------------------ */
.lr-none img.alignnone,
.lr-none img.alignright,
.lr-none img.alignleft {
	margin-left: 0;
	margin-right: 0;
	padding-left: 0;
	padding-right: 0;
}

.lr-none img.aligncenter {
 	padding-left: 0;
	padding-right: 0;
}

.link-icon a span.icon {
	position: relative;
	display: inline-block;
	padding-right: 30px;
}

.link-icon a:hover span.icon {
	text-decoration: underline;
}

.link-icon a[href$=".pdf"] span.icon::after {
	content: '';
	position: absolute;
	background-image: url('./images/pdf.png');
	margin: 0;
	padding: 0 50px 0 0;
	background-position: right center;
	background-size: 24px;
	background-repeat: no-repeat;
	width: 24px;
	height: 24px;
	top: 3px;
	right: 0;
}

.link-icon a[href$=".jpg"] span.icon::after,
.link-icon a[href$=".JPG"] span.icon::after,
.link-icon a[href$=".jpeg"] span.icon::after,
.link-icon a[href$=".png"] span.icon::after,
.link-icon a[href$=".bmp"] span.icon::after,
.link-icon a[href$=".gif"] span.icon::after {
	content: '';
	position: absolute;
	background-image: url('./images/icon-image.png');
	margin: 0;
	padding: 0 50px 0 0;
	background-position: right center;
	background-size: 24px;
	background-repeat: no-repeat;
	width: 24px;
	height: 24px;
	top: 3px;
	right: 0;
}


main.sub .content div.square-file {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	margin-bottom: 30px;
}

main.sub .content div.square-file > a {
	width: 48%;
	font-size: 17px;
	background: #f4fbfc;
	border: 1px solid #0166b4;
	box-sizing: border-box;
	padding: 20px 10px 20px 54px;
	margin: 0 0 30px;
	position: relative;
	line-height: 1.6;
	display: block;
}


main.sub .content div.square-file > a span {
	color: #777;
	font-weight: 400;
	font-size: 0.9em;
	padding-left: 16px;
	letter-spacing: 0.1em;
}

main.sub .content div.square-file > a:hover {
	background: #e8f6f9;
	border: 1px solid #0166b4;
	text-decoration: underline;
}


/* ---------------------------------------------------------------------
ここまで 2021.12.21 追加CSS

▽phpファイルの変更点

■100th Anniversary 固定ページ
・<div class="w-1000"> を <div class="w-1000 lr-none">に変更

■page-lecture.php（講演会）
【開催が終了した学術講演会】
・ <ul class="list-ul"> を <ul class="list-ul link-icon"> に変更
・ liタグ内 2ヶ所（cf_d_file、cf_d_jpg）の <?php the_title(); ?> を <span class="icon"><?php the_title(); ?></span> に変更

【開催が終了した委員会活動講演会等】
・ <ul class="list-ul"> を <ul class="list-ul link-icon"> に変更
・ liタグ内 2ヶ所（cf_d_file、cf_d_jpg）の <?php the_title(); ?> を <span class="icon"><?php the_title(); ?></span> に変更

■page-topic2.php（市民公開講座）
【開催が終了した市民公開講座】
・ <ul class="list-ul"> を <ul class="list-ul link-icon"> に変更
・ liタグ内 2ヶ所（cf_d_file、cf_d_jpg）の <?php the_title(); ?> を <span class="icon"><?php the_title(); ?></span> に変更

■taxonomy-segment.php
・ <ul class="segment-list"> を <ul class="segment-list link-icon"> に変更
・ liタグ内 2ヶ所（cf_d_file、cf_d_jpg）の <?php the_title(); ?> を <span class="icon"><?php the_title(); ?></span> に変更


※プラグイン「MimeType Link Icons」は要削除
------------------------------------------------------------------------ */


/* ---------------------------------------------------------------------------------
2022.06.09 修正点
--------------------------------------------------------------------------------- */
/*
・事業体系図のページに関連キーワードを入力
・「小児科医院・病院の診療時間」ページに、関連キーワードとして「山口大学医学部附属病院」「宇部市休日･夜間救急診療所」を入力
・「事業体系図」ページに、関連キーワードを入力
・トップのインフォーメーションの「医療機関の皆様にお知らせ」のulに【date-none】のクラスを付与して、非表示にする
・ページ軽量化のため、トップページのinfo.pngとabout.pngの2つの画像を軽量化済みのjpgに変更。（差し替え版の画像をアップロード）
・テストサイト(xs942369.xsrv)のMW WP FormにはreCAPTCHAのプラグインは必要ない。そのため、テストサイトへのデータ移管後、テストサイトのMW WP Form内から該当の記述を削除する。
*/

.search-area {
	display: block;
	max-width: 180px;
	margin: 10px 70px 2px auto;
	transition: .4s;
}

header.is-animation .search-area {
	transition: .4s;
	display: none;
}

header.is-animation .nav-drawer-search .search-area {
	display: block;
}

.search-area .searchform {
	box-sizing: border-box;
	position: relative;
	border: 1px solid #999;
	padding: 2px 12px;
	border-radius: 20px;
	height: auto;
	width: 100%;
	overflow: hidden;
	margin-top: 3px;
	background: #fff;
	transition: .4s;
}

.search-area .searchform input[type="text"] {
	border: none;
	height: 1.6em;
	width: 86%;
	outline: none;
}

.search-area .searchform input[type="text"]::placeholder {
	font-size: 13px;
}

.search-area .searchform input.search-icon {
	cursor: pointer;
	border: none;
	width: 16px;
	height: 16px;
	vertical-align: middle;
	text-align: left;
	margin: 0 auto;
	position: absolute;
	right: 11px;
	top: 7px;
	outline: none;
}

header .nav-drawer-search {
	max-width: 900px;
	margin: 40px auto -18px;
	padding-bottom: 30px;
	border-bottom: 1px solid #ddd;
}

header .nav-drawer-search .search-area {
	max-width: 180px;
	margin: 0 auto;
}

header .nav-drawer-search .search-area .searchform {
	border: 1px solid #fff;
}

@media screen and (max-width: 1499px) {
	header nav .search-area {
		margin-right: 30px;
	}
}

@media screen and (max-width: 959px) {
	header .nav-drawer-search {
		margin: 26px auto 0px;
		padding-bottom: 22px;
	}
	header .nav-drawer-search .search-area .searchform input[type="text"] {
		font-size: 14px;
		height: 1.5em;
	}
	.search-area .searchform input[type="text"]::placeholder {
		font-size: 14px;
	}
}

main.sub .content.successive {
	margin-top: 60px;
	padding-left: 0;
	padding-right: 0;
}

main.sub .content.successive .chairman {
	display: flex;
	justify-content: left;
	align-items: flex-start;
	flex-wrap: wrap;
	margin: 30px 0 0;
}

main.sub .content.successive .chairman > div {
	width: 16%;
	box-sizing: border-box;
	margin: 0 4% 46px 0;
}

main.sub .content.successive .chairman > div img {
	width: 100%;
	margin-bottom: 10px;
}

main.sub .content.successive .chairman > div span.name {
	font-weight: 500;
	line-height: 1.6;
	font-size: 16px;
	letter-spacing: 2px;
	display: block;
	margin-bottom: 4px;
	color: #333;
	border-bottom: 1px solid #aaa;
	padding-bottom: 4px;
}

main.sub .content.successive .chairman > div span.period {
	color: #555;
	font-weight: 400;
	line-height: 1.6;
	font-size: 14px;
	letter-spacing: 0.6px;
	display: block;
}

@media screen and (max-width: 999px) {
	main.sub .content.successive .chairman > div {
		width: 22%;
		margin: 0 4% 40px 0;
	}
	main.sub .content.successive .chairman > div:nth-child(4n) {
		margin-right: 0;
	}
}

@media screen and (max-width: 679px) {
	main.sub .content.successive .chairman > div {
		width: 46%;
		margin: 0 8% 38px 0;
	}
	main.sub .content.successive .chairman > div:nth-child(4n) {
		margin-right: 0;
	}
	main.sub .content.successive .chairman > div:nth-child(2n) {
		margin-right: 0;
	}
	main.sub .content.successive .chairman > div span.name {
		line-height: 1.5;
		font-size: 15px;
		letter-spacing: 1.2px;
	}
	main.sub .content.successive .chairman > div span.period {
		line-height: 1.5;
	}
}

section.top-news ul.date-none li a span.date {
	display: none;
}

section.top-news ul.date-none li a {
	padding-left: 20px;
	padding-right: 20px;
}

@media screen and (max-width: 799px) {
	section.top-news ul.date-none li a {
		padding-top: 12px;
	}
}

main.sub .content.successive .chairman > div img.monochrome {
	-webkit-filter: grayscale(100%) contrast(1.16);
	-ms-filter: grayscale(100%) contrast(1.16);
	-o-filter: grayscale(100%) contrast(1.16);
	filter: grayscale(100%) contrast(1.16);
}

main section.first-visual .first-photo .first-photo-wrap div.heart {
	display: block;
	max-width: 600px;
	width: 84%;
	height: 470px;
	position: absolute;
	z-index: 40;
	top: 19%;
    left: 50%;
    transform: translateX(-50%);
}

@media screen and (max-width: 1099px) {
	main section.first-visual div.copy {
		top: 12%;
	}
main section.first-visual .first-photo .first-photo-wrap div.heart {
	top: 26%;
	}
}

@media screen and (max-width: 999px) {
	main section.first-visual .first-photo .first-photo-wrap div.heart {
	max-width: 480px;
	width: 100%;
	height: 376px;
	top: 30%;
	}
}

@media screen and (max-width: 959px) {
	main section.first-visual div.copy {
		top: 20%;
	}
	main section.first-visual .motion-txt {
		background: rgba(255, 255, 255, 0.1);
	}
}

@media screen and (max-width: 699px) {
	main section.first-visual .first-photo .first-photo-wrap div.heart {
	max-width: 370px;
	height: 290px;
	top: 30%;
	}
}
@media screen and (max-width: 480px) {
	main section.first-visual div.copy {
		top: 15%;
	}
	main section.first-visual .first-photo .first-photo-wrap div.heart {
	max-width: 240px;
	height: 188px;
	top: 28%;
	}
}

main section.first-visual .first-photo .first-photo-wrap div.heart > img {
	display: block;
	box-sizing: border-box;
	image-rendering: -webkit-optimize-contrast;
	position: absolute;
	z-index: 50;
    opacity: 0;
	animation-fill-mode: forwards;
	animation-timing-function: ease-in;
	animation-duration: 0.8s;
	animation-name: tm-anime;
}
@keyframes tm-anime {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}

main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-1 {
	width: 11.5%;
	height: auto;
	top: 2%;
	left: 11%;
	animation-delay: 0.1s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-2 {
	width: 10%;
	height: auto;
	top: 11.5%;
	left: 1.5%;
	animation-delay: 3.3s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-3 {
	width: 11.2%;
	height: auto;
	top: 32%;
	left: 3.7%;
	animation-delay: 2.3s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-4 {
	width: 11%;
	height: auto;
	top: 52%;
	left: 4.5%;
	animation-delay: 0.3s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-5 {
	width: 9.2%;
	height: auto;
	top: 15.5%;
	left: 14.5%;
	animation-delay: 1.5s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-6 {
	width: 10.6%;
	height: auto;
	top: 28%;
	left: 19%;
	animation-delay: 3.1s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-7 {
	width: 11.6%;
	height: auto;
	top: 46.2%;
	left: 18%;
	animation-delay: 1.3s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-8 {
	width: 11%;
	height: auto;
	top: 63%;
	left: 18.6%;
	animation-delay: 1.7s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-9 {
	width: 7.3%;
	height: auto;
	top: 12%;
	left: 28%;
	animation-delay: 2.5s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-10 {
	width: 7.7%;
	height: auto;
	top: 29.8%;
	left: 32.8%;
	animation-delay: 0.9s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-11 {
	width: 31.1%;
	height: auto;
	top: 43.7%;
	left: 31.7%;
	animation-delay: 3.9s;
	animation-duration: 1.0s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-12 {
	width: 6.9%;
	height: auto;
	top: 77.7%;
	left: 32.8%;
	animation-delay: 0.7s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-13 {
	width: 11.4%;
	height: auto;
	top: 20.8%;
	left: 41.7%;
	animation-delay: 3.9s;
	animation-duration: 1.0s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-14 {
	width: 11.6%;
	height: auto;
	top: 77%;
	left: 41.7%;
	animation-delay: 2.9s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-15 {
	width: 7.4%;
	height: auto;
	top: 90.4%;
	left: 43.9%;
	animation-delay: 2.3s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-16 {
	width: 12.2%;
	height: auto;
	top: 10%;
	left: 59.5%;
	animation-delay: 0.5s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-17 {
	width: 14%;
	height: auto;
	top: 26%;
	left: 56.7%;
	animation-delay: 2.1s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-18 {
	width: 7.4%;
	height: auto;
	top: 77%;
	left: 55%;
	animation-delay: 1.9s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-19 {
	width: 9.2%;
	height: auto;
	top: 42%;
	left: 65.6%;
	animation-delay: 0.7s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-20 {
	width: 7.6%;
	height: auto;
	top: 54.8%;
	left: 62%;
	animation-delay: 2.9s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-21 {
	width: 12.5%;
	height: auto;
	top: 0%;
	left: 77.5%;
	animation-delay: 1.7s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-22 {
	width: 13.6%;
	height: auto;
	top: 16.8%;
	left: 74.2%;
	animation-delay: 2.9s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-23 {
	width: 11.4%;
	height: auto;
	top: 28.5%;
	left: 73.5%;
	animation-delay: 3.3s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-24 {
	width: 10%;
	height: auto;
	top: 48.2%;
	left: 78.6%;
	animation-delay: 2.1s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-25 {
	width: 12.5%;
	height: auto;
	top: 62.2%;
	left: 67.3%;
	animation-delay: 0.3s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-26 {
	width: 12.4%;
	height: auto;
	top: 15.4%;
	left: 86.5%;
	animation-delay: 1.1s;
}
main section.first-visual .first-photo .first-photo-wrap div.heart > img.tm-27 {
	width: 9%;
	height: auto;
	top: 33.5%;
	left: 87%;
	animation-delay: 3.1s;
}

@media screen and (max-width: 1099px) { /* 100周年記念事業の一覧ページ_タブレットより幅が狭い場合 */
	main.sub .content .subpage div.navigation ul.anniversary-list {
		flex-flow: column;
	}
	main.sub .content .subpage div.navigation ul.anniversary-list li {
		width: 100%;
		max-width: 500px;
		margin: 0 auto 20px;
	}
}

/* ときわ公園の画像を使用した際のレスポンシブ対応用 */
main section.first-visual .first-photo .first-photo-wrap img.photo {
	font-family: 'object-fit: cover; object-position: 12% 50%;';
	object-position: 12% 50%;
}



/* *************************************************************************************************
↓　2024.05 カスタマイズ
************************************************************************************************* */

main.sub .content div.reporting-file.no-icon > a::before {
	background-image: none;
}

/* 縦長の写真のための調整 */
main.sub .content .vertical-photo img {
	width: auto;
	max-width: 100%;
}

main.sub .content .subpage.about h3.registered-heading {
	font-size: 22px;
	font-weight: 500;
	line-height: 1.6;
	margin-top: 56px;
	margin-bottom: 42px;
	border-bottom: none;
	letter-spacing: 0;
	text-align: left;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 14px;
}
main.sub .content .subpage.about h3.registered-heading::after {
	height: 4px;
}
@media screen and (max-width: 959px) {
	main.sub .content .subpage.about h3.registered-heading {
		font-size: 20px;
		margin-top: 40px;
		margin-bottom: 40px;
	}
}


/* *************************************************************************************************
↓　.page-home-care
************************************************************************************************* */

main.sub.home-care {
	background: #faf8f5;
}

main.sub.home-care .content {
	background: transparent;
}

main.sub .content .page-home-care img {
	border-radius: 20px;
}

main.sub .content .page-home-care h3,
main.sub .content .page-home-care h4 {
	color: #3f342d;
}

main.sub .content .page-home-care p {
	color: #3f342d;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.8;
	text-align: left;
}

main.sub .content .page-home-care p,
main.sub .content .page-home-care li,
main.sub .content .page-home-care dt,
main.sub .content .page-home-care dd,
main.sub .content .page-home-care a {
	letter-spacing: 0.06em;
}


main.sub .content .page-home-care .about-us {
	margin: 56px auto 80px;
}

main.sub .content .page-home-care h3 {
	color: #3f342d;
	font-size: 28px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.4;
	text-align: left;
	padding-bottom: 0;
	margin-bottom: 32px;
}
main.sub .content .page-home-care h3::after {
	content: none;
}
main.sub .content .page-home-care p {
	color: #3f342d;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0.1em;
	line-height: 1.8;
	text-align: left;
}
main.sub .content .page-home-care .map-area {
	display: flex;
	justify-content: space-between;
}
main.sub .content .page-home-care .map-area img {
	width: 48%;
}

main.sub .content .page-home-care .internal-link-area {
	display: flex;
	justify-content: center;
	gap: 40px;
	margin: 80px auto 64px;
	align-items: inherit;
}

main.sub .content .page-home-care .internal-link-area a {
	display :block;
	width: 45%;
	color: #222;
	text-decoration: none;
	border: 2px solid #3f342d;
	border-radius: 64px;
	text-align: center;
	padding: 20px 0 20px 0;
	box-sizing: border-box;
	align-content: center;
	line-height: 1.5;
	font-size: 18px;
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}

main.sub .content .page-home-care .internal-link-area a span {
	position: relative;
	padding-right: 48px;
	display: inline-block;
}

main.sub .content .page-home-care .internal-link-area a span::after {
	content: "";
	position: absolute;
	background-image: url(/wp-content/uploads/icon-hc-1.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: right center;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	width: 26px;
	height: 26px;
	transition: .25s cubic-bezier(.4,.4,0,1);
}

main.sub .content .page-home-care .internal-link-area a.blue span::after {
	background-image: url(/wp-content/uploads/icon-hc-2.png);
}

main.sub .content .page-home-care .internal-link-area a:hover span::after {
	top: 60%;
	transform: translateY(-50%);
}

main.sub .content .page-home-care .content-area {
	padding: 64px 40px;
	border-radius: 24px;
	margin-bottom: 80px;
}

main.sub .content .page-home-care .content-area.orange {
	background: #faf8f5;
}

main.sub .content .page-home-care .content-area.gray {
	background: #f5f6f7;
}

main.sub .content .page-home-care .content-area .english-text {
	font-size: 14px;
	font-weight: 500;
	height: auto;
	letter-spacing: 0.05em;
	line-height: 1.4;
	text-align: left;
}

main.sub .content .page-home-care .content-area.orange .english-text {
	color: #f0813b;
}

main.sub .content .page-home-care .content-area.gray .english-text {
	color: #48a1ac;
}

main.sub .content .page-home-care .content-area h3 {
	color: #3f342d;
	font-size: 32px;
	font-weight: 700;
	height: auto;
	letter-spacing: 0.1em;
	line-height: 1.4;
	text-align: left;
}

main.sub .content .page-home-care .pic-and-text {
	margin: 40px auto 40px;
	border-bottom: 2px solid #fff;
	padding-bottom: 40px;
	display: flex;
	justify-content: space-between;
}

main.sub .content .page-home-care .pic-and-text .pic-box {
	width: 50%;
	padding-right: 64px;
}
main.sub .content .page-home-care .pic-and-text .text-box {
	width: 50%;
}

main.sub .content .page-home-care h4 {
	font-size: 24px;
	margin: 32px 0 24px;
	font-weight: 500;
	letter-spacing: 0.1em;
	padding: 0;
	line-height: 1.6;
	display: inline-block;
}

main.sub .content .page-home-care .content-area.gray h4.underline {
	border-bottom: 2px solid #48a1ac;
}

main.sub .content .page-home-care h4.underline {
	border-bottom: 2px solid #f0813b;
	padding: 0 0 6px 0;
	margin: 0 0 32px;
}


main.sub .content .page-home-care h4::before {
	content: none;
}


main.sub .content .page-home-care ul li {
	list-style: none;
	color: #3f342d;
	padding-left: 10px;
	font-weight: 500;
	margin-bottom: 4px;
	font-size: 16px;
}


main.sub .content .page-home-care ul.hc-riyou li {
	list-style: none;
	color: #3f342d;
	padding-left: 10px;
	font-weight: 500;
	margin-bottom: 8px;
	font-size: 18px;
	position: relative;
}

main.sub .content .page-home-care .content-area ul.hc-riyou li::before {
	content: "";
	position: absolute;
	background-image: url(/wp-content/uploads/icon-hc-riyou.png);
	background-repeat: no-repeat;
	background-size: contain;
	width: 22px;
	height: 22px;
	top: 5px;
	left: -24px;
}

main.sub .content .page-home-care .content-area.gray ul.hc-riyou li::before {
	background-image: url(/wp-content/uploads/icon-hc-riyou-blue.png);
}

main.sub .content .page-home-care .flex {
	margin: 0 auto 40px;
	display: flex;
	justify-content: space-between;
	align-items: inherit;
}

main.sub .content .page-home-care .flex dl.vertical {
	width: 48%;
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
}

main.sub .content .page-home-care .flex dl.vertical dt {
	background: #e9866f;
	padding: 32px 16px;
	width: 100%;
	color: #fff;
	font-weight: 600;
	text-align: center;
	font-size: 20px;
	letter-spacing: 0.1em;
}

main.sub .content .page-home-care .flex dl.vertical dt > span {
	position: relative;
}

main.sub .content .page-home-care .flex dl.vertical dt.pink {
	background: #e9866f;
}

main.sub .content .page-home-care .flex dl.vertical dt.beige {
	background: #ddaf70;
}

main.sub .content .page-home-care .flex dl.vertical dt span::before {
	content: '';
	position: absolute;
	background-image: url('/wp-content/uploads/icon-kango-1.png');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	width: 26px;
	height: 26px;
	left: -36px;
	top: 50%;
	transform: translateY(-50%);
}

main.sub .content .page-home-care .flex dl.vertical dt.beige span::before {
	background-image: url('/wp-content/uploads/icon-kango-2.png');
}

main.sub .content .page-home-care .flex dl.vertical dd {
	background: #fff;
	width: 100%;
	line-height: 1.6;
	margin-bottom: 8px;
}


main.sub .content .page-home-care .flex dl.vertical.circle-mark dd {
	padding: 0 0 0 32px;
	margin-left: 32px;
	position: relative;
}

main.sub .content .page-home-care .flex dl.vertical dd:first-of-type {
	margin-top: 32px;
}

main.sub .content .page-home-care .flex dl.vertical dd:last-of-type {
	margin-bottom: 32px;
}

main.sub .content .page-home-care .flex dl.vertical.circle-mark dd::before {
	content: "";
	position: absolute;
    display: block;
	background: #f0813b;
	border-radius: 50%;
	width: 8px;
	height: 8px;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

main.sub .content .page-home-care dl.horizontal {
	width: 100%;
	border-radius: 16px;
	overflow: hidden;
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	margin-bottom: 16px;
}

main.sub .content .page-home-care dl.horizontal dt {
	width: 30%;
	padding: 32px 16px;
	text-align: center;
	font-weight: 500;
	line-height: 1.6;
}

main.sub .content .page-home-care dl.horizontal dd {
	width: 70%;
	padding: 32px 16px;
	background: #fff;
	line-height: 1.6;
}

main.sub .content .page-home-care dl.horizontal dt:first-of-type {
	margin-bottom: 2px;
}

main.sub .content .page-home-care dl.horizontal dd:first-of-type {
	margin-bottom: 2px;
}

main.sub .content .page-home-care .content-area.orange dl.horizontal dt {
	background: #ffdcab;
}
main.sub .content .page-home-care .content-area.gray dl.horizontal dt {
	background: #5cc2cf;
	color: #fff;
}

main.sub .content .page-home-care p.indent {
	text-indent: -1em;
	padding-left: 1em;
	font-size: 15px;
}

main.sub .content .page-home-care dl.line {
	width: 100%;
	display: flex;
	justify-content: left;
	flex-wrap: wrap;
	margin-bottom: 64px;
}

main.sub .content .page-home-care dl.line dt {
	width: 17%;
	padding: 24px 16px;
	line-height: 1.6;
	border-bottom: 1px solid #ddd;
	color: #3f342d;
	font-weight: 500;
}

main.sub .content .page-home-care dl.line dd {
	width: 83%;
	padding: 24px 16px;
	line-height: 1.6;
	border-bottom: 1px solid #ddd;
	color: #3f342d;
}

main.sub .content .page-home-care .recruit-info dl.line dt {
	width: 20%;
}

main.sub .content .page-home-care .recruit-info dl.line dd {
	width: 80%;
}

main.sub .content .page-home-care dl.line dt:first-of-type {
	border-top: 1px solid #ddd;
}

main.sub .content .page-home-care dl.line dd:first-of-type {
	border-top: 1px solid #ddd;
}

main.sub .content .page-home-care .content-area.orange dl.line dt {
	color: #f0813b;
}

main.sub .content .page-home-care .content-area.gray dl.line dt {
	color: #48a1ac;
}

main.sub .content .page-home-care .file-area {
	display: flex;
	justify-content: center;
	margin-bottom: 24px;
	gap: 48px;
}

main.sub .content .page-home-care .file-area a {
	display: block;
	width: 280px;
	padding: 20px 12px;
	text-align: center;
	font-size: 16px;
	letter-spacing: 0.04em;
	background: #fff;
	border: 2px solid #eb4034;
	border-radius: 8px;
	color: #444;
	font-weight: 400;
	transition: .2s cubic-bezier(.4,.4,0,1);
	box-sizing: border-box;
}

main.sub .content .page-home-care .file-area a:hover {
	background: #fff3f2;
	color: #222;
}


main.sub .content .page-home-care .file-area a span {
	padding: 0 0 0 20px;
	position: relative;
}

main.sub .content .page-home-care .file-area a span::before {
	content: '';
	position: absolute;
	background-image: url('./images/pdf.png');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 22px;
	width: 22px;
	height: 22px;
	left: -18px;
	top: 2px;
}

main.sub .content .page-home-care .file-area a::after {
	content: none;
}

main.sub .content .page-home-care ul.list-type-2 {
	background: #fff;
	border-radius: 12px;
	padding: 20px;
}

main.sub .content .page-home-care ul.list-type-2 li {
	font-size: 16px;
	position: relative;
	padding-left: 32px;
	margin-left: 16px;
	margin-bottom: 8px;
}

main.sub .content .page-home-care ul.list-type-2 li::before {
	content: "";
	position: absolute;
    display: block;
	background: #5cc2cf;
	border-radius: 50%;
	width: 8px;
	height: 8px;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

main.sub .content .page-home-care .iframe-map.home-care {
	position: relative;
	width: 100%;
	padding-top: 38%;
	margin: 20px 0 64px;
}

main.sub .content .page-home-care dl.vertical.contact-box dt.kango {
	background: #f0813b;
}
main.sub .content .page-home-care dl.vertical.contact-box dt.kaigo {
	background: #5cc2cf;
}

main.sub .content .page-home-care dl.vertical.contact-box dd {
	text-align: center;
	font-size: 20px;
	letter-spacing: 0.1em;
	font-weight: 500;
}

main.sub .content .page-home-care a.about-recruit-button {
	align-content: center;
	align-items: center;
	background: #FFFFFF;
	border: 2px solid #f0813b;
	border-radius: 40px;
	padding: 28px 16px;
	color: #f0813b;
	font-size: 18px;
	font-weight: 600;
	width: 380px;
	display: block;
	text-align: center;
	box-sizing: border-box;
	margin: 40px auto 16px;
	transition: .25s cubic-bezier(.4,.4,0,1);
}

main.sub .content .page-home-care a.about-recruit-button:hover {
	background: #f0813b;
	border: 2px solid #f0813b;
	color: #fff;
}

main.sub .content .page-home-care .pic-and-text.border-none {
	border-bottom: none;
	padding-bottom: 0;
}

main.sub .content .page-home-care .wide-line-height {
	line-height: 2.2;
}

main.sub .content .page-home-care .wide-margin-bottom {
	margin-bottom: 80px;
}

main.sub .content .page-home-care h3.bold {
	font-size: 32px;
	font-weight: 600;
}

main.sub .content .page-home-care .content-area.recruit-info {
	background: #fff;
}

main.sub .content .page-home-care .content-area.recruit-info dl.line {
	margin-top: 64px;
}
main.sub .content .page-home-care .content-area.recruit-info dl.line dt {
	color: #3f342d;
	font-weight: 600;
	line-height: 1.8;
}

main.sub .content .page-home-care .content-area.recruit-info dl.line dd {
	line-height: 1.8;
}

main.sub .content .page-home-care .content-area.recruit-info a.to-entry-button {
	align-content: center;
	padding: 32px 40px;
	width: 60%;
	color: #fff;
	display: block;
	text-align: center;
	margin: 0 auto;
	border-radius: 40px;
	font-weight: 600;
	font-size: 18px;
	box-sizing: border-box;
	transition: .25s cubic-bezier(.4,.4,0,1);
}

main.sub .content .page-home-care .content-area.recruit-info.orange a.to-entry-button {
	background: #f0813b;
}

main.sub .content .page-home-care .content-area.recruit-info.blue a.to-entry-button {
	background: #5cc2cf;
}


main.sub .content .page-home-care .content-area.recruit-info a.to-entry-button:hover {
	transform: scale(1.02, 1.02);
}

main.sub .content .page-home-care .content-area.recruit-info.blue .english-text {
	color: #48a1ac;
}

main.sub .content .page-home-care .entry-form a {
	color: #3f342d;
	letter-spacing: 0.04em;
}

main.sub .content .page-home-care .contact.recruit {
	background: #f7f7f7;
	padding: 24px;
	border: 4px solid #eee;
	border-radius: 12px;
	margin-bottom: 80px;
}

main.sub .content .page-home-care .contact.recruit h3 {
	text-align: center;
	font-weight: 600;
	font-size: 32px;
	line-height: 1.6;
	border-bottom: 2px solid #fff;
	padding-bottom: 24px;
}

main.sub .content .page-home-care .contact.recruit dl dt {
	font-weight: 500;
	font-size: 16px;
}

main.sub .content .page-home-care .contact.recruit .required {
	background: #e9866f;
	padding: 1px 8px 1px;
	margin-left: 12px;
	border-radius: 12px;
}

main.sub .content .page-home-care .contact.recruit dl dd textarea,
main.sub .content .page-home-care .contact.recruit dl dd input {
	padding: 4px 8px;
	font-family: メイリオ, Meiryo, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', sans-serif;
	font-weight: 500;
	letter-spacing: 1px;
	font-size: 16px;
	box-sizing: border-box;
	border-radius: 6px;
	border: 2px solid #ccc;
	padding: 8px;
}

main.sub .content .page-home-care .contact.recruit dl dd input::placeholder {
	color: #777;
}

main.sub .content .page-home-care .contact.recruit input.submit-confirm {
	padding: 24px 4px;
	max-width: 360px;
	font-size: 16px;
	background: #01a3e1;
	border-radius: 40px;
}

main.sub .content .page-home-care .contact.recruit input.submit-confirm:hover {
	background: #018cbf;
}

main.sub .content .page-home-care a.go-back-previous-page {
	color: #666;
	font-weight: 400;
	margin-bottom: 8px;
	display: inline-block;
	line-height: 1.5;
	letter-spacing: 0;
}

main.sub .content .page-home-care .mw_wp_form_confirm .contact.recruit dl.dl-email_confirm {
	display: none;
}

@media screen and (max-width: 959px) {
	main.sub .content .page-home-care .content-area {
		padding: 48px 24px;
		margin-bottom: 48px;
	}
	main.sub .content .page-home-care .internal-link-area {
		gap: 32px;
		margin: 64px auto 48px;
	}
	main.sub .content .page-home-care .internal-link-area a {
		width: 46%;
		border-radius: 48px;
		padding: 16px 0 16px 0;
		height: 80px;
		font-size: 15px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	main.sub .content .page-home-care .pic-and-text .pic-box {
		width: 48%;
		padding-right: 40px;
	}
	main.sub .content .page-home-care .pic-and-text .text-box {
		width: 52%;
	}
	main.sub .content .page-home-care .pic-and-text {
		margin: 40px auto 24px;
		padding-bottom: 16px;
	}
	main.sub .content .page-home-care ul.hc-riyou li {
		font-size: 16px;
	}
	main.sub .content .page-home-care .content-area ul.hc-riyou li::before {
		width: 20px;
		height: 20px;
		top: 6px;
	}
	main.sub .content .page-home-care .flex dl.vertical.circle-mark dd {
		padding: 0 0 0 40px;
		margin-left: 0;
	}
	main.sub .content .page-home-care .flex dl.vertical.circle-mark dd::before {
		left: 16px;
	}
	main.sub .content .page-home-care h3 {
		font-size: 26px;
		letter-spacing: 0.06em;
	}
	main.sub .content .page-home-care .content-area h3 {
		font-size: 26px;
		letter-spacing: 0.06em;
	}
	main.sub .content .page-home-care h3.bold {
		font-size: 26px;
		letter-spacing: 0.06em;
	}
	main.sub .content .page-home-care h4 {
		font-size: 20px;
		margin: 24px 0 18px;
		letter-spacing: 0.06em;
	}
	main.sub .content .page-home-care h4.underline {
		margin: 0 0 24px;
	}
	main.sub .content .page-home-care .content-area .english-text {
		font-size: 12px;
	}
	main.sub .content .page-home-care .flex dl.vertical dt {
		padding: 24px 8px;
		font-size: 18px;
		letter-spacing: 0.06em;
	}
	main.sub .content .page-home-care dl.vertical.contact-box dd {
		font-size: 18px;
	}
	main.sub .content .page-home-care a.about-recruit-button {
		padding: 20px 8px;
		font-size: 16px;
		width: 80%;
		margin: 32px auto 8px;
	}
	main.sub .content .page-home-care dl.line dt {
		width: 20%;
		padding: 20px 12px;
	}
	main.sub .content .page-home-care dl.line dd {
		width: 80%;
		padding: 20px 12px;
	}
	main.sub .content .page-home-care .iframe-map.home-care {
		padding-top: 55%;
		margin: 20px 0 52px;
	}
	main.sub .content .page-home-care .content-area.recruit-info dl.line {
		margin-top: 48px;
	}
	main.sub .content .page-home-care .content-area.recruit-info a.to-entry-button {
		padding: 24px 24px;
		width: 360px;
		font-size: 16px;
	}
	main.sub .content .page-home-care .contact.recruit dl dd {
			width: 100%;
	}
	main.sub .content .page-home-care .contact.recruit dl dd textarea,
		main.sub .content .page-home-care .contact.recruit dl dd input {
		font-size: 15px;
	}
}


@media screen and (max-width: 600px) {
	main.sub .content .page-home-care .map-area {
		flex-direction: column;
		align-items: center;
		gap: 32px;
	}
	main.sub .content .page-home-care .map-area img {
		width: 100%;
	}
	main.sub .content .page-home-care .internal-link-area {
		margin: 64px auto 48px;
		flex-direction: column;
		align-items: center;
	}
	main.sub .content .page-home-care .internal-link-area a {
		padding: 12px 0 12px 0;
		height: 72px;
		width: 80%;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	main.sub .content .page-home-care .pic-and-text {
		margin: 40px auto 16px;
		padding-bottom: 8px;
		flex-direction: column;
	}
	main.sub .content .page-home-care .pic-and-text .pic-box {
		width: 100%;
		padding-right: 0;
		margin-bottom: 40px;
	}
	main.sub .content .page-home-care .pic-and-text .text-box {
		width: 100%;
	}
	main.sub .content .page-home-care .flex {
		flex-direction: column;
		gap: 40px;
	}
	main.sub .content .page-home-care .flex dl.vertical {
		width: 100%;
	}
	main.sub .content .page-home-care dl.horizontal dt {
		padding: 24px 16px;
		font-size: 15px;
	}
	main.sub .content .page-home-care dl.horizontal dd {
		padding: 24px 16px;
		font-size: 15px;
	}
	main.sub .content .page-home-care ul,
	main.sub .content .page-home-care ol {
		margin: 10px 0 30px 0px;
	}
	main.sub .content .page-home-care ul.hc-riyou,
	main.sub .content .page-home-care ol.hc-riyou {
		margin: 10px 0 30px 24px;
	}
	main.sub .content .page-home-care dl.line {
		margin-bottom: 48px;
	}
	main.sub .content .page-home-care dl.line dt {
		width: 30%;
	}
	main.sub .content .page-home-care dl.line dd {
		width: 70%;
	}
	main.sub .content .page-home-care .file-area {
		flex-direction: column;
		gap: 24px;
		align-items: center;
	}
	main.sub .content .page-home-care .file-area a {
		padding: 18px 12px;
		font-size: 15px;
	}
	main.sub .content .page-home-care .content-area .english-text {
		margin-bottom: 16px;
	}
	main.sub .content .page-home-care .recruit-info dl.line dt {
		width: 30%;
	}
	main.sub .content .page-home-care .recruit-info dl.line dd {
		width: 70%;
	}
	main.sub .content .page-home-care .contact.recruit h3 {
		font-size: 24px;
	}
}

@media screen and (min-width: 481px) {
	main.sub .content .page-home-care br.hc-for-sp {
		display: none;
	}
}

@media screen and (max-width: 480px) {
	main.sub .content .page-home-care p,
	main.sub .content .page-home-care li,
	main.sub .content .page-home-care dt,
	main.sub .content .page-home-care dd,
	main.sub .content .page-home-care a {
		letter-spacing: 0.02em;
	}
	main.sub .content .page-home-care .about-us {
		margin: 40px auto 64px;
	}
	main.sub .content .page-home-care h3 {
		font-size: 22px;
		margin-bottom: 16px;
		letter-spacing: 0.02em;
	}
	main.sub .content .page-home-care .internal-link-area a {
		padding: 12px 0 12px 0;
		height: 72px;
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	main.sub .content .page-home-care .content-area h3 {
		font-size: 22px;
	}
	main.sub .content .page-home-care ul.list-type-2 li {
		padding-left: 24px;
		margin-left: 0;
	}
	main.sub .content .page-home-care p.indent {
		line-height: 1.6;
	}
	main.sub .content .page-home-care a.about-recruit-button {
		width: 100%;
		margin: 24px auto 0;
		font-size: 15px;
	}
	main.sub .content .page-home-care .wide-line-height {
		line-height: 1.8;
	}
	main.sub .content .page-home-care h4 {
		margin: 20px 0 20px;
		letter-spacing: 0.02em;
	}
	main.sub .content .page-home-care h4.underline {
		margin: 0 0 20px;
	}
	main.sub .content .page-home-care .content-area {
		padding: 40px 20px;
	}
	main.sub .content .page-home-care .flex dl.vertical dt span::before {
		width: 22px;
		height: 22px;
	}
	main.sub .content .page-home-care dl.line dt {
		padding: 16px 6px;
		font-size: 15px;
		font-weight: 500;
	}
	main.sub .content .page-home-care dl.line dd {
		padding: 16px 6px;
		font-size: 15px;
	}
	main.sub .content .page-home-care .content-area.recruit-info dl.line dt {
		font-weight: 500;
	}
	main.sub .content .page-home-care .content-area.recruit-info dl.line dd {
		font-size: 15px;
		padding: 16px 6px;
	}
	main.sub .content .page-home-care .content-area.recruit-info a.to-entry-button {
		padding: 24px 12px;
		width: 100%;
		font-size: 15px;
	}
	main.sub .content .page-home-care a.go-back-previous-page {
		font-size: 15px;
	}
	main.sub .content .page-home-care h3.bold {
		font-size: 22px;
		letter-spacing: 0.02em;
	}
	main.sub .content .page-home-care .contact.recruit h3 {
		font-size: 22px;
	}
	main.sub .content .page-home-care .contact.recruit {
		padding: 16px 16px;
		border: 2px solid #eee;
	}
	main.sub .content .page-home-care .contact.recruit dl dt {
		padding: 20px 0 0 0;
	}
	main.sub .content .page-home-care .contact.recruit dl dd {
		padding: 16px 0 16px;
	}
	main.sub .content .page-home-care .contact.recruit input.submit-confirm {
		padding: 20px 4px;
		font-size: 15px;
		width: 100%;
	}
	main.sub .content .page-home-care .contact.recruit dl dd .mwform-tel-field input[type="text"],
	main.sub .content .page-home-care .contact.recruit dl dd .mwform-zip-field input[type="text"] {
		display: inline-block;
		width: 29% !important;
	}
	main.sub .content .page-home-care .contact.recruit dl dd input,
	main.sub .content .page-home-care .contact.recruit dl dd textarea {
		width: 100%;
	}
}