@charset "UTF-8";
/*******************************************************************************
	サイト名：松山市青少年育成市民会議
	作成会社：Fellow System
--------------------------------------------------------------------------------
 No.│   日付   │区分│						内  容
━━┿━━━━━┿━━┿━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 001│2020.05│新規│[V1.00] 山本
*******************************************************************************/

/*******************************************************************************
	デフォルトセッティング
--------------------------------------------------------------------------------
	適応：全部
*******************************************************************************/
@font-face {
	font-family: "bodoni";
	src: url("../fonts/Bodoni.woff") format("woff"), url("../fonts/Bodoni.eot") format("eot");
}

.font_bodoni {
	font-family: "bodoni";
}

body {
	background-image: url("../images/page_cafe-bg.png");
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: center top -195px;
	background-size: 1591px 1472px;
}

.page_container {
	padding-top: 10px;
}

.post-type-archive-tribe_events .right_menu {
	display: flex;
	max-width: 330px;
	min-width: inherit;
	width: 60%;
	height: 55px;
	justify-content: space-between;
}

.icon-instagram {
	background: linear-gradient(45deg, rgba(254, 212, 117, 1) 0%, rgba(229, 61, 93, 1) 50%, rgba(194, 49, 134, 1) 70%, rgba(156, 56, 187, 1) 100%);

	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.post-type-archive-tribe_events .right_menu a {
	display: inline-flex;
	color: #1a1311;
	align-items: center;
}

.post-type-archive-tribe_events .right_menu a i {
	font-size: 38px;
}

.post-type-archive-tribe_events .right_menu a span {
	display: inline-block;
	width: 182px;
	margin-left: 20px;
}

.post-type-archive-tribe_events .right_menu a span img {
	width: 100%;
}

.cafe_content {
	max-width: 980px;
	width: 95%;
	margin: 0 auto;
}

.cafe_content h2 {
	max-width: 436px;
	margin-right: 65px;
}

.cafe_content h2 img {
	width: 100%;
}

.cafe_content figure {
	max-width: 444px;
	color: #da982b;
	font-weight: bold;
	text-align: center;
}

.cale_online-link {
	position: relative;
	max-width: 328px;
	margin: 0 auto 55px;
}

.cale_online-link a {
	display: block;
}

.cale_online-link a img {
	width: 100%;
	filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.21));
}

.move_pointer {
	position: absolute;
	top: 170px;
	left: 260px;
	max-width: 85px;
}

.cafe_content figure figcaption img {
	width: 100%;
}

.cafe_content figure figcaption span {
	display: block;
	position: relative;
	top: -20px;
	font-size: 18px;
}

.cafe_outline {
	max-width: 840px;
	width: 95%;
	margin: 0 auto 50px;
	font-size: 15px;
}

.cafe_outline p {
	line-height: 2;
	text-align: justify;
}

.cafe_outline p:lang(en) {
	text-align: left;
}

.cafe_outline p:first-child {
	margin-bottom: 20px;
	line-height: 2;
}

.tribe-events .tribe-events-c-top-bar__nav-link , .tribe-common-c-btn-border-small.tribe-events-c-top-bar__today-button {
	pointer-events: all;
}

.cafe_post-container {
	display: flex;
	flex-direction: column;
}

.tribe-events .tribe-events-c-subscribe-dropdown__container , .tribe-common--breakpoint-medium.tribe-events .tribe-events-header__messages:not(.tribe-events-header__messages--mobile) , .tribe-events .tribe-events-calendar-month-mobile-events__mobile-day {
	display: none;
}

/*.tribe-events-calendar-month-mobile-events {
	display: none !important;
}*/
.calendar_head {
	display: flex;
	max-width: 1045px;
	margin: 0 auto !important;
	justify-content: space-between;
}

@media screen and (max-width: 834px) {
	.calendar_head {
		flex-direction: column;
		align-items: flex-end;
	}

	.calendar_head h4 {
		margin: 0 auto;
	}
}

.tribe-events-header__events-bar.tribe-events-c-events-bar {
	display: none !important;
}

@media screen and (max-width: 767px) {
	/*.tribe-common--breakpoint-medium.tribe-common .tribe-common-h3 {
	pointer-events: none;
}*/
	.tribe-events-c-view-selector__content a {
		pointer-events: all !important;
	}

	/*
	.tribe-events-calendar-month__header , .tribe-events-calendar-month__week:not(.current_week) {
		display: none !important;
	}
	.tribe-events .tribe-events-calendar-month__week {
		flex-direction: column;
	}
	.tribe-events .tribe-events-calendar-month__day {
		width: 100% !important
	}.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__day {
		min-height: 100px !important
	}*/
}


