@charset "utf-8";

/*
----------------------------------------
1250
----------------------------------------
*/

@media screen and ( max-width: 1250px ) {

	header #font-size dt {
		display: none;
	}

	header .contact-btn {
		width: auto;
	}

	header .contact-btn a {
		letter-spacing: 0;
	}

	#main-contents {
		width: calc( 100% - 240px );
	}

	#sidebar {
		width: 240px;
	}

	.policy-box::before {
		width: 100%;
		height: 60vw;
	}

	.policy-box::after {
		display: none;
	}

	.policy-box .box {
		width: 100%;
		margin-top: 30vw;
		padding: 30px 15px;
	}

	.policy-box h2 {
		font-size: 3rem;
	}

	.diagnosis-list {
		padding: 0 20px;
	}

	.diagnosis-list .prev-btn,
	.diagnosis-list .next-btn {
		position: absolute;
		top: 50%;
		transform: translateY( -50% );
		width: 20px;
		z-index: 999;
		cursor: pointer;
	}

	.diagnosis-list .prev-btn {
		left: 0;
	}

	.diagnosis-list .next-btn {
		right: 0;
	}

	.contents-nav {
		padding: 20px 10px 0;
	}

	.contents-nav li {
		padding: 0 5px;
	}

	.contents-nav a {
		padding: 10px 35px 10px 15px;
	}

}


/*
----------------------------------------
1000
----------------------------------------
*/

