@charset "UTF-8";

/*--------------------------------------

食物栄養専攻（学科紹介）

--------------------------------------*/
.storong {
	color: #cd3c54;
}

.fw-b {
	font-weight: 700;
}

.containerFoo {
	width: 100%;
	margin: 0 auto 0;
	padding: 0;
}

.boxFoo {
	width: 100%;
	margin: 0 auto 0;
	padding: 0;
}

.boxFoo.flex {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}

.clr01 {
	color: #5AC350;
	margin-bottom: 10px;
	font-size: 1.5em;
	display: block;
	line-height: 1.3;
}

.boxFooL01 {
	width: 73%;
	position: relative;
	border-bottom: solid 1px #333333;
}

.boxFooL01 p {
	font-size: 215%;
	padding: 0 0 5px 0;
}

.boxFooL01 span.txt1 {
	top: -15px;
	left: 77px;
}

.boxFooL01 span.txt2 {
	top: -15px;
	left: 205px;
}

.boxFooR01 {
	width: 24%;
}

@media all and (max-width: 481px) {
	.boxFoo.flex {
		flex-direction: column;
		justify-content: flex-start;
	}

	.boxFooL01 {
		width: 100%;
	}

	.boxFooL01 p {
		font-size: 5vw;
		padding: 15px 0 5px 0;
	}

	.boxFooL01 span {
		font-size: 13px;
		position: absolute;
	}

	.boxFooL01 span.txt1 {
		top: 0;
		left: 15%;
	}

	.boxFooL01 span.txt2 {
		top: 0;
		left: 40%;
	}

	.boxFooR01 {
		width: 24%;
	}
}

/* ポリシー */
.policy-area * {
	box-sizing: border-box;
}

.policy-area br.sp {
	display: none;
}

@media all and (max-width: 481px) {
	.policy-area br.sp {
		display: block;
	}
}

.policy-area .box {
	width: 100%;
	background: linear-gradient(to left top, #9cdb96 50%, #cdedca 50%);
	padding: 10px 15px 10px;
	margin-bottom: 20px;
}

.policy-area .box .ttl {
	font-weight: bold;
	font-size: 16px;
	border-left: 4px solid #5ac350;
	padding-left: 10px;
	position: relative;
}

.policy-area .box .ttl::after {
	content: "";
	position: absolute;
	right: 25px;
	top: 38%;
	transition: all 0.2s ease-in-out;
	display: block;
	width: 8px;
	height: 8px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

.policy-area .box .ttl.open::after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 45%;
}

.policy-area .box ol {
	display: none;
	background-color: #fff;
	padding: 10px;
	margin-top: 10px;
	list-style: none;
}

.policy-area * {
	box-sizing: border-box;
}

.policy-area br.sp {
	display: none;
}

.policy-area .box ol li {
	line-height: 1.8em;
}

.policy-area .box ol li.bold {
	font-weight: bold;
	font-size: 13px;
}


/* 先輩メッセージ */
.message_area {}


.message_area ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.message_area ul li {
	width: 47%;
	margin-bottom: 30px;
}

.message_area ul li>a {
	margin-bottom: 10px;
	display: block;
	aspect-ratio: 3 / 2;
}

.message_area ul li>a img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	overflow: hidden;
}

.message_area ul li p time {
	display: block;
	margin-bottom: 5px;
}

.message_area ul li p time img {
	margin-left: 5px;
}

@media all and (max-width: 479px) {
	.message_area ul li {
		width: 100%;
	}
}


/* 進路データ */
.coursedata_area {
	margin-bottom: 50px;
}

.coursedata_area p {
	font-size: 16px;
	font-weight: bold;
}

.coursedata_area p span {
	font-size: 13px;
	font-weight: normal;
}

.coursedata_area figure {
	width: 65%;
}

@media all and (max-width: 479px) {
	.coursedata_area figure {
		width: 100%;
	}
}


/* ナビ */
#boxFooGbtn {
	width: 100%;
	margin: 0 auto 0;
	padding: 0;
}

#boxFooGbtn ul li {
	width: 23.65%;
	float: left;
	margin: 0 1.8% 0 0;
	list-style: none;
}

#boxFooGbtn ul li:last-child {
	margin: 0 0 0 0;
}

