/* CSS Document */

@media screen and (max-width:640px) {
	body {
		font-size: 14px;
	}

	body, #mainvisual .inner, header, footer {
		min-width: 100%;
	}

	*, *:before, *:after {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		box-sizing: border-box;
	}

	/*============================================================================

	header

	============================================================================*/

	header {
		display: none;
	}

	/*============================================================================

	nav

	============================================================================*/

	.fixed {
		position: fixed;
		width: 100%;
	}

	.fixed li a {}

	.fixed li {}

	.sp_navi_btn_area {
		position: absolute;
		width: calc(100% - 66px);
		z-index: 1;
		margin-left: 4px;
	}

	.sp_navi_btn_area li {
		display: block;
		width: calc(100% / 2) !important;
		float: left;
		text-align: center;
	}

	.sp_navi_btn_area li a {
		display: block;
		color: #88b355;
		height: 54px;
		line-height: 54px;
		margin: 4px;
		border-radius: 5px;
		font-family: "オーブ", "Orb", "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
		font-size: 4vw;
		background-image: url("../images/bg_washi_green.png");
		background-repeat: repeat;
		font-weight: 400;
	}

	.sp_navi_btn_area li svg {
		position: relative;
		font-size: 1.1em !important;
		top: 0px;
		left: -5px;
		color: #88b355;
	}

	.sp_navi_btn_area li i {
		margin-right: 5px;
		color: #88b355;
	}

	.sp_navi_btn_area li:nth-child(2) i {
		font-size: 1.2em !important;
	}

	nav {
		display: none;
	}

	.sp_navi {
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		/*height: 100%;*/
		font-size: 18px;
		font-weight: bold;
		z-index: 9998;
		height: 124px;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		overflow-x: hidden;
		margin-bottom: 30px;
	}

	.sp_navi_fixed_area {
		z-index: 999;
	}

	.sp_navi .header_logo {
		position: relative;
		top: 0;
		display: block;
		width: 100%;
		text-align: left;
		height: 62px;
		background: #fff;
	}

	.sp_navi .header_logo span, .sp_navi .header_logo img {
		display: block;
		margin: auto;
		padding-top: 5px;
	}

	.sp_navi .header_logo img {
		width: 256px;
		height: 55px;
		z-index: 9999;
		position: relative;
	}

	.sp_navi dl {
		background-color: rgba(255, 255, 255, 1.0);
	}

	.sp_navi dl dt {
		position: relative;
		height: 62px;
		font-weight: bold;
		padding: 0 4%;
		font-size: 18px;
		display: block;
		color: #fff;
		line-height: 2;
	}

	.sp_navi dl dt i {
		position: relative;
		top: 20px;
		font-size: 9px;
		font-style: normal;
		margin-right: 2%;
	}

	.sp_navi_list {
		display: none;
	}

	.sp_navi ul {
		/*padding:4% 2% 4% 8%;*/
	}

	.sp_navi_list li {
		display: block;
		width: 100%;
		float: left;
		line-height: 1.4;
		font-size: 15px;
		font-weight: normal;
	}

	.sp_navi_list li i {
		margin-right: 4%;
		color: #ba9275;
		font-size: 11px;
		vertical-align: middle;
		position: relative;
		top: -1px;
		left: -6px;
	}

	.sp_navi_list i.fa-facebook-square, .sp_navi ul li i.fa-home {
		font-size: 16px;
	}

	.sp_navi_list li a, .sp_navi_parent>div, .sp_navi_list li .no-link, .sp_navi_list li .no-link02 {
		display: block;
		position: relative;
		vertical-align: middle;
		width: 100%;
		height: 50px;
		padding-left: 7%;
		color: #88b355;
		text-decoration: none;
		font-size: 1.1em;
		background-image: url(../images/bg_washi_green.png);
		background-repeat: repeat;
		border-bottom: solid 1px #FFF;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		line-height: 50px;
	}

	.sp_navi_children li a, .sp_navi_children li .no-link {
		color: #e6a1b0;
		background-image: url("../images/bg_washi_pink.png");
		background-repeat: repeat;
	}

	.sp_navi_parent>div::after {
		position: absolute;
		right: 17px;
		font-family: 'Font Awesome 5 free';
		font-weight: bold;
		content: "\f067";
		font-size: 1.0em;
	}

	.sp_navi_parent_active>div::after {
		position: absolute;
		right: 17px;
		font-family: 'Font Awesome 5 free';
		content: "\f068" !important;
		font-weight: bold;
		font-size: 1.0em;
	}

	.sp_navi_list li a::after {
		position: absolute;
		right: 20px;
		content: ">";
	}

	.sp_navi_children li .no-link .small, .sp_navi_list li .no-link02 .small {
		font-size: 14px;
	}

	/*ボタンの動き*/
	.sp_navi dt a {
		display: block;
		width: 62px;
		height: 62px;
		position: absolute;
		/*top:5px;*/
		right: -5px;
		z-index: 9999999;
		text-align: center;
		background-color: #88b355;
	}

	.sp_navi dt a i {
		position: relative;
		top: 25px;
		font-size: 9px;
		font-style: normal;
		color: #FFF;
		font-weight: 600;
	}

	.sp_navi dt a span {
		display: block;
		background: #FFF;
		width: 33px;
		height: 2px;
		position: absolute;
		left: 12px;
		transition: all 0.4s;
		-webkit-transition: all 0.4s;
		-moz-transition: all 0.4s;
	}

	.sp_navi dt a span:nth-child(1) {
		top: 14px;
	}

	.sp_navi dt a span:nth-child(2) {
		margin-top: -8px;
		top: 50%;
	}

	.sp_navi dt a span:nth-child(3) {
		bottom: 29px;
	}

	.sp_navi dt a i {
		position: relative;
		left: -2px;
		bottom: 6px;
	}

	.sp_navi dt a.active {
		background: #88b355;
	}

	.sp_navi dt a.active i {
		color: #fff;
	}

	.sp_navi dt a.active span {
		background: #fff;
	}

	.sp_navi dt a.active span:nth-child(1) {
		-webkit-transform: translateY(8px) rotate(225deg);
		-moz-transform: translateY(8px) rotate(225deg);
		-ms-transform: translateY(8px) rotate(225deg);
		transform: translateY(8px) rotate(225deg);
	}

	.sp_navi dt a.active span:nth-child(2) {
		opacity: 0;
	}

	.sp_navi dt a.active span:nth-child(3) {
		-webkit-transform: translateY(-8px) rotate(-225deg);
		-moz-transform: translateY(-8px) rotate(-225deg);
		-ms-transform: translateY(-8px) rotate(-225deg);
		transform: translateY(-8px) rotate(-225deg);
	}

	/*============================================================================

	#mainvisual

	============================================================================*/

	#mainvisual {
		background-position: center;
		background-attachment: scroll;
		height: 240px;
		margin-top: 134px;
	}

	.mainvisual_img {
		left: 0;
		top: 0;
		width: 90%;
		max-height: 600px;
		border-radius: 0 40px 40px 0;
	}

	.mainvisual_img_illust {
		top: 0;
		width: 100%;
		height: 210px;
		z-index: 5;
	}

	.mainvisual_img_illust li {
		width: 30%;
	}

	.mainvisual_img_illust01 {
		top: 40px;
		right: 0;
		width: 100% !important;
	}

	.mainvisual_img_illust02 {
		top: 254px;
		right: 0px;
		width: 40% !important;
	}

	.mainvisual_content_wrap .slick-list {
		overflow: inherit;
	}


	#mainvisual .inner {
		width: auto;
		height: inherit;
	}

	#mainvisual .inner:before {
		top: 50px;
		left: 149px;
		width: 5000px;
		height: 260px;
	}

	/* 下層ページヘッドライン */
	#mainvisual h2 {
		font-size: 22px;
	}

	/* トップページキャッチフレーズ */
	.mainvisual_catch {
		position: absolute;
		top: 160px;
		width: 90%;
	}

	.mainvisual_catch h2 {
		margin-bottom: 10px;
		font-size: 22px;
	}

	.mainvisual_catch p {
		font-size: 15px;
	}

	.mainvisual_open {
		right: 10px;
		bottom: 10px;
		width: 150px;
	}

	.mainvisual_content_wrap .mainvisual_catch p img {
		margin: 0 10px 0 auto;
	}

	.mainvisual_under_img {
		position: absolute;
		left: 0;
		top: 0;
		width: 90%;
		height: 240px;
	}

	.mainvisual_headline {
		padding-bottom: 2px;
		padding-right: 10px;
	}




	/*============================================================================

	#contents

	============================================================================*/

	.box1 {
		width: auto;
		margin: 0 6% 80px;
	}

	.box2 {
		width: auto;
		margin: 0 6% 80px;
	}

	.box3 {
		width: auto;
		margin: 0 6% 80px;
	}

	#contents {
		width: auto;
	}

	#contents_left {
		width: auto;
		float: none;
		margin-right: 0;
	}

	#contents_right {
		width: auto;
		margin-bottom: 200px;
		padding: 0 6%;
		float: none;
	}

	.right_medical:last-child:before {
		bottom: -133px;
		right: -30px;
		width: 137px;
		height: 220px;
	}

	#container {
		padding-top: 20px;
		padding-bottom: 100px;
	}



	/*============================================================================

	footer

	============================================================================*/

	.footer_info .inner {
		display: block;
		width: auto;
		padding: 40px 6%;
	}

	.footer_info:before {
		top: -240px;
		left: 0;
		width: 141px;
		height: 257px;
	}

	.footer_info:after {
		top: -206px;
		right: 0;
		width: 95px;
		height: 254px;
	}

	.footer_info_overview_logo {
		width: 82%;
		height: auto;
		margin: 46px auto 9px;
	}

	.footer_left {
		width: 100%;
		padding: 0px 0px;
	}

	.footer_info_overview_item {
		flex-direction: column-reverse;
	}

	.footer_info_overview_item .footer-sns {
		border: 1px solid #88b355;
		border-radius: 5px;
		font-family: "オーブ", "Orb", "游ゴシック体", "Yu Gothic", YuGothic, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
		letter-spacing: 0.1em;
		font-size: 28px;
	}

	.footer_info_overview_item .footer-sns a {
		display: flex;
		align-items: center;
		gap: 15px;
		padding: 0px 52px;
		color: #444;
	}

	.footer_info_overview_item .footer-sns a img {
		width: 30px;
	}

	.footer_info_overview_tel {
		display: block;
		padding: 15px 45px 20px 60px;
		text-align: center;
	}

	.footer_info_overview_tel span {
		display: block;
		margin-bottom: 4px;
		padding-right: 0;
		letter-spacing: 1px;
		font-size: 16px;
		text-align: center;
	}


	.footer_info dl {
		display: block;
		float: none;
		width: auto;
		padding: 0 6%;
	}

	.footer_info dl dt {
		float: none;
		width: 100%;
		text-align: center;
		margin: 0 auto 9px;
	}

	.footer_info_logo, .footer_info_logo img {
		width: 222px;
		height: 148px;
	}

	.footer_info dl dd {
		float: none;
		margin-left: 0;
		display: table;
		width: 100%;
		min-height: auto;
		margin-bottom: 30px !important;
		color: #444444;
		text-align: center;
	}

	.footer_info_sche {
		float: none;
		width: 100%;
		font-size: 13.5px;
	}

	.footer_info_sche p {
		margin: 0;
	}


	.footer_map {
		width: 100%;
		margin-top: 60px;
	}

	.footer_map iframe {
		height: 300px;
	}

	.footer_navi {
		display: none;
	}

	.copy {
		margin-top: 175px;
	}

	.pagetop {
		position: absolute;
		right: 59%;
		bottom: 6%;
		text-align: center;
		cursor: pointer;
		width: 87px;
		height: 62px;
	}



	/*============================================================================

	$top

	============================================================================*/

	.top_news .box1 {
		display: block;
		margin-bottom: 20px;
	}

	.top_news_flame {
		width: 100%;
		padding-left: 0;
	}


	.bg_green {
		padding-bottom: 80px;
		background-image: url(../images/flower_01.png), url(../images/bg_green.png), url(../images/bg_wakaba.png);
		background-position: top -62px center, top 0 left -36px, bottom -151px left 35px;
		background-size: 50%;
	}

	.top_medical_list {
		display: block;
	}

	.top_medical_list a, .top_medical_list2 .nolink2 {
		display: block;
		width: 80%;
		margin: 0 auto 20px;
	}



	.medical_info_text p {
		font-size: 16px;
	}

	.medical_info_text dl {
		width: 95%;
		margin: 0 auto;
	}

	.medical_info_text dl dt {
		font-size: 16px;
	}

	.medical_info_text dl dd {
		margin-left: 0;
	}

	.medical_info_text img {
		width: 55%;
	}


	.bg_dog_cat {
		padding-bottom: 81px;
		background-image: url(../images/dog_left.png), url(../images/footprints_left.png), url(../images/cat_right.png), url(../images/bg_flower_pink_right.png), url(../images/bg_flower_pink_left.png), url(../images/bg_flower_02.png), url(../images/footprints_right.png);
		background-repeat: no-repeat;
		background-position: top 193px left, top 270px left, top 181px right, top 419px right, bottom -399px left, center bottom -305px, right 19px bottom -19px;
		background-size: 10%;
	}

	.top_family_list {
		display: block;
	}

	.top_family_list a {
		display: block;
		width: 90%;
		margin: 0 auto -6px;
		margin-bottom: -6px;
	}

	.top_family_list dl dd {
		top: -74px;
		right: -11px;
		max-width: 280px;
		min-height: 160px;
	}


	.bg_yellow {
		padding-bottom: 73px;
		background-image: url(../images/wave.png), url(../images/bg_washi_yellow.png);
		background-repeat: repeat-x;
		background-position: bottom 0px center, top 50px center;
		background-size: auto, cover;
	}


	.bg_dog_cat {
		padding-bottom: 61px;
		background-image: url(../images/dog_left.png), url(../images/footprints_left.png), url(../images/cat_right.png), url(../images/bg_flower_pink_right.png), url(../images/bg_flower_pink_left.png), url(../images/bg_flower_02.png), url(../images/footprints_right.png);
		background-repeat: no-repeat;
		background-position: top 193px left, top 270px left, top 181px right, top 419px right, bottom 1px left, center bottom -315px, right 30px bottom 0;
		background-size: 10%, 10%, 10%, 42%, 42%, 10%, 20%;
	}

	.doctor_flex {
		display: block;
		flex-direction: column-reverse;
	}

	.top_doctor .text {
		width: auto;
		line-height: 2;
	}

	.doctor_flex .text:before {
		bottom: -163px;
		right: -40px;
		width: 127px;
		height: 230px;
		margin: auto;
	}

	.top_doctor_img {
		width: auto;
		margin-bottom: 15px;
		margin-top: 90px;
	}

	.top_doctor_img p {
		text-align: center;
	}

	.top_doctor_img p img {
		width: 90%;
		margin: 0 auto 15px;
		display: block;
	}

	.top_doctor_img dt {
		margin-bottom: 17px;
		padding: 0 10%;
		text-align: center;
	}

	.top_doctor_img dd {
		text-align: center;
	}

	.top_medical2_list a {
		width: 46%;
		margin-right: 8%;
	}

	.top_medical2_list a:nth-child(even) {
		margin-right: 0;
	}

	.top_medical3_list li {
		width: 46%;
		margin-right: 8%;
	}

	.top_medical3_list li:nth-child(even) {
		margin-right: 0;
	}

	.top_medical4_list {
		width: auto;
		margin: 0 8%;
	}

	.top_medical4_list dl {
		width: 45%;
		margin-right: 0;
	}


	.loop_slide_wrap .slick-initialized .slick-slide img {
		width: 228px;
	}


	/*============================================================================

	#ペットホテル・トリミング

	============================================================================*/
	.price-table th, .price-table td {
		padding: 10px 5px;
	}


	.table table {
		width: 90%;
	}

	.table table th {
		width: 38%;
	}

	.table table td {
		padding: 12px 11px;
	}

	.table-scroll{
		width: 100%;
		overflow-x: auto;
	}
	.table-scroll:before{
		content: "※横にスクロールできます。";
		font-size: 13px;
		margin-bottom: 5px;
	}
	.table-scroll table{
		width: 200%;
	}
	/*============================================================================

	$breadcrumbs ぱんくず

	============================================================================*/

	.breadcrumbs {
		width: 92%;
		margin: -10px 4% 40px;
	}

	.breadcrumbs li {
		display: inline-block;
	}


	/*============================================================================

	$共通

	============================================================================*/

	#contents {
		padding-bottom: 70px;
		z-index: 5;
	}

	.box {
		width: auto;
		padding: 0 6% 8%;
	}

	.text {
		float: none;
		width: auto;
		padding: 0;
		border: none;
	}

	/*============================================================================

	$見出し

	============================================================================*/

	h1 {
		font-size: 12px;
		width: auto;
	}

	.tit01,
	.tit02,
	.tit03,
	.tit04 {
		width: 100%;
		box-sizing: border-box;
		margin-bottom: 25px;
		text-align: center;
	}

	.tit02::before {
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		width: 40px;
		height: 57px;
		background-image: url(../images/tit02_bg.png);
		background-repeat: no-repeat;
		background-size: cover;
	}

	.tit02 {
		font-size: 32px;
		-webkit-writing-mode: inherit;
		-ms-writing-mode: inherit;
		writing-mode: inherit;
	}

	.tit02 span {
		display: block;
		position: relative;
		margin-top: 63px;
		margin-right: 9px;
		letter-spacing: 3.4px;
		color: #83ad4a;
		font-size: 16px;
		font-family: 'Architects Daughter', cursive;
		font-weight: 300;
		z-index: 2;
	}



	.nowrap {
		white-space: normal;
	}



	/* テーブル */
	.tb01 {
		white-space: inherit;
	}

	.tb01 th {
		padding: 1%;
		width: 35%;
		box-sizing: border-box;
		font-size: 3vw;
		text-align: center;
	}

	.tb01 td {
		padding: 1%;
		box-sizing: border-box;
		font-size: 3vw;
		text-align: center;
	}


	.tb03, .tb03 th {
		white-space: inherit;
	}

	.tb03 td, .tb03 th {
		padding: 8px 8px;
		font-size: 13px;
		line-height: 1.5;
		letter-spacing: 0;
	}

	.tb03.w075par {
		width: 100%;
	}


	.tb04, .tb04 th {
		white-space: normal;
	}

	.tb04 th {
		font-size: 13px;
	}

	.tb04 td, .tb04 th {
		padding: 2%;
	}

	/* ボタン */
	.btn01 a {
		display: block;
	}



	/* アンカーリンク */
	.ank02 {
		width: 100%;
	}

	.ank02 li {}

	.ank03 {
		width: 100%;
	}

	.ank03 li {
		width: 48%;
	}

	.ank04 {
		width: 100%;
	}

	.ank04 li {
		width: 48%;
	}



	/* 画像右寄せ */
	.img_fr {
		float: none;
		margin-left: 0;
		text-align: center;
	}

	.img_fr img {
		margin-bottom: 15px;
		max-width: 100%;
		width: auto;
	}

	/*============================================================================

	$doctor

	============================================================================*/

	/* ごあいさつ */
	.doctor_greet {}

	.doctor_greet .text {
		float: none;
		width: auto;
	}

	/* 経歴、資格 */
	.doctor_carr_sec1 {
		float: none;
		width: 100%;
		margin-right: 0;
		margin-bottom: 30px;
	}

	.doctor_carr {
		display: block;
		flex-wrap: wrap;
	}

	.staff .doctor_carr_sec1 {
		width: 100%;
		box-sizing: border-box;
	}

	.staff {
		margin-bottom: 150px;
	}

	.btn_area {
		justify-content: center;
		width: auto;
	}

	.btn_area img {
		width: 272px;
	}

	.tokyodrs_bnr img {
		width: 80%;
	}

	/*============================================================================

	$clinic

	============================================================================*/

	/* 医院概要 */
	.clinic_sec1 dt {
		width: 30%;
	}

	.clinic_sec1 dd {
		width: 70%;
	}

	.clinic_sec1 .schedule .tb01 {
		width: 100%;
	}

	.clinic_sec1 {
		width: 100%;
	}


	/* 院内スライド */
	.clinic_slides1 {
		margin-bottom: 20px;
	}

	.clinic_slides1 .flexslider {
		float: none;
		width: 100%;
	}

	.clinic_slides1 .flexslider li div {
		display: block;
		margin-top: 5%;
		margin-left: 0;
		text-align: center;
	}

	.clinic_slides1 .flexslider p {
		display: block;
	}

	.clinic_slides1 .flex-control-nav.flex-control-thumbs {
		position: absolute;
		right: auto;
		width: auto;
		top: auto;
		bottom: 7%;
		z-index: 2;
	}

	.clinic_slides1 .flex-control-thumbs li {
		position: relative;
		width: 14.3%;
		margin: 0 0 4% 2%;
	}

	.clinic_slides1 .flex-control-thumbs img {
		border: 3px solid #e0e0e0;
	}


	/*院内スライド2 サムネイル横*/
	.clinic_slide_wrap2 {
		display: block;
		flex-direction: unset;
		justify-content: unset;
	}

	.clinic_slide_wrap_flex {
		display: block;
		flex-wrap: unset;
	}

	.clinic_slide_wrap_flex #slider {
		margin: 0 auto 15px 0;
		width: auto;
	}

	.clinic_slide_wrap_flex #thumbnail-list {
		width: auto;
	}

	.clinic_slide_wrap_flex .thumbnail-item {
		flex: 0 1 15%;
	}


	/*ストリートビュー*/
	.clinic_street {
		max-width: 100%;
		height: 220px;
	}

	/*============================================================================

	$facilities

	============================================================================*/


	.facilities_equip {}

	.facilities_equip dl {
		float: none;
		width: 100%;
		margin-left: 0;
		padding: 6% 10% 10%;
		box-sizing: border-box;
	}

	.facilities_equip_img {
		float: none;
		width: 100%;
		margin-bottom: 8%;
		margin-left: 0;
		padding: 0 10%;
		box-sizing: border-box;
	}

	.facilities_equip_img img {
		width: 300px;
	}

	.facilities_equip2 {}

	.facilities_equip2 dl, .facilities_equip2 dl:nth-child(3n) {
		width: 90%;
		height: auto !important;
		margin: 0 5% 30px;
	}

	.facilities_equip2 dl:nth-child(even) {
		margin-right: 0;
	}

	.facilities_equip3 {}

	.facilities_equip3 dl {
		width: 90%;
		height: auto !important;
		margin: 0 5% 30px;
	}

	.facilities_equip3 dl:nth-child(even) {
		margin-right: 0;
	}

	.facilities_equip3 dl, .facilities_equip3 dl:nth-child(3n) {
		width: 90%;
		height: auto !important;
		margin: 0 5% 30px;
	}

	/*============================================================================

	$access

	============================================================================*/





	/*==================================================================

	$first

	==================================================================*/
	.tb03.prevention th,
	.tb03.prevention td {
		display: block;
		width: 100%;
	}


	/*==================================================================

	$second

	==================================================================*/
	.flow_box dl {
		max-width: 100%;
		margin-right: 0;
		margin-bottom: 40px;
		padding: 10px 20px;
	}

	.flow_box dl::after {
		top: auto;
		right: 0;
		bottom: -23px;
		left: 0;
		transform: rotate(135deg);
	}

	.flow_box dl:nth-of-type(3)::after {
		display: block;
	}

	.flow_box dl dt {
		font-size: 21px;
	}

	.flow_box dl dt em {
		font-size: 16px;
	}

	/*============================================================================

	$medical

	============================================================================*/

	/*==================================================================

	.layout

	==================================================================*/

	/* 1つ並びのレイアウト。画像は無し、左にタイトル、右に文章 */

	.layout01 {}

	.layout01:before {}

	.layout01 dl {
		display: block;
	}

	.layout01 dl:after {}

	.layout01 dt {
		width: 100%;
	}

	.layout01 dd {
		width: 100%;
	}

	.layout01 dd img {
		width: 70%;
		margin: 0 auto;
		display: block;
	}

	/* 2つ並びのレイアウト。最初(dt)にタイトル、画像がその下(dd)、画像の下に文章 */
	.layout02 {
		display: block;
	}

	.layout02::after {}

	.layout02 dl {
		width: 100%;
	}

	.layout02 dl:nth-child(even) {}

	.layout02 dt {}

	.layout02 dd img {
		width: 70%;
		margin: 0 auto;
		display: block;
	}

	/* 1つ並びのレイアウト。画像が左、右にタイトル、タイトル下に文章 */
	.layout03 {
		margin: 0 0 15px;
	}

	.layout03 dl {
		display: block;
	}

	.layout03 dt {
		width: 100%;
	}

	.layout03 dt img {
		width: 70%;
		margin: 0 auto;
		display: block;
		padding: 0;
	}

	.layout03 dd {
		width: 100%;
		padding: 15px 3% 1%;
	}

	.layout03 dd h5 {}

	.layout03 dd h5 em {}

	/* 1つ並びのレイアウト。画像が左、右にタイトル、タイトル下に文章、タイトルと文章のエリア(dd)は背景色が別の色 */
	.layout04 {}

	.layout04 dl {
		display: block;
	}

	.layout04 dt {
		width: 100%;
		padding: 2%;
	}

	.layout04 dt img {
		width: 70%;
		margin: 0 auto;
		display: block;
	}

	.layout04 dd {
		width: 100%;
	}

	.layout04 dd h5 {}

	.layout04 dd h5 span {}

	/* 1つ並びで3列に区切られたレイアウト。画像が左、画像の下にタイトル、右に文章 */
	.layout05 {}

	.layout05 dl {
		display: block;
	}

	.layout05 dt {
		width: 100%;
		text-align: center;
		display: block;
	}

	.layout05 dt img {
		width: 70%;
		margin: 0 auto;
		display: block;
	}

	.layout05 dd {}

	.layout05 dd:nth-child(2) {
		width: 100%;
		margin-top: 10px;
	}

	.layout05 dd:nth-child(3) {
		width: 100%;
		border-left: none;
	}

	.layout05 dd h5 em {}

	.layout05 dd h5 {}

	.layout05_text1 {}

	.layout05_text1 ul {}

	/* 1つ並びで3列に区切られたレイアウト。左がタイトル、真ん中と右に文章 */
	.layout06 {
		margin: 0 0 15px;
	}

	.layout06 dl {
		display: block;
	}

	.layout06 dl:before {}

	.layout06 dl:last-child:after {}

	.layout06 dt {
		width: 100%;
		padding: 3%;
		display: block;
		text-align: center;
	}

	.layout06 dt img {
		width: 70%;
		margin: 0 auto;
		display: block;
	}

	.layout06 dl:last-of-type {}

	/* 数字 */
	.layout06 dt em {}

	.layout06 dd {}

	.layout06 dd:nth-child(2) {
		width: 100%;
		margin-top: 10px;
	}

	.layout06 dd:nth-child(3) {
		width: 100%;
		border-left: none;
	}

	.layout06 dd h5 {}

	.layout06_text1 {}

	.layout06_text1 ul {}

	.layout06_text1 ul li span {}


	/* 3つ並びのレイアウト。 */
	.layout07 {
		display: block;
	}

	.layout07::after {}

	.layout07 dl {
		display: block;
		width: 100%;
	}

	.layout07 dl:nth-child(3n) {}

	.layout07 dl dt {}

	.layout07 dl dt em {}

	.layout07 dl dd {}

	/* 3つ並びのレイアウト。矢印付き */
	.layout08 {
		display: block;
	}

	.layout08 dl {
		position: relative;
		width: 100%;
		margin-right: 0;
		margin-bottom: 35px;
	}

	.layout08 dl:nth-child(3n) {}

	.layout08 dl::before {
		position: absolute;
		right: 0;
		left: 0;
		margin: auto;
		top: 110%;
		height: 7px;
		width: 7px;
		transform: rotate(135deg);
		background-color: transparent;
		border-top: 2px solid #1F2774;
		border-right: 2px solid #1F2774;
		content: "";
		bottom: 0;
		margin: auto;
	}

	.layout08 dl:nth-child(3n)::before {
		display: none;
	}

	.layout08 dl dt {
		margin-bottom: 7px;
		padding-bottom: 7px;
		border-bottom: 1px dashed #ddd;
		font-size: 17px;
		font-weight: bold;
		text-align: center;
	}

	.layout08 dl dt em {
		margin-right: 8px;
		font-size: 24px;
		font-family: 'Quicksand', sans-serif;
	}

	.layout08 dl dd {
		line-height: 1.5;
	}

	/*============================================================================

	$news

	============================================================================*/

	.news_list li a {
		display: block;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
	}

	/*============================================================================

	$mpcloud_schedule

	============================================================================*/

	#mpcloud_schedule {
		width: 100%;
		right: 0;
		left: 0;
		border-radius: 0;
	}

	.time_close {
		right: 20px;
		font-size: 17px;
	}

	.schedule_time {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
	}

	.schedule_time dt {
		width: 35%;
		margin-bottom: 5px;
	}

	.schedule_time dd {
		width: 65%;
		margin-bottom: 5px;
	}

	.schedule_time dd i {
		margin: 0 3px 0 15px;
		vertical-align: text-bottom;
	}




	/*common*/
	.pc {
		display: none !important
	}

	.sp {
		display: block !important
	}

	.pc_inline {
		display: none !important
	}

	.sp_inline {
		display: inline !important
	}

	.pc_table {
		display: table !important
	}

	.sp_table {
		display: table !important
	}

	img {
		max-width: 100%;
		height: auto
	}

	.sp_mb00 {
		margin-bottom: 0 !important
	}

	.sp_mr00 {
		margin-right: 0 !important
	}

	.sp_ml00 {
		margin-left: 0 !important
	}

	.sp_mt00 {
		margin-top: 0 !important
	}

	.sp_pb00 {
		padding-bottom: 0 !important
	}

	.sp_pr00 {
		padding-right: 0 !important
	}

	.sp_pl00 {
		padding-left: 0 !important
	}

	.sp_pt00 {
		padding-top: 0 !important
	}

	.sp_center {
		text-align: center
	}

	.pc-only {
		display: none !important;
	}

	.sp-only {
		display: block !important;
	}

}

@media screen and (max-width:320px) {
	.main_open {
		position: absolute;
		top: auto;
		bottom: 50px;
		right: 0;
		left: 0;
		width: 50%;
		margin: auto;
	}

	.sp_inline_iP {
		display: inline !important
	}
}