@media screen and ( max-width: 1000px ) {

	body.fixed {
		position: fixed;
		overflow: hidden;
	}

	body.fixed #wrapper > header {
		top: -25px !important;
	}

	.heading-02 {
		font-size: 2.4rem;
		padding-bottom: 10px;
		border-bottom: solid 1px #ddeaf4;
	}

	.heading-02::before {
		display: none;
	}

	.heading-02 span {
		padding: 0;
	}

	#wrapper {
		padding-top: 100px;
	}

	#wrapper > header {
		padding: 0;
		background: #fff;
		position: fixed;
		top: 0;
		right: 0;
		left: 0;
		border-bottom: solid 1px #b2d0e7;
		z-index: 999999;
		transition: all .2s;
	}

	#wrapper > header.active {
		height: 100%;
	}

	#wrapper > header.fixed {
		position: fixed;
		top: -25px;
	}

	#wrapper > header.active.fixed {
		bottom: 0;
		height: auto;
	}

	#wrapper > header .wrap.flex {
		padding: 25px 0 0;
		height: 75px;
		flex-wrap: nowrap;
	}

	#identity {
		width: 50%;
		padding: 0;
	}

	#wrapper > header h1 {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		background: #eee;
		padding: 0 15px;
		height: 25px;
		line-height: 25px;
		margin: 0;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	#identity figure {
		padding: 10px 10px 0;
	}

	#identity figure img {
		max-width: 325px;
		height: auto;
	}

	header .nav-wrap {
		width: 50%;
		display: inline-block;
	}

	#font-size {
		display: none;
	}

	header .contact-btn {
		display: none;
	}

	#sp-btn {
		display: block;
	}

	#sp-btn .btn {
		display: block;
		width: 75px;
		height: 75px;
		background: #0063b1;
		color: #fff;
		font-size: 1.2rem;
		text-align: center;
		padding: 52px 5px 5px;
		box-sizing: border-box;
		cursor: pointer;
		position: relative;
	}

	#sp-btn .btn span {
		height: 3px;
		background: #fff;
		position: absolute;
		top: 20px;
		left: 32%;
		width: 36%;
		transition: all .2s;
	}

	#sp-btn .btn span:nth-child(2) {
		top: 30px;
	}

	#sp-btn .btn span:nth-child(3) {
		top: 40px;
	}

	header.active #sp-btn .btn span:nth-of-type(1) {
		-webkit-transform: translateY(10px) rotate(-45deg);
		transform: translateY(10px) rotate(-45deg);
	}

	header.active #sp-btn .btn span:nth-of-type(2) {
		opacity: 0;
	}

	header.active #sp-btn .btn span:nth-of-type(3) {
		-webkit-transform: translateY(-10px) rotate(45deg);
		transform: translateY(-10px) rotate(45deg);
	}

	#g-nav,
	#g-nav.fixed,
	#g-nav.fixed.active {
		position: absolute;
		top: 101px;
		right: 0;
		bottom: 0;
		left: 0;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
		background: #fff;
		opacity: 0;
		visibility: hidden;
		z-index: -1;
		transition: all .4s;
	}

	header.active #g-nav {
		bottom: 0 !important;
		opacity: 1 !important;
		visibility: visible !important;
		border-top: solid 5px #0063b1 !important;
		z-index: 99999 !important;
	}

	#g-nav > ul {
		padding-bottom: 60px !important;
	}

	#g-nav ul {
		margin: 0;
		flex-direction: column;
		text-align: left;
		background: #f9fbfd;
	}

	#g-nav ul li {
		border-bottom: solid 1px #c9deee;
	}

	#g-nav.fixed > ul > li.contact-btn {
		display: none;
	}

	#g-nav ul > li > a {
		padding: 20px 20px 20px 70px;
		font-size: 2rem;
	}

	#g-nav > ul > li > a::after {
		display: none;
	}

	#g-nav ul > li > a::before {
		content: url( ../img/common/arrow-01.png );
		position: absolute;
		right: 15px;
		top: 50%;
		transform: translateY( -50% );
		transition: all .2s;
	}

	#g-nav ul > li > a:hover::before {
		right: 10px;
	}

	#g-nav > ul > li.home-btn > a {
		background: url( ../img/common/icon-home.png ) 15px center no-repeat;
	}

	#g-nav > ul > li.first-btn > a {
		background: url( ../img/common/icon-first.png ) 15px center no-repeat;
	}

	#g-nav > ul > li.clinic-btn > a {
		background: url( ../img/common/icon-clinic.png ) 15px center no-repeat;
	}

	#g-nav > ul > li.info-btn > a {
		background: url( ../img/common/icon-info.png ) 15px center no-repeat;
	}

	#g-nav > ul > li.doctor-btn > a {
		background: url( ../img/common/icon-doctor.png ) 15px center no-repeat;
	}

	#g-nav > ul > li.access-btn > a {
		background: url( ../img/common/icon-access.png ) 15px center no-repeat;
	}

	#g-nav > ul > li.faq-btn > a {
		background: url( ../img/common/icon-faq.png ) 15px center no-repeat;
	}

	#g-nav > ul > li.recruit-btn > a {
		background: url( ../img/common/icon-recruit.png ) 15px center no-repeat;
	}

	#g-nav > ul > li.news-btn > a {
		background: url( ../img/common/icon-news.png ) 15px center no-repeat;
	}

	#g-nav ul ul {
		border: none;
		background: #fff;
		position: relative;
		left: 0;
		top: 0;
		opacity: 1;
		visibility: visible;
		z-index: 1;
		transform: translateX( 0 );
	}

	#g-nav ul li:hover ul {
		top: 100%;
		opacity: 1;
		z-index: 999999;
	}

	#g-nav ul ul li {
		border-bottom: none;
	}

	#g-nav ul ul a:hover {
		background: transparent;
	}

	#container {
		margin: 0;
	}

	#container > .wrap.flex {
		flex-direction: column;
	}

	#main-contents {
		width: 100%;
		padding: 0;
		margin-bottom: 40px;
	}

	#sidebar {
		width: 100%;
	}

	#sidebar .rank-post a {
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		align-items: center;
	}

	#sidebar .rank-post a figure {
		width: 30%;
		padding-right: 15px;
		box-sizing: border-box;
	}

	#sidebar .rank-post a .ttl {
		width: 70%;
		font-size: 1.8rem;
	}

	.main-img .wrap {
		padding: 100px 20px 80px;
	}

	.news-box .btn-02 {
		position: relative;
		top: 0;
		right: 0;
		text-align: center;
		margin-top: 20px;
	}

	#home .info-box.flex > div {
		padding: 300px 25px 25px;
	}

	.contents .heading-03 {
		min-width: 260px;
		padding: 15px;
		font-size: 2.4rem;
	}

	footer .content-box > .wrap {
		flex-direction: column;
		padding: 0 20px;
	}

	footer .address {
		padding: 0 20px;
	}

	footer .address figure {
		display: block;
		width: 100%;
	}

	footer .address .txt {
		width: 100%;
		padding: 0;
		margin-top: 20px;
	}

	footer .content-box address {
		padding-bottom: 20px;
		margin-bottom: 20px;
	}

	#bottom-fix {
		left: 0;
		right: 0;
		bottom: 0;
		overflow: auto;
	}

	#bottom-fix .flex {
		min-width: 500px;
		padding: 10px;
		box-sizing: border-box;
		background: rgba( 255,255,255,.85 );
		justify-content: space-between;
	}

	.contact-btn-sp,
	.medical-time-sp {
		display: block;
		width: calc( 50% - 35px );
		height: 50px;
		line-height: 50px;
		white-space: nowrap;
	}

	#page-top a {
		border-radius: 0;
		background: #0063b1 url( ../img/common/page-top.svg ) center center / 20px no-repeat;
	}

	#page-top a:hover {
		background: #0081e3 url( ../img/common/page-top.svg ) center center / 20px no-repeat;
	}

	.medical-time-sp a {
		display: block;
		background: #29b6f6 url( ../img/common/icon-medical-time-sp.png ) 15px center / 36px no-repeat;
		color: #fff;
		text-align: center;
		padding: 0 0 0 36px;
		box-sizing: border-box;
		transition: all .2s;
	}

	.medical-time-sp a:hover {
		background: #218fc2 url( ../img/common/icon-medical-time-sp.png ) 15px center / 36px no-repeat;
	}

	.contact-btn-sp a {
		display: block;
		background: #ffa816 url( ../img/common/icon-contact-sp.png ) 15px center / 36px no-repeat;
		color: #fff;
		text-align: center;
		padding: 0 0 0 36px;
		box-sizing: border-box;
		transition: all .2s;
	}

	.contact-btn-sp a:hover {
		background: #d99014 url( ../img/common/icon-contact-sp.png ) 15px center / 36px no-repeat;
	}

	/* pediatric-ophthalmology */

	#pediatric-ophthalmology .flex.ttl {
		flex-direction: column;
	}

	#pediatric-ophthalmology .flex.ttl .txt {
		width: 100%;
		padding-right: 0;
		margin-bottom: 20px;
	}

	#pediatric-ophthalmology .flex.ttl figure {
		width: 100%;
	}

	#pediatric-ophthalmology .notice .flex figure {
		width: 100%;
		text-align: center;
		padding: 0;
		margin-bottom: 10px;
	}

	#pediatric-ophthalmology .notice .flex .txt {
		width: 100%;
	}


}