#boxFooGbtn ul li a {
	display: block;
	width: 100%;
	padding: 7px 0 7px;
	font-size: 16px;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	background-image: url(../img/food/food_index_nav_bg.svg);
	background-size: cover;
}

#boxFooGbtn ul li a:hover {
	opacity: 0.8;
	color: #ffffff;
}

@media all and (max-width: 479px) {
	#boxFooGbtn ul li {
		float: left;
		margin: 0 2% 5px 0;
		list-style: none;
		text-align: center;
		width: 49%;
	}

	#boxFooGbtn ul li:nth-child(2n) {
		margin: 0 0 5px 0;
	}
}

/* 小ナビ */
.boxFooSbtn {
	width: 90%;
	margin: 0 auto 0;
	padding: 0;
}

.boxFooSbtn ul li {
	background-image: url(../img/food/icon_under_arrow.png);
	background-repeat: no-repeat;
	background-position: left 2px;
	padding-left: 20px;
	float: left;
	margin: 0 30px 10px 0;
	list-style: none;
	display: inline;
	font-size: 108%;
}

.boxFooSbtn ul li.navList01 {
	margin: 0;
	padding-right: 0;
}

@media all and (max-width: 479px) {
	.boxFooSbtn ul li {
		font-size: 100%;
	}
}


.boxFooL02 {
	float: left;
	width: 48%;
	font-size: 108%;
}

.boxFooR02 {
	float: right;
	width: 48%;
}

/* ポイント */
ul.point_box {
	margin-bottom: 30px;
}

ul.point_box li {
	display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}

ul.point_box li figure {
	width: 75px;
}

ul.point_box li .txtArea {
	width: calc(100% - 90px);
}

ul.point_box li .txtArea .txt01 {
	font-size: 154%;
}

ul.point_box li:last-child .txtArea .txt01 {
	padding: 0.5em 0 0 0;
}

ul.point_box li .txtArea p span {
	color: #F59100;
}

ul.point_img {
	margin-bottom: 50px;
	display: flex;
	flex-wrap: wrap;
}

ul.point_img li {
	width: 30%;
	margin-right: 2%;
}

ul.point_img li:last-child {
	margin-right: 0:
}

/* 科目紹介 */
.kamoku_catch {
	font-size: 154%;
	text-align: center;
	margin-bottom: 30px;
}

.kamoku_catch span {
	color: #5ac350;
}

ul.kamoku_contents {}

ul.kamoku_contents>li {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 50px;
}

ul.kamoku_contents>li .ttl {
	width: 100%;
	font-size: 25px;
	margin-bottom: 20px;
	padding-bottom: 5px;
	border-bottom: dashed 1px #464646;
}

ul.kamoku_contents>li .ttl::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	width: 1em;
	height: 1em;
	background-color: #f59100;
	margin-right: 10px;
}

ul.kamoku_contents>li .txtArea {
	width: 52%;
}

ul.kamoku_contents>li .txtArea .txt01 {
	font-size: 25px;
	margin-bottom: 10px;
}

ul.kamoku_contents>li .txtArea .txt01 span {
	display: inline-block;
	width: 35px;
	margin-right: 5px;
}

ul.kamoku_contents>li .txtArea .txt01 span img {
	vertical-align: middle;
}

ul.kamoku_contents>li .txtArea>ul {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
}

ul.kamoku_contents>li .txtArea>ul>li {
	margin-right: 1em;
	margin-bottom: 10px;
	font-size: 16px;
}

ul.kamoku_contents>li .txtArea>ul>li:last-child {
	margin-right: 0;
}

ul.kamoku_contents>li .txtArea>ul>li::before {
	content: "";
	display: inline-block;
	width: 23px;
	height: 20px;
	background-image: url(../img/food/food_icon_03.svg);
	background-repeat: no-repeat;
	background-size: cover;
	vertical-align: middle;
	margin-right: 3px;
}

ul.kamoku_contents>li .txtArea>.txt02 {
	font-size: 20px;
	color: #5ac350;
	margin-bottom: 30px;
}

ul.kamoku_contents li figure {
	width: 48%;
}

.recipe {
	margin: 20px auto 0;
	display: block;
}