.calendar_head h4 {
	font-size: 53px;
}

.cafe_management {
	display: flex;
	max-width: 371px;
	margin-top: 26px !important;
	align-items: center;
}

.cafe_management img {
	width: 64px;
	height: 64px;
	margin-right: 30px;
}

.cafe_management dl {
	display: flex;
	font-weight: 500;
	font-size: 17px;
	line-height: 1.9;
	flex-wrap: wrap;
}

.cafe_management dt {
	width: 157px;
	text-align: right;
}

.cafe_management dd {
	width: calc(100% - 157px);
	padding-left: 30px;
}

.calendar_usage {
	position: relative;
	max-width: 1110px;
	width: 100%;
	margin: 0 auto 30px !important;
}

.calendar_usage img {
	position: absolute;
	right: 3.6037%;
	bottom: -35px;
	max-width: 310px;
	min-width: 120px;
	width: 16.1459vw;
}

.calendar_usage figcaption {
	width: 100%;
	padding: 30px 20% 30px 6.7568%;
	border-radius: 60px;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	background-color: #ffffff;
}

.calendar_usage figcaption h5 {
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 32px;
}

.calendar_usage figcaption p {
	font-size: 15px;
	line-height: 2;
	text-align: justify;
}

.calendar_caution {
	display: flex !important;
	max-width: 951px;
	width: 100%;
	margin: 0 auto !important;
	color: #ff0000;
	font-size: 15px;
	align-items: center;
}

.calendar_caution img {
	width: 126px;
}

.calendar_caution figcaption {
	width: calc(100% - 126px);
	padding-left: 4.7319%;
	line-height: 2;
	text-align: justify;
}