/*
----------------------------------------
750
----------------------------------------
*/

@media screen and ( max-width: 750px ) {

	html #wpadminbar {
		display: none;
	}

	.pc-none {
		display: block;
	}

	.sp-none {
		display: none;
	}

	body {
		font-size: 2.3rem;
		min-width: 0;
	}

	#identity {
		width: auto;
		margin-right: auto;
	}

	header .nav-wrap {
		width: auto;
	}

	header .tel {
		display: none;
	}

	.main-img {
		background: url( ../img/home/main-img-sp.png ) center center / cover no-repeat;
	}

	.main-img h1 {
		font-size: 3.6rem;
	}

	.main-img .read {
		font-size: 1.5rem;
	}

	#home #container {
		margin: 20px 0;
	}

	#home #contents section {
		padding: 30px 0;
	}

	.contents .heading-01 {
		font-size: 2.4rem;
		letter-spacing: 0;
		text-align: center;
	}

	.news-post {
		padding: 15px;
	}

	.news-post .ttl {
		width: 100%;
	}

	.contents .heading-02 {
		font-size: 2.6rem;
		margin-bottom: 20px;
	}

	.about-list.flex {
		flex-direction: column;
	}

	.about-list .about {
		width: 100%;
		margin-bottom: 40px;
	}

	.about-list .about figure {
		width: 100%;
		margin-bottom: 10px;
	}

	.about-list .about .txt {
		width: 100%;
		padding: 0;
	}

	.about-list .about h3,
	.about-list .about .btn-02 {
		text-align: center;
	}

	.about-list .about .btn-02 a {
		max-width: 300px;
		margin: 15px auto 0;
	}

	.bnr-clinic {
		margin: 0;
	}

	.bnr-clinic .flex {
		flex-direction: column;
	}

	.bnr-clinic .btn-03 {
		width: 100%;
	}

	.bnr-clinic .name {
		margin-bottom: 10px;
		font-size: 1.8rem;
	}

	.bnr-clinic .name span {
		font-size: 2.2rem;
		margin-left: 5px;
	}

	.bnr-clinic .name br {
		display: none;
	}

	.bnr-clinic {
		padding: 20px 30px 20px 130px;
	}

	#home .other.flex {
		flex-direction: column;
	}

	#home .other.flex > div {
		width: 100%;
		margin-top: 20px;
	}

	.diagnosis-list {
		margin-bottom: 10px;
	}

	.diagnosis-box .read {
		margin-bottom: 30px;
	}

	#home #contents .info-box {
		flex-direction: column;
	}

	#home .info-box.flex > div {
		width: 100%;
	}

	#home .info-box.flex .clinic-box::after {
		display: none;
	}

	#home .info-box.flex > div::before {
		top: 110px;
		height: 200px;
	}

	.contents .heading-03 {
		position: absolute;
		top: 30px;
		right: 20%;
		left: 20%;
	}

	#home .info-box.flex > div {
		padding: 330px 20px 20px;
	}

	#home #contents .recruit-box {
		background: none;
		padding: 180px 0 0;
		position: relative;
	}

	#home #contents .recruit-box::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 160px;
		background: url( ../img/home/bg-recruit-sp.png ) center center / 100% no-repeat;
	}

	#home .recruit-box h2 {
		font-size: 2.4rem;
	}

	#home .recruit-box p {
		text-align: left;
	}

	#home .recruit-box p.btn-02 {
		text-align: center;
	}

	.table-01 th,
	.table-01 td {
		padding: 10px 5px;
		box-sizing: border-box;
	}

	footer .bnr-set {
		padding: 15px;
		margin-top: 40px;
	}

	footer .content-box > .wrap {
		padding: 0;
	}

	footer .datetime-box {
		padding: 30px 0;
	}

	footer .datetime {
		padding: 0;
		margin: 20px 0;
		background: transparent;
	}

	footer .datetime thead {
		border: solid 3px #0063b1;
		border-bottom: 0;
	}

	footer .datetime tbody {
		border: solid 3px #0063b1;
		border-top: 0;
	}

	footer .datetime th:first-child {
		width: 33%;
	}

	footer .datetime th, footer .datetime td {
		width: 11%;
		vertical-align: middle;
	}

	footer .am, footer .pm {
		margin: 0 auto;
		padding: 0 40px;
	}

	footer .content-box {
		padding: 20px 0;
	}

	footer .content-box #map {
		width: 90%;
		height: 300px;
		margin: 0 auto;
	}

	footer .content-box address {
		text-align: center;
		border: none;
		padding: 0;
	}

	footer .content-box .flex {
		flex-direction: column;
	}

	footer .sitemap.flex > ul {
		width: 100%;
	}

	footer .sitemap.flex > .medical-menu {
		width: 100%;
	}

	footer .medical-cat {
		width: 100%;
	}

	footer .medical-cat > li > a {
		display: block;
		margin: 0;
		font-size: 1.8rem;
		padding: 20px 20px 20px 40px;
		border-top: solid 1px #c9deee;
		background: url( ../img/common/arrow-01.png ) right 26px center no-repeat;
	}

	footer .sitemap .parent {
		display: block;
		padding: 20px;
		border-top: solid 1px #c9deee;
		font-size: 2rem;
	}

	footer .sitemap .parent::before {
		width: 20px;
		height: 20px;
		top: 50%;
		right: 20px;
		left: auto;
		transform: translateY( -50% );
	}

	footer .sitemap ul ul {
		margin: 0;
	}

	footer .sitemap ul ul a {
		display: block;
		font-size: 1.8rem;
		color: #0063b1;
		padding: 20px 20px 20px 40px;
		border-top: solid 1px #c9deee;
		background: #fff url( ../img/common/arrow-01.png ) right 26px center no-repeat;
	}

	footer .sitemap .page-group {
		margin: 0;
		padding: 10px;
		text-align: center;
		background: #05b7f2;
		color: #fff;
		font-size: 1.8rem;
	}

	#page-top {
		right: 20px;
		bottom: 20px;
	}

	/* page */

	#page-ttl {
		padding: 40px 10px;
	}

	.page #main-contents section {
		padding-bottom: 20px;
	}

	/* first */

	#first .sec-01 .case-list li {
		font-size: 1.8rem;
		padding: 5px 0 5px 25px;
		background: url( ../img/common/icon-check.svg ) left 8px / 18px no-repeat;
	}

	#main-contents .bnr-02 > a {
		width: 100%;
		margin-top: 20px;
	}

	#main-contents .bnr-02 > a:first-child {
		margin-top: 0;
	}

	.mono {
		padding: 20px;
	}

	.mono .flex {
		justify-content: center;
	}

	.mono .flex ul {
		width: 100%;
	}

	.mono .flex li {
		margin: 5px 0;
	}

	#main-contents .dl-bnr p {
		margin: 15px 0 0;
	}

	#first .flow {
		padding: 20px;
	}

	#first .flow figure {
		width: 100%;
		padding-top: 0;
	}

	#first .flow figure + .txt {
		width: 100%;
		padding-left: 0;
	}

	#first .flow .num {
		left: 10px;
		top: 10px;
	}

	/* clinic */

	#clinic .point-list li {
		width: 100%;
		margin-bottom: 20px;
	}

	#clinic .border-box {
		padding: 30px 15px 20px;
	}

	#clinic .border-box figure {
		width: 100%;
	}

	#clinic .border-box .txt {
		width: 100%;
		padding: 10px 0 0 0;
	}

	#clinic .clinic-info .flex {
		margin-bottom: 20px;
	}

	#clinic .clinic-info figure {
		width: 100%;
		padding: 0 !important;
		margin-bottom: 10px;
		text-align: center;
	}

	#clinic .clinic-info .txt {
		width: 100%;
	}

	#main-contents .bnr {
		margin: 20px 0;
	}

	/* philosophy */

	.page .main-txt p {
		text-align: left;
	}

	.philosophy .flex figure {
		width: 100%;
		text-align: center;
		padding: 0;
		margin-bottom: 10px;
	}

	.philosophy .flex .txt {
		width: 100%;
	}

	.contents-nav {
		padding: 20px 10px 0;
	}

	.contents-nav li {
		padding: 0 5px;
	}

	.contents-nav a {
		padding: 10px;
	}

	#efforts .contents-nav li {
		width: 100%;
		margin-bottom: 10px;
	}

	#efforts .read.flex figure {
		width: 100%;
		text-align: center;
		padding: 0;
		margin-bottom: 20px;
	}

	#efforts .read.flex .txt {
		width: 100%;
	}

	/* machine */

	#machine .machine-cat ul.flex li {
		width: 100%;
	}

	#machine .machine-cat ul.flex li br {
		display: none;
	}

	#machine .machine-list figure {
		width: 100%;
		padding-right: 0;
		margin-bottom: 10px;
	}

	#machine .machine-list figure + .txt {
		width: 100%;
	}

	/* blog */

	#blog #main-contents {
		margin-bottom: 0;
	}

	#blog.archive .post-list .post {
		width: 100%;
	}

	/* faq */

	.faq-menu .faq-cat {
		width: 100%;
	}

	#recruit .sec-01 .cont {
		margin-bottom: 10px;
	}

	#recruit .sec-01 .flex figure {
		width: 100%;
		margin-bottom: 10px;
	}

	#recruit .sec-01 .flex .txt {
		width: 100%;
	}

	#recruit .sec-02 .flex {
		justify-content: center;
	}

	#recruit .sec-02 .flex li {
		width: 33.3333%;
		padding: 0 5px 10px;
		box-sizing: border-box;
	}

	#recruit .sec-02 .flex li span {
		font-size: 1.4rem;
	}

	#recruit .sec-03 .flex figure {
		width: 100%;
		padding: 0;
	}

	#recruit .sec-03 .flex .txt {
		width: 100%;
		margin-top: 30px;
	}

	#recruit .sec-03 .flex .txt::before,
	#recruit .sec-03 .flex .txt::after {
		border: solid 15px transparent;
		border-bottom: solid 15px #d9e8f3;
		top: -30px;
		left: 50%;
		transform: translate( -50%, 0 );
	}

	#recruit .sec-03 .flex .txt::after {
		top: -28px;
		border-bottom: solid 15px #f9fbfd;
	}

	#recruit .sec-03 .flex:nth-child( odd ) .txt::before,
	#recruit .sec-03 .flex:nth-child( odd ) .txt::after {
		border-left: solid 15px transparent;
		left: 50%;
		right: auto;
	}

	#recruit .sec-04 .flex .cont {
		width: 48%;
	}

	#recruit .sec-05 .flow {
		width: 100%;
		-js-display: flex;
		display: -ms-flex;
		display: -webkit-flex;
		display: flex;
		position: relative;
		padding-top: 20px;
		margin-top: 20px;
		position: relative;
	}

	#recruit .sec-05 .flow:first-child {
		padding-top: 0;
		margin-top: 0;
	}

	#recruit .sec-05 .flow::after {
		content: url( ../img/common/arrow-04.png );
		position: absolute;
		left: 50%;
		top: 0;
		transform: translate( -50%, -50% );
	}

	#recruit .sec-05 .flow:first-child::after {
		display: none;
	}

	#recruit .sec-05 .flow figure {
		width: 40%;
		padding: 0 20px;
		box-sizing: border-box;
	}

	#recruit .sec-05 .flow figure::before {
		display: none;
	}

	#recruit .sec-05 .flow .txt {
		width: 60%;
	}

	#recruit .sec-05 .flow h3 {
		margin: 0 0 5px;
		text-align: left;
	}

	.tab-menu li a {
		letter-spacing: 0;
		font-size: 1.4rem;
		white-space: nowrap;
	}

	/* information */

	#information .medical-list.flex {
		padding: 15px 5px 0;
	}

	#information .medical {
		width: 50%;
		padding: 0 10px;
	}

	#information .yoyaku-box.flex {
		flex-direction: column;
	}

	#information .yoyaku {
		width: 100%;
	}

	.flow.num-list li {
		width: 45% !important;
	}

	.flow.num-list li figure::before {
		left: -15%;
	}

	.flow.num-list li:nth-child( 2n + 1 ) figure::before {
		display: none;
	}

	.flow.num-list li:nth-child( 3n + 1 ) figure::before {
		display: block !important;
	}

	#information .other {
		flex-direction: column;
	}

	#information .other > div {
		width: 100%;
		margin-bottom: 20px;
	}

	#information .other img {
		width: 100%;
	}

	/* medical */

	#medical .post-list .post {
		width: 100%;
	}

	#medical #main-contents section {
		margin-bottom: 0;
	}

	#medical .inspection figure,
	#medical .measures figure {
		width: 100%;
		padding: 0 !important;
		text-align: center !important;
		margin-bottom: 10px;
	}

	#medical .inspection figure + .txt,
	#medical .measures figure + .txt {
		width: 100%;
	}

	.kanren-post {
		width: 50%;
	}