@media all and (max-width: 480px) {
	ul.kamoku_contents>li .txtArea {
		width: 100%;
		margin-bottom: 20px;
	}

	ul.kamoku_contents li figure {
		width: 100%;
	}

	ul.kamoku_contents>li .txtArea>.txt02 br {
		display: none;
	}
}








.boxFooGroup1 {
	width: 100%;
	margin: 0 auto 30px;
	padding: 0;
}


.boxFooGroup1>.inner_box {
	width: 92%;
	background-color: #f7f6ed;
	margin: 0 auto 20px;
	padding: 20px;
	border-sizing: border-box;
}


.boxFooGroup1>.inner_box>h6 {
	border-bottom: 2px dotted #ee7d96;
	padding: 5px;
	font-size: 21px;
	font-weight: bold;
	color: #cd3c54;
	margin: 0 0 10px 10px;
}

.boxFooGroup2 {
	margin: 0 0 40px 0;
}

.boxFooGroup2 ul li {
	float: left;
	width: 344px;
	height: auto;
	margin: 0 40px 0 0;
	list-style: none;
}

.boxFooGroup2 ul li:last-child {
	margin: 0;
}

.boxFooGroup2 ul li span {
	font-size: 1.4em;
	margin: 0 0 5px;
	display: block;
	position: relative;
	padding-left: 22px;
}

.boxFooGroup2 ul li span:before {
	position: absolute;
	top: 2px;
	left: 4px;
	width: 14px;
	height: 14px;
	background: #fbb03b;
	content: "";
}

.boxFooGroup2.clearfix ul li a:hover {
	opacity: 0.8;
}