@media screen and (max-width: 1001px) {
	.calendar_caution figcaption br:nth-last-of-type(1) {
		display: none;
	}
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-header , .tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month {
	max-width: 1015px;
	width: 100%;
	margin: 0 auto !important;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__body {
	margin-bottom: 75px;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-l-container {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.instructor_list {
	display: block;
	max-width: 1330px;
	width: 95%;
	margin: 0 auto;
	order: 1;
}

.instructor_list ul {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
}

.instructor_list li {
	position: relative;
	max-width: 315px;
	width: 23.6843%;
	padding: 10px;
}

.instructor_frame {
	overflow: hidden;
	border-radius: 16px;
	box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.16);
}

.instructor_name figcaption {
	height: 225px;
	padding-top: 35px;
	color: #ffffff;
	text-align: center;
}

.instructor_name figcaption h3 {
	font-size: 53px;
	line-height: 1.05;
}

.instructor_name .clip_circle , .instructor_name .clip_circle img {
	border-radius: 50%;
}

.instructor_name .clip_circle {
	position: absolute;
	top: 170px;
	left: 50%;
	transform: translateX(-50%);
	max-width: 160px;
	width: 100%;
	border: 5px solid #ffffff;
}

.instructor_name .clip_circle img {
	width: 100%;
}

.from_country {
	padding: 110px 0 40px;
	background-color: #ffffff;
}

.from_country img {
	width: 90px;
	margin: 0 auto 15px;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
}

.from_country figcaption {
	color: #000000;
	font-weight: bold;
	font-size: 22px;
	line-height: 1.3;
	text-align: center;
}

.from_country figcaption span {
	text-transform: uppercase;
}

.interview_ribbon {
	position: absolute;
	top: 0;
	left: 0;
	max-width: 159px;
}


@media screen and (min-width: 981px) {
	.instructor_list li {
		width: 23.6842%;
	}

	.instructor_list li:not(:nth-child(4n+1)) {
		margin-left: 1.7548%;
	}

	.instructor_list li:not(:nth-child(-n+4)) {
		margin-top: 20px;
	}

	@media screen and (max-width: 1285px) {
		.instructor_name figcaption h3 {
			font-size: 3.5097vw;
		}
	}
}

@media screen and (min-width: 768px) and (max-width: 980px) {
	.instructor_list li {
		width: 32.6178%;
	}

	.instructor_list li:not(:nth-child(3n+1)) {
		margin-left: 1.0742%;
	}

	.instructor_list li:not(:nth-child(-n+3)) {
		margin-top: 20px;
	}

	@media screen and (max-width: 800px) {
		.instructor_name figcaption h3 {
			font-size: 6.625vw;
		}
	}
}



.calendar_content {
	margin-bottom: 125px;
	order: 2;
}

.tribe-events a {
	pointer-events: none;
}



.interview_container {
	max-width: 850px;
	width: 95%;
	margin: 0 auto 80px;
	order: 3;
}

.interview_container h2 {
	max-width: 651px;
	width: 85%;
	margin: 0 auto 25px;
}

.interview_container h2 img {
	width: 100%;
}

.interview_container ul li {
	position: relative;
	padding: 10px;
}

.interview_container ul li:not(:first-child) {
	margin-top: 40px;
}

.interview_frame {
	overflow: hidden;
	padding-bottom: 45px;
	border-radius: 16px;
	box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.16);
	background-color: #ffffff;
}

.profile_area {
	margin-bottom: 60px;
}

.profile_name {
	margin-bottom: 30px;
	padding: 65px 10px 0 80px;
	color: #ffffff;
}

.profile_name h3 {
	display: flex;
	font-size: 66px;
	align-items: center;
}

.profile_name h3 br {
	display: none;
}

.profile_name h3 img {
	max-width: 103px;
	margin-left: 20px;
}

.profile_name span {
	padding-left: 5px;
	font-weight: bold;
	font-size: 22px;
	line-height: 0.95;
}

.profile_content {
	position: relative;
	width: 100%;
}

.profile_content::after {
	display: block;
	position: absolute;
	bottom: 0;
	width: 100%;
	background-color: #ffffff;
	content: "";
}

.profile_content figure {
	display: flex;
	position: relative;
	z-index: 1;
	max-width: 725px;
	width: 95%;
	margin: 0 auto;
}

.profile_area .clip_circle , .profile_area .clip_circle img {
	border-radius: 50%;
}

.profile_area .clip_circle {
	max-width: 300px;
	width: 100%;
	border: 10px solid #ffffff;
}

.profile_area .clip_circle img {
	width: 100%;
}

.profile_content figure figcaption {
	width: calc(100% - 300px);
	padding-left: 35px;
}

.profile_content .profile_ja {
	padding-bottom: 20px;
	color: #ffffff;
	;
}

.profile_content .profile_en {
	padding-top: 15px;
}

.profile_content dt {
	margin-bottom: 5px;
	font-weight: bold;
	font-size: 14px;
	line-height: 1.7;
}

.profile_content dd {
	font-size: 12px;
	line-height: 1.8;
	text-align: justify;
}

.profile_content .profile_en dd {
	font-weight: 100;
}

.interview_list {
	max-width: 690px;
	width: 95%;
	margin: 0 auto;
}

.interview_list h4 {
	margin-bottom: 10px;
	font-size: 26px;
}

.interview_list p {
	font-size: 15px;
	line-height: 2;
	text-align: justify;
}

.interview_list p:lang(en) {
	text-align: left;
}

.interview_list p:nth-of-type(1) {
	margin-bottom: 15px;
}



.tribe-events-calendar-month {
	background-color: #ffffff;
}

.online_content {
	max-width: 716px;
	width: 95%;
	margin: 0 auto;
}

.online_content h2 {
	max-width: 716px;
	width: 85%;
	margin: 0 auto 50px;
}

.online_content h2 img {
	width: 100%;
}

.interview_block:not(:last-child) {
	margin-bottom: 50px;
}

.zoom_outline {
	max-width: 710px;
	width: 100%;
	margin: 0 auto;
	font-size: 15px;
}

.zoom_outline h3 {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 26px;
}

.zoom_outline p , .zoom_outline ul {
	font-size: 15px;
	line-height: 2;
	text-align: justify;
}

.zoom_outline p:nth-of-type(1) {
	margin-bottom: 30px;
}

.rb-ni {
	white-space: normal !important;
}

.zoom_outline hr {
	height: 2px;
	margin: 50px 0;
	background-color: #000000;
}

.zoom_outline ul {
	margin-bottom: 50px;
}

.zoom_outline ul li::before {
	content: "・";
}

.zoom_outline figure {
	display: flex;
}

.zoom_outline figure img {
	width: 172px;
	margin-right: 30px;
}

.zoom_outline figure figcaption {
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}

.zoom_outline figure a {
	font-weight: bold;
	font-size: 19px;
	line-height: 1.9;
	letter-spacing: 1px;
	text-decoration: underline;
}

.zoom_outline figure dl {
	display: flex;
	width: 100%;
	font-weight: bold;
	font-size: 21px;
	line-height: 1.65;
	letter-spacing: 1px;
	flex-wrap: wrap;
	;
}

.zoom_outline figure dl dt {
	width: 145px;
}

.zoom_outline figure dl dd {
	width: calc(100% - 145px);
}

@media screen and (min-width:768px) {
	.cafe_content {
		display: flex;
	}

	.cale_online-link.display_mobile {
		display: none;
	}

	.cafe_content figure figcaption {
		position: relative;
		top: -45px;
	}

	.page_container {
		margin-bottom: 100px;
	}

	.profile_content figure {
		align-items: center;
	}

	@media screen and (max-width: 834px) {
		.profile_name {
			padding-left: 10.3588%;
		}
	}

	.tribe-events-calendar-month-mobile-events__mobile-day {
		display: block !important;
	}

	.calendar_head {
		width: calc(100% - 84px);
	}

	.instructor_list {
		margin-bottom: 96px;
	}
}

@media screen and (max-width: 767px) {
	.calendar_content {
		margin-bottom: 50px;
	}

	.tribe-events-calendar-list-nav.tribe-events-c-nav {
		margin-bottom: 60px;
	}

	.tribe-common--breakpoint-medium.tribe-events .tribe-events-c-top-bar__nav.tribe-common-a11y-hidden , .tribe-common--breakpoint-medium.tribe-events .tribe-events-c-top-bar__today-button

	/* ,
	.tribe-common--breakpoint-medium.tribe-common .tribe-common-h3 svg*/ {
		display: none !important;
	}

	/*.tribe-events-c-top-bar__datepicker {
		pointer-events: none !important;
	}*/
	.tribe-common.tribe-events.tribe-events-view.tribe-events-c-top-bar__datepicker svg {
		display: block !important;
	}

	.tribe-events-calendar-list-nav.tribe-events-c-nav a {
		pointer-events: all;
	}

	.post-type-archive-tribe_events .right_menu {
		max-width: 120px;
		min-width: 120px;
	}

	.post-type-archive-tribe_events .right_menu a span {
		display: none;
	}

	.page_container {
		margin-bottom: 50px;
		padding: 10px 30px 0;
	}

	.cafe_content {
		width: 100%;
		flex-direction: column;
		align-items: center;
	}

	.move_pointer {
		max-width: 58px;
	}

	.cafe_content h2 {
		width: 73.0159%;
		margin: 0 auto 10px;
	}

	.cale_online-link {
		float: right;
		max-width: 221px;
		width: 100%;
	}

	.move_pointer {
		top: 77.9817%;
		left: 79.2683%;
		width: 25.9147%;
	}

	.cafe_content figure {
		margin: 0 auto;
	}

	.cafe_content figure figcaption span {
		top: -10px;
		font-size: 14px;
	}

	.cafe_outline p br {
		display: none;
	}

	.instructor_list {
		max-width: 690px;
		width: 100%;
		margin-bottom: 50px;
	}

	.instructor_name .clip_circle {
		top: 100px;
		width: 75%;
	}

	.instructor_name figcaption {
		height: 155px;
		padding-top: 20px;
	}

	.instructor_name figcaption h3 {
		font-size: 23px;
	}

	.instructor_frame .interview_ribbon {
		width: 50.4762%;
	}

	.from_country figcaption {
		font-size: 19px;
	}

	.tribe-events {
		margin-bottom: 50px;
	}

	.calendar_head h4 {
		font-size: 34px;
	}

	.cafe_management {
		max-width: 295px;
		margin-top: 15px !important;
	}

	/*
	.tribe-events-calendar-month-mobile-events__mobile-day {
		display: block !important;
	}*/
	.tribe-events-calendar-month-mobile-events__mobile-day.current_show {
		display: block !important;
	}

	.cafe_management img {
		width: 40px;
		height: 40px;
		margin-right: 20px;
	}

	.cafe_management dl {
		font-size: 15px;
	}

	.cafe_management dt {
		width: 140px;
	}

	.cafe_management dd {
		width: calc(100% - 140px);
		padding-left: 15px;
	}

	.tribe-events-calendar-month-mobile-events {
		margin-bottom: 80px !important;
	}

	/*.tribe-events .tribe-events-c-events-bar {
		display: none !important;
	}*/
	.calendar_usage img {
		top: -50px;
		right: auto;
		bottom: auto;
		left: -20px;
	}

	.calendar_usage figcaption {
		padding: 40px 5% 30px;
		border-radius: 40px;
	}

	.calendar_usage figcaption h5 {
		text-align: center;
	}

	.calendar_usage figcaption p {
		font-size: 14px;
	}

	.calendar_usage figcaption p br {
		display: none;
	}

	.calendar_caution figcaption {
		width: 100%;
		padding-left: 0;
	}

	.tribe-events .tribe-events-l-container {
		min-height: inherit !important;
		padding: 0 !important;
	}

	.calendar_caution {
		display: flex !important;
		flex-direction: column;
	}

	.calendar_caution img {
		margin-bottom: 30px;
	}

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

	.interview_container ul li {
		padding: 1.3756%;
	}

	.profile_area {
		margin-bottom: 45px;
	}

	.profile_content figure {
		width: 90%;
		flex-direction: column;
	}

	.profile_area .clip_circle {
		margin-bottom: 20px;
		border: 5px solid #ffffff;
	}

	.profile_name {
		margin-bottom: 20px;
		padding: 50px 0px 0 8.4866%;
	}

	.profile_name h3 {
		position: relative;
		padding-right: 10px;
		font-size: 43px;
	}

	.profile_name span {
		font-size: 14px;
	}

	.profile_name h3 img {
		position: absolute;
		top: calc(100% + 120px);
		left: 300px;
		margin-left: 0;
	}

	@media screen and (min-width: 551px) {
		.profile_name h3 img {
			top: calc(100% + 190px);
			left: 300px;
		}
	}

	@media screen and (max-width: 550px) {
		.profile_area .clip_circle {
			width: calc(100% - 130px);
		}

		.profile_name h3 img {
			top: calc(100% + 33vw);
			left: calc(100% - 130px);
		}
	}

	@media screen and (max-width: 440px) {
		.profile_name h3 img {
			top: calc(100% + 25vw);
			left: calc(100% - 130px);
		}
	}

	@media screen and (max-width: 374px) {
		.profile_name h3 img {
			top: calc(100% + 16vw);
			width: 36.8557%;
		}
	}

	.profile_content figure figcaption {
		width: 100%;
		padding-left: 0;
	}

	/*.profile_content::after {
		height: calc(100% - 150px) !important;
	}*/
	.profile_content .profile_ja {
		padding-bottom: 10px;
		color: #303030;
	}

	.profile_content .profile_en {
		padding-top: 10px;
	}

	.interview_container .interview_ribbon {
		width: 21.8708%;
	}

	.interview_list {
		width: 90%;
	}

	.interview_list h4 {
		font-size: 23px;
	}

	.interview_list p {
		font-size: 14px;
	}

	.online_content {
		width: 100%;
	}

	.zoom_outline h3 {
		font-size: 23px;
	}

	.zoom_outline hr {
		margin: 30px 0;
	}

	.zoom_outline ul {
		margin-bottom: 30px;
	}

	.zoom_outline figure {
		max-width: 350px;
		margin: 0 auto;
		flex-direction: column;
		align-items: center;
	}

	.zoom_outline figure a {
		margin-bottom: 15px;
		font-size: 16px;
		word-break: break-all;
	}

	.zoom_outline figure dl {
		font-size: 18px;
	}

	.zoom_outline figure dl dt {
		width: 125px;
	}

	.zoom_outline figure dl dd {
		width: calc(100% - 125px);
	}

	@media screen and (max-width: 480px) {
		.from_country {
			padding: 55.0861% 0 25px;
		}

		.from_country figcaption span {
			display: block;
		}

		.calendar_usage img {
			top: auto;
			bottom: 90%;
			transform: translateY(10%);
			min-width: inherit;
			width: 29.9252%;
		}
	}

	/*@media screen and (max-width: 412px) {
		.profile_content::after {
			height: calc(100% - 36.4078vw) !important;
		}
	}*/
	@media screen and (min-width: 375px) {
		.instructor_list li {
			width: 48.4616%;
			padding: 1.5385%;
		}

		.instructor_list li:not(:nth-child(2n+1)) {
			margin-left: 3.077%;
		}

		.instructor_list li:not(:nth-child(-n+2)) {
			margin-top: 20px;
		}
	}

	@media screen and (max-width: 374px) {
		.instructor_list li {
			width: 100%;
			margin: 0 auto;
			padding: 2.9941%;
		}

		.instructor_list li:not(:first-child) {
			margin-top: 20px;
		}

		.from_country {
			padding-top: 110px;
		}

		.cafe_management dl {
			flex-direction: column;
		}

		.cafe_management dd {
			width: auto;
			text-align: right;
		}

		.cafe_management {
			align-items: flex-start;
		}

		.cafe_management img {
			margin-right: 10px;
		}

		.cafe_management dt:nth-of-type(2) {
			border-top: 1px dotted;
		}
	}
}

@media screen and (min-width: 768px) {
	.calender_guide {
		padding: 0 42px;
	}
}

.scroll-table {
	width: 95%;
	white-space: nowrap;
}

.scroll-table iframe {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
	.scroll-table {
		overflow-x: scroll;
		overflow-y: hidden;
		width: 100%;
		padding-bottom: 11px;

		scrollbar-width: none;
	}

	.scroll-table::-webkit-scrollbar {
		display: none;
	}

	/*
	.scroll-table iframe {
		width: 1000px;
	}*/
}

.link_caution {
	display: block;
	margin-bottom: 35px !important;
	padding-left: 1em !important;
	color: red;
	font-style: normal;
	font-weight: bold;
	font-size: 19px;
	text-align: center;
	text-indent: -1em;
}

.common_btn--link-gcalendar {
	max-width: 395px;
	width: 100%;
	height: 70px;
	margin: 10px auto 70px !important;
	border: 1px solid !important;
	border-radius: 37px;
	box-shadow: 0px 3px 6px rgb(0 0 0 / 16%);
	background-color: #f0f0f0 !important;
	color: #000000;
	font-weight: bold;
	font-size: 30px;
	flex-direction: row;
	pointer-events: all !important;
	transition: all 0.4s;
	-moz-transition: all 0.4s;
	-webkit-transition: all 0.4s;
}

.common_btn--link-gcalendar:hover {
	background-color: #000000 !important;
	color: #ffffff !important;
}

.safari_caution {
	display: block;
	max-width: 800px;
	margin: 0 auto 100px !important;
}

.safari_caution h5 {
	margin-bottom: 15px;
	padding-bottom: 20px;
	border-bottom: 5px solid #696969;
	font-weight: bold;
	font-size: 26px;
	text-align: center;
}

.safari_caution p {
	max-width: 715px;
	margin-bottom: 10px;
	font-size: 15px;
	line-height: 2;
	text-align: justify;
}

.safari_caution ul {
	font-weight: bold;
	font-size: 20px;
}

.safari_caution ul li:not(:first-child) {
	margin-top: 20px;
}

.safari_caution ul dl {
	margin-top: 20px;
	margin-bottom: 15px;
	font-weight: normal;
	font-size: 15px;
}

.safari_caution ul dl dt:nth-of-type(2) {
	margin-top: 35px;
}

.safari_caution ul dl dd {
	margin-top: 5px;
	line-height: 2;
}

.safari_caution > span {
	display: block;
	color: #ff0000;
	font-weight: bold;
	font-size: 17px;
}

@media screen and (min-width: 768px) {
	.safari_caution {
		width: 95%;
	}

	.safari_caution p , .safari_caution ul , .safari_caution > span , .safari_caution ul dl {
		padding-left: 25px !important;
	}

	.safari_caution p {
		padding-right: 25px;
	}
}

@media screen and (max-width: 767px) {
	.safari_caution h5 {
		font-size: 22px;
		text-align: justify;
	}

	.safari_caution {
		width: 100%;
		margin-bottom: 70px !important;
	}

	.safari_caution p , .safari_caution ul , .safari_caution > span , .safari_caution ul dl {
		padding-left: 10px !important;
	}

	.safari_caution p {
		padding-right: 10px;
	}

	.safari_caution p br , .safari_caution > span br {
		display: none;
	}

	.safari_caution ul dl dt:nth-of-type(2) {
		margin-top: 25px;
	}

	.link_caution {
		font-size: 18px;
		text-align: justify;
	}

	.common_btn--link-gcalendar {
		font-size: 20px;
	}
}