.author .img {
	width: 110px;
}

.author .txtbox {
	flex: 1;
	padding: 0 0 0 15px;
}

.author .author-ttl {
	font-size: 1.7rem;
	padding: 0 0 .5rem;
}

.author .txt {
	line-height: 2;
}


	/* elation */

	#relation .point {
		width: calc( 100% - 4px );
		margin-bottom: 20px;
	}

	#relation .flow-list .flow {
		width: 100%;
	}

	#relation .flow .num {
		top: 60px;
		left: calc( 50% - 115px );
	}

	#relation .flow figure {
		text-align: center;
		padding-top: 40px;
		margin-top: 10px;
	}

	#relation .flow:first-child figure {
		padding-top: 0;
		margin-top: 0;
	}

	#relation .flow figure::after {
		content: url( ../img/common/arrow-04.png );
		left: 50%;
		top: 0;
		transform: translate( -50%, -50% );
	}

	.relation-list .flex li {
		width: calc( 50% - 22px );
	}

	/* doctor */

	#doctor .outline figure {
		width: 100%;
		text-align: center;
		padding: 0;
		margin-bottom: 20px;
	}

	#doctor .outline .txt {
		width: auto;
		margin: 0 auto;
	}

	.outline dl.flex dt {
		width: 30%;
	}

	.outline dl.flex dd {
		width: 70%;
	}

	/* doctor */

	#doctor .sec-01 > figure {
		margin-bottom: 20px;
	}

	#doctor .bg-box ul {
		width: 100%;
	}

	#doctor .post-list .post {
		width: 100%;
		margin-bottom: 20px;
	}

	#doctor .post-list .txt {
		padding: 20px;
	}

	/* report */

	.society-list li .date {
		display: block;
		padding: 0;
	}

	.report-list .report figure {
		width: 100%;
		text-align: center;
		margin-bottom: 10px;
	}

	.report-list .report .txt {
		width: 100%;
	}

	.report-list .report .btn-02 {
		text-align: center;
	}

	/* access */

	#access #main-contents .address figure {
		width: 100%;
		text-align: center;
		margin-bottom: 20px;
	}

	#access #main-contents .address .txt {
		width: 100%;
		text-align: center;
	}

	#train .flow.num-list li:nth-child( 3n + 1 ) figure::before {
		display: none !important;
	}

	#train .flow.num-list li:nth-child( even ) figure::before {
		display: block !important;
	}

	/* pediatric-ophthalmology */

	#pediatric-ophthalmology .bg-box h3 {
		font-size: 2rem;
	}

	#pediatric-ophthalmology .bg-box .flex > div {
		width: 100%;
		margin-bottom: 20px;
	}

	#pediatric-ophthalmology .content-wrap .flex figure {
		width: 100%;
		text-align: center;
		padding: 0;
		margin-bottom: 10px;
	}

	#pediatric-ophthalmology .content-wrap .flex .txt {
		width: 100%;
	}

}