/* 受賞歴 */
.boxFooGroup3_ttl {
	width: 100%;
	background: linear-gradient(to left top, #9cdb96 50%, #cdedca 50%);
	padding: 10px 15px 10px;
	margin-bottom: 50px;
	box-sizing: border-box;
	position: relative;
}

.boxFooGroup3_ttl span {
	font-weight: bold;
	font-size: 16px;
	border-left: 4px solid #5ac350;
	padding-left: 10px;
}

.boxFooGroup3_ttl::after {
	content: "";
	position: absolute;
	right: 25px;
	top: 38%;
	transition: all 0.2s ease-in-out;
	display: block;
	width: 8px;
	height: 8px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

.boxFooGroup3_ttl.open::after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 45%;
}

.boxFooGroup3 {
	margin: 0 0 40px 0;
	display: none;
}

.boxFooGroup3>.contest_block {
	margin: 0 0 20px;

}

.boxFooGroup3>.contest_block>.con_ttl {
	position: relative;
	margin: 0 0 5px;
	padding-left: 20px;
	text-align: left;
	/*	font-weight: bold;*/
	/*	background-color: #efddc3;*/
}

.boxFooGroup3>.contest_block>.con_ttl:before {
	position: absolute;
	top: 5px;
	left: 4px;
	width: 10px;
	height: 10px;
	background: #fbb03b;
	content: "";
}

.boxFooGroup3 .contest_block table {
	margin-left: 20px;
	width: 100%;
}

.boxFooGroup3 .contest_block td:first-child {
	width: 85px;
}



@media all and (max-width: 480px) {
	.boxFooGroup3 .contest_block tr {
		display: flex;
		flex-direction: column;
	}
}





.boxFoo h5 {
	width: 100%;
	margin: 0 auto 10px;
	padding: 0 0 3px 5px;
	font-size: 1.5em;
	border-bottom: 1px solid #5AC350;
	font-weight: normal;
	box-sizing: border-box;
}

.boxFoo .boxFooTxt01:before {
	content: url(../img/other/foo_bit_04.png);
	margin: 0px 2px 5px 0px;
	height: auto;
	position: relative;
	top: 2px;
}

.boxFoo .boxFooTxt01 {
	margin: 0px 20px 5px 0px;
	display: block;
}

.boxFoo .boxFooTxt02:before {
	content: url(../img/other/foo_bit_04.png);
	margin: 0px 2px 5px 0px;
	height: auto;
	position: relative;
	top: 2px;
}

.boxFoo .boxFooTxt02 {
	margin: 0px 20px 5px 0px;
	display: inline-block;
}

.boxFooTxt02:after {
	content: url(../img/other/foo_bit_06.png);
	margin: 0px 20px 5px 5px;
	height: auto;
	position: relative;
	top: 2px;
}



.boxFooGroup4 {
	margin: 0 auto 30px;
}

.boxFooGroup4>.inner {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: stretch;

}

.boxFooGroup4>.inner>.box {
	width: calc((100% - 20px)/ 3);
	margin: 0 10px 0 0;
	background-color: #f7f6ed;
	padding: 10px;
}

.boxFooGroup4>.inner>.box>h6 {
	font-size: 18px;
	font-weight: bold;
	color: #cd3c54;
	padding: 5px 0;
	text-align: center;
}

.boxFooGroup4>.inner>.box>.fc3 {
	letter-spacing: -0.1em;
}

.boxFooGroup4>.inner>.box>figure {
	width: 90%;
	margin: 5px auto;
}

@media all and (max-width: 480px) {
	.boxFooGroup4>.inner {
		display: flex;
		flex-direction: column;
	}

	.boxFooGroup4>.inner>.box {
		width: 80%;
		margin: 0 auto 20px;
	}
}




.mt-11 {
	margin-top: -11px;
}

.boxFooL05 {
	float: left;
	width: 22%;
}

.boxFooR05 {
	float: right;
	width: 70%;
}

.boxFooR05Ttl {
	width: 100%;
	padding: 10px 5px;
	border-bottom: 1px solid #cd3c54;
	font-size: 2em;
	box-sizing: border-box;
	margin: 0 0 15px 0;
}

.boxFooRLab {
	float: right;
	display: block;
	padding: 8px 15px 6px;
	margin: 0 0 0 5px;
	background-color: #cd3c54;
	color: #ffffff;
	font-size: 0.5em;
	letter-spacing: 1px;
}


/*カリキュラム部分ここから*/
.curriculumTable {
	border: solid 1px #666;
}

.curriculumTable th,
.curriculumTable td {
	border: solid 1px #666;
}

.curriculumTable tr {
	background-color: #ffffff;
}

.curriculumTable th {
	vertical-align: middle;
	font-size: 100%;
	line-height: 1.6em;
	padding: 5px 0;
}

.curriculumTable td {
	font-size: 100%;
	line-height: 1.5em;
	padding: 5px 0;
	vertical-align: middle;
	text-align: center;
}

.must {
	color: #9A2929;
}

.kamoku {
	width: 230px;
	background-color: #FCEDED;
}

.narrow {
	width: 50px;
	background-color: #FCEDED;
}

.bikou {
	background-color: #FCEDED;
}

/*カリキュラム部分ここまで*/
@media screen and (max-width:479px) {

	.boxFooL01 {
		float: none;
		width: 100%;
		margin: 0 auto 10px;
	}

	.boxFooR01 {
		float: none;
		width: 40%;
		margin: 0 auto 0;
	}

	.boxFooGbtn ul li {
		float: none;
		margin: 0 auto 5px;
		list-style: none;
		text-align: center;
		width: 100%;
	}

	.boxFooL02 {
		float: none;
		width: 100%;
		font-size: 108%;
	}

	.boxFooR02 {
		float: none;
		width: 100%;
	}

	.boxFooGroup1 ul li {
		float: none;
		width: 90%;
		height: auto;
		margin: 0 auto 10px;
		text-align: center;
	}

	.boxFooGroup1 ul li:last-child {
		margin: 0 auto 5px;
	}

	.boxFooGroup2 {
		margin: 0 0 30px 0;
	}

	.boxFooGroup2 ul li {
		float: none;
		width: 90%;
		height: auto;
		margin: 0 auto 20px;
		list-style: none;
	}

	.boxFooGroup2 ul li:last-child {
		margin: 0 auto 9px;
	}

	.fr {
		float: none;
		margin: 0 auto 10px;
	}

	.boxFooGroup4 {
		margin: 0 auto 30px;
		text-align: center;
	}

	.boxFooGroup4 ul li {
		width: 237px;
		height: 368px;
		margin: 0 auto 10px;
		float: none;
		list-style: none;
	}

	.boxFooGroup4 ul li:last-child {
		margin: 0 auto 10px;
	}

	.boxFooR05Ttl {
		width: 100%;
		padding: 10px 5px;
		border-bottom: 1px solid #cd3c54;
		font-size: 1.5em;
		box-sizing: border-box;
		margin: 0 0 10px 0;
	}

	.boxFooRLab {
		float: right;
		display: block;
		padding: 8px 15px 6px;
		margin: 5px 5px 0 0;
		background-color: #cd3c54;
		color: #ffffff;
		font-size: 0.5em;
		letter-spacing: 1px;
	}
}



/* 2021年5月 */
article .container section h2.common {
	font-size: 200%;
	text-align: center;
	color: #5AC350;
	letter-spacing: 2px;
	font-weight: normal;
	box-sizing: border-box;
	padding: 17px 0 17px;
	border: solid 3px #5AC350;
	width: 100%;
	margin: 0 auto 30px;
}

article .container section h2.common::after {
	content: none;
}


article .container section h3.common {
	font-size: 225%;
	border-bottom: solid 1px #5AC350;
	border-left: none;
	display: flex;
	align-items: center;
	padding: 0 0 10px;
	width: 100%;
	margin: 0 auto 20px;
	line-height: 1.2;
}

article .container section h3.common::before {
	content: "";
	display: block;
	width: 36px;
	height: 36px;
	background-image: url(../img/food/food_index_charm.svg);
	background-size: cover;
	margin-right: 20px;
}

article .container section h3.common span {
	font-size: 65%;
	margin-right: 20px;
}

article .container section h4.common {
	color: #5AC350;
	font-size: 27px;
	line-height: 1.6;
	font-weight: normal;
	margin-bottom: 20px;
}

.corse_area .boxCar:first-of-type .boxCarL02 {
	width: 57%;
}

.corse_area .boxCar:first-of-type .boxCarR02 {
	width: 40%;
}

.corse_area .pc {}

.corse_area .sp {
	display: none;
}

@media screen and (max-width:479px) {
	article .container section h2.common>img {
		height: 23px;
	}

	article .container section h3.common {
		font-size: 170%;
		position: relative;
		padding: 0 0 10px 50px;
		box-sizing: border-box;
		flex-wrap: wrap;
		min-height: 50px;
	}

	article .container section h3.common::before {
		position: absolute;
		left: 0;
		top: 0;
	}

	article .container section h3.common span {
		width: 100%;
		margin-bottom: 5px;
	}

	article .container section h4.common {
		font-size: 125%;
	}

	.corse_area .boxCar:first-of-type .boxCarL02 {
		width: 100%;
	}

	.corse_area .boxCar:first-of-type .boxCarR02 {
		width: 100%;
	}

	.corse_area .pc {
		display: none;
	}

	.corse_area .sp {
		display: block;
	}

	.corse_area .sp img {
		width: 100%;
	}
}



/* 卒業生の声 */
.boxFoo02 {
	font-size: 108%;
	background-color: #cdedca;
	border-radius: 10px;
	position: relative;
}

.boxFoo02 .txtL {
	float: left;
	width: calc(100% - 170px);
	padding: 20px;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.boxFoo02 .imgR {
	position: absolute;
	bottom: 0;
	right: 2%;
	width: 150px;
}

.boxFoo02 .ttl {
	font-weight: bold;
	width: 100%;
}

.boxFoo02 .ttl span.text-r {
	font-weight: normal;
	display: block;
}

.boxFoo02 .ttl span.text-r br {
	display: none;
}

.boxFoo02 .txt {
	margin-top: 15px;
}

/* 先生の声 */
.boxFoo03 {
	font-size: 108%;
	background-color: #cdedca;
	border-radius: 10px;
	display: flex;
	justify-content: space-between;
}

.boxFoo03 .txtL {
	width: calc(100% - 170px);
	padding: 20px;
	box-sizing: border-box;
}

.boxFoo03 .txtL .ttl {
	font-weight: bold;
	width: 100%;
}

.boxFoo03 .txtL .ttl span.text-r {
	font-weight: normal;
	display: block;
}

.boxFoo03 .txtL .ttl span.text-r br {
	display: none;
}

.boxFoo03 .txtL .txt {
	margin-top: 15px;
}

.boxFoo03 .imgR {
	width: 150px;
	padding: 20px;
}

.boxFoo03 .imgR figure:first-of-type {
	margin-bottom: 20px;
}

@media all and (max-width: 480px) {
	.boxFoo03 {
		flex-wrap: wrap;
	}

	.boxFoo03 .txtL {
		width: 100%;
	}

	.boxFoo03 .imgR {
		width: 100%;
		display: flex;
		justify-content: space-between;
	}

	.boxFoo03 .imgR figure:first-of-type {
		margin-bottom: 0;
		margin-right: 20px;
	}

}


/* 横スクする画像 */
.full_over {
	overflow-x: scroll;
}

.full_over img {
	width: 1300px;
	max-width: 1300px;
}

/* 2605追加　講座案内 */
.ta_r {
	text-align: right;
}
.schedule__wrap {
	position: relative;
	padding-bottom: 50px;
}
.schedule__table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
}

.schedule__table .col-date {
  width: 120px;
}

.schedule__table .col-time {
  width: 88px;
}

.schedule__table .col-teacher {
  width: 105px;
}

.schedule__table .col-affiliation {
  width: 150px;
}

/* 残りを自動 */
.schedule__table .col-content {
  width: auto;
}

.schedule__table th,
.schedule__table td {
  padding: 5px 8px;
  border: 1px solid #d1d5dc;
  font-size: 14px;
  line-height: 20px;
  vertical-align: middle;
}

.schedule__table thead th {
  background-color: #FDEEE8;
  font-weight: 400;
  text-align: center;
}

.schedule__table tbody td {
  background-color: #fff;
	text-align: left;
}

.schedule__wrap .schedule__decoration {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 120px;
  height: 120px;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
	.schedule__wrap {
		position: relative;
		padding-bottom: 0;
		margin-bottom: 50px;
	}
	.schedule__wrap .schedule__decoration {
		display: none;
	}
}

.info-table__wrap {
	margin-bottom: 30px;
}
.info-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #d1d5dc;
  table-layout: fixed;
}

/* 列幅指定 */
.info-table__col-th {
  width: 160px;
}

.info-table__col-td {
  width: auto;
}

.info-table th,
.info-table td {
  padding: 10px 12px;
  border: 1px solid #d1d5dc;
  font-size: 14px;
  line-height: 20px;
  vertical-align: top;
  text-align: left;
}

.info-table th {
  background-color: #FDEEE8;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
}

.info-table td {
  background-color: #fff;
}

.info-table__note {
  margin: 0;
  color: #e7000b;
  font-weight: 700;
}

.info-table__link {
  word-break: break-all;
}

/* SP */
@media screen and (max-width: 767px) {
  .info-table__col-th {
    width: 110px;
  }

  .info-table th,
  .info-table td {
    padding: 8px 10px;
    font-size: 13px;
    line-height: 1.6;
  }
}

.visual {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 30px;
	margin-bottom: 50px;
}

.visual__qr {
  flex: 0 0 auto;
  width: 256px;
  max-width: 100%;
}

.visual__qr p {
	margin-top: 15px;
	text-align: center;
	font-weight: bold;
	font-size: 1.1rem;
}

.visual__qr img {
  display: block;
  width: 100%;
  height: auto;
}

.visual__illustration {
  flex: 0 0 auto;
  width: 200px;
  max-width: 100%;
}

.visual__illustration img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

@media (max-width: 767px) {
  .visual__inner {
    flex-direction: column;
    gap: 24px;
  }

  .visual__qr{
    width: min(256px, 100%);
  }
	.visual__illustration {
		width: 40%;
	}

}

.contact__list {
  margin: 0 0 70px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.contact__item {
		font-size: 1em;
}
.contact__item br {
	display: none;
}
.contact__item a {
  text-decoration: none;
}

.contact__item a:hover {
  text-decoration: underline;
}

.contact__icon {
  margin: 0 4px;
}

@media (max-width: 767px) {
  .contact__list {
		margin-bottom: 50px;
	}
  .contact__item {
    line-height: 1.6;
    word-break: break-word;
		margin-bottom: 15px;
  }
	.contact__item br {
		display: block;
	}
}
