@charset "UTF-8";

/* ---------- 初期 ---------- */
body.highschool001-food #article {
	font-family: "Zen Maru Gothic", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
img {
	width: 100%;
	max-width: 100%;
	height: auto;
}
a {
	text-decoration: none;
}
strong {
	font-weight: bold;
}
/* ---------- /共通部分 ---------- */
#jougetyuou {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
	margin: auto;
}
#kadomaru {
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
#resbtn {
	-webkit-appearance: none;
}
.ancr {
	position: relative;
	transition: 0.5s;
}
.anca {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	z-index: 10;
	cursor: pointer;
}
.ancr:hover {
	opacity: 0.75;
	transition: 0.5s;
	cursor: pointer;
}
/* ---------- /参考タグ部分 ---------- */

/* PC */
@media screen and (min-width: 769px) {
	.wrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.sponly {
		display: none !important;
	}

	header {
		width: 100%;
		position: fixed;
		left: 0;
		top: 0;
		z-index: 10;
	}
	header .inner {
		width: 95.42vw;
		margin: 0 auto;
	}
	header .inner .logo {
		width: 21.78vw;
		padding: 1.57vw 0 1vw;
	}
	header .inner .header_btn {
		width: 35.214vw;
		margin-right: 0.071vw;
		padding: 1.14vw 0 0.92vw;
	}
	header .inner .header_btn .btn {
		width: 17.142vw;
		font-size: 1.07vw;
		font-weight: 500;
		text-align: center;
	}
	header .inner .header_btn .btn a {
		display: block;
		width: 100%;
		height: 2.857vw;
		box-sizing: border-box;
		line-height: 2.714vw;
		color: #000;
		background-image: url("../images/header_btn_arrow.png");
		background-repeat: no-repeat;
		background-position: right 1.28vw center;
		background-size: 0.5vw 0.57vw;
		border: solid 1px #000;
		border-radius: 0.71vw;
		-webkit-border-radius: 0.71vw;
		-moz-border-radius: 0.71vw;
	}
	header .inner .header_btn .btn.request a {
		background-color: #c6cde7;
	}
	header .inner .header_btn .btn.oc a {
		background-color: #ff7695;
	}

	#mv {
		padding: 0 0 2.12vw;
		background: #f7f7f1;
	}
	#mv .inner {
		width: 97.57%;
		margin: 0 auto;
		position: relative;
	}
	#mv .inner .mv_btn {
		width: 13.457vw;
		position: absolute;
		right: 13.87vw;
		bottom: 1.64vw;
	}
	#mv .inner .mv_btn a {
		display: block;
		width: 100%;
		transition: 0.3s;
	}
	#mv .inner .mv_btn a:hover {
		opacity: 0.9;
		transition: 0.3s;
	}

	#step01 {
		background: url("../images/step01_bg.png") no-repeat #f7f7f1;
		background-size: 100% auto;
	}
	#step01 .inner {
		width: 85.714vw;
		margin: 0 auto;
		padding: 4.71vw 0 5.21vw;
		position: relative;
		position: relative;
	}
	#step01 .inner::before {
		position: absolute;
		content: "";
		width: 0;
		height: 0;
		bottom: -36px;
		left: 50%;
		transform: translateX(-50%);
		border-style: solid;
		border-color: #f7f7f1 transparent transparent transparent;
		border-width: 36px 51px 0px 51px;
	}
	#step01 .inner .num {
		width: 8.84vw;
		margin: 0 auto 1.51vw;
	}
	#step01 .inner .ttl {
		width: 27.135vw;
		margin: 0 auto 1.42vw;
	}
	#step01 .inner .txt {
		font-size: 1.21vw;
		line-height: 1.82em;
		font-weight: 500;
		text-align: center;
		margin-bottom: 8.57vw;
	}
	#step01 .inner .step01_cont {
	}
	#step01 .inner .step01_box {
		width: 20.89vw;
		padding: 6.5vw 0 4vw;
		background: #eafde5;
		border-radius: 10.44vw;
		-webkit-border-radius: 10.44vw;
		-moz-border-radius: 10.44vw;
		text-align: center;
		position: relative;
	}
	#step01 .inner .step01_box .box_img {
		width: 12.428vw;
		position: absolute;
		top: -4.57vw;
		left: 50%;
		transform: translateX(-50%);
		z-index: 2;
	}
	#step01 .inner .step01_box .box_ttl {
		width: 14vw;
		margin: 0 auto;
		font-size: 1.428vw;
		line-height: 3vw;
		font-weight: bold;
		box-sizing: border-box;
		background: #efff99;
		border: solid 1px #000;
		border-radius: 0.64vw;
		-webkit-border-radius: 0.64vw;
		-moz-border-radius: 0.64vw;
		position: relative;
		z-index: 3;
		margin-bottom: 0.93vw;
	}
	#step01 .inner .step01_box dl {
		margin-bottom: 2.85vw;
	}
	#step01 .inner .box02 dl {
		margin-bottom: 1.45vw;
	}
	#step01 .inner .box03 dl {
		margin-bottom: 4.64vw;
	}
	#step01 .inner .step01_box dl:last-child {
		margin-bottom: 0;
	}
	#step01 .inner .step01_box dl dt {
		font-size: 1.07vw;
		line-height: 1;
		font-weight: bold;
		padding-bottom: 0.97vw;
		margin-bottom: 0.71vw;
		background: url("../images/step01_box_line.png") no-repeat center bottom;
		background-size: 5.5595vw;
	}
	#step01 .inner .box02 dl dt {
		margin-bottom: 0.35vw;
	}
	#step01 .inner .step01_box dl:last-child dt {
		margin-bottom: 0.35vw;
	}
	#step01 .inner .step01_box dl dd {
		font-size: 1.07vw;
		line-height: 1.66em;
		font-weight: 500;
	}
	#step01 .inner .step01_img {
		position: absolute;
	}
	#step01 .inner .img01 {
		width: 13.529vw;
		top: 1.2vw;
		left: -7.27vw;
	}
	#step01 .inner .img02 {
		width: 10.93vw;
		bottom: 1.52vw;
		right: -5.26vw;
	}

	#step02 {
		background: #f7f7f1;
	}
	#step02 .bg {
		position: relative;
		padding: 4.07vw 0;
	}
	#step02 .step02_btm_img img {
		display: block;
	}
	#step02 .inner {
		width: 83.57vw;
		margin: 0 auto;
		padding: 4.11vw 0 5.71vw;
		background: url("../images/step02_bg_txt.png") no-repeat right 7.4vw top #edd3d9;
		background-size: 44.8vw;
		border-radius: 3.9vw;
		-webkit-border-radius: 3.9vw;
		-moz-border-radius: 3.9vw;
		position: relative;
	}
	#step02 .step02_ttl_area {
		width: 69.19vw;
		margin-left: 6.66vw;
		margin-bottom: 4.64vw;
	}
	#step02 .step02_ttl_area .left {
		width: 35.5vw;
	}
	#step02 .step02_ttl_area .left .num {
		width: 9.74vw;
	}
	#step02 .step02_ttl_area .right {
		width: 29.14vw;
		padding-top: 0.32vw;
	}
	#step02 .step02_ttl_area .right .hukidashi {
		width: 12.57vw;
	}
	#step02 .step02_ttl_area .right .txt {
		font-size: 1.21vw;
		line-height: 1.7em;
		font-weight: 500;
	}
	#step02 .step02_cont {
		width: 71vw;
		margin: 0 auto;
		position: relative;
	}
	#step02 .step02_cont .check {
		width: 6.12vw;
		position: absolute;
		top: -3.35vw;
		right: 14.71vw;
		z-index: 3;
	}
	#step02 .step02_cont .step02_slider {
	}
	#step02 .step02_cont .step02_box {
		width: 16.78vw;
		margin: 0 0.48vw;
		transition: 0.3s;
		cursor: pointer;
	}
	#step02 .step02_cont .step02_box:hover {
		opacity: 0.8;
		transition: 0.3s;
	}
	#step02 .step02_cont .prev-arrow {
		width: 2.5vw;
		position: absolute;
		bottom: -3.93vw;
		left: 31.54vw;
		cursor: pointer;
	}
	#step02 .step02_cont .next-arrow {
		width: 2.5vw;
		position: absolute;
		bottom: -3.93vw;
		right: 31.54vw;
		cursor: pointer;
	}
	#step02 .slick-num {
		text-align: center;
		position: absolute;
		bottom: 2.12vw;
		left: 50%;
		transform: translate(-50%);
		z-index: 4;
	}
	#step02 .slick-num .num_inner {
		display: inline-block;
		font-size: 1.07vw;
		font-weight: 500;
	}
	#step02 .slick-num .num_inner .nowcnt {
		font-size: 1.07vw;
	}
	#step02 .slick-num .num_inner .allcnt {
		font-size: 1.07vw;
	}
	#step02 .step02_img {
		width: 14.92vw;
		position: absolute;
		top: -9.43vw;
		right: 0;
		z-index: 3;
	}

	/*モーダル*/
	#step02 .modal {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		height: 100vh;
		width: 100%;
		z-index: 11;
	}
	#step02 .modal-bg {
		position: absolute;
		height: 100vh;
		width: 100%;
		background: rgba(204, 255, 102, 0.55);
	}
	#step02 .modal-content {
		width: 70vw;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		-webkit-transform: translateY(-50%) translateX(-50%);
		margin: auto;
		overflow: scroll;
		background: url("../images/modal_bg.png") no-repeat right top #f7f7f1;
		background-size: 25.9vw;
	}
	#step02 .modal-content .modal_inner {
		width: 100%;
	}
	#step02 .modal-content .modal_img {
		width: 44.08%;
	}
	#step02 .modal-content .modal_img img {
		display: block;
	}
	#step02 .modal-content .modal_txt {
		width: 56.92%;
		box-sizing: border-box;
		padding: 4.57vw 3.71vw 0 4.21vw;
	}
	#step02 .modal-content .modal_txt .name {
		font-size: 2.142vw;
		font-weight: 500;
		margin-bottom: 0.35vw;
	}
	#step02 .modal-content .modal_txt .name span.line {
		display: inline-block;
		line-height: 1;
		padding: 0.178vw 0.71vw;
		background: #fff;
	}
	#step02 .modal-content .modal_txt .name span.small {
		font-size: 1vw;
		font-weight: bold;
		margin-left: 0.45vw;
	}
	#step02 .modal-content .modal_txt .schoole {
		display: inline-block;
		font-size: 1vw;
		line-height: 2.07vw;
		font-weight: 500;
		padding: 0 0.78vw;
		background: #fff;
		margin-bottom: 0.42vw;
	}
	#step02 .modal-content .modal_txt dl {
		font-size: 0;
		margin-bottom: 0.32vw;
	}
	#step02 .modal-content .modal_txt dl dt {
		width: 5.64vw;
		height: 2.21vw;
		box-sizing: border-box;
		display: inline-block;
		font-size: 1.14vw;
		line-height: 2.07vw;
		font-weight: 500;
		text-align: center;
		margin-right: 0.32vw;
		background: #d8ff01;
		border: solid 0.07vw #000;
		border-radius: 0.28vw;
		-webkit-border-radius: 0.28vw;
		-moz-border-radius: 0.28vw;
		vertical-align: top;
	}
	#step02 .modal-content .modal_txt dl dd {
		display: inline-block;
		padding: 0 0.88vw;
		font-size: 1.285vw;
		line-height: 2.21vw;
		font-weight: 500;
		background: #fff;
		border-radius: 0.28vw;
		-webkit-border-radius: 0.28vw;
		-moz-border-radius: 0.28vw;
	}
	#step02 .modal-content .modal_txt dl dd span {
		font-size: 1.14vw;
	}
	#step02 .modal-content .modal_txt .modal_box {
		height: 17.71vw;
		box-sizing: border-box;
		padding: 1.78vw 2.42vw 0 1.85vw;
		background: #fff;
		border-radius: 1.14vw;
		-webkit-border-radius: 1.14vw;
		-moz-border-radius: 1.14vw;
		margin-top: 1.57vw;
	}
	#step02 .modal04 .modal-content .modal_txt .modal_box {
		height: 17.04vw;
	}
	#step02 .modal05 .modal-content .modal_txt .modal_box {
		height: 16.84vw;
	}
	#step02 .modal-content .modal_txt .modal_box .box_ttl {
		margin-bottom: 1.07vw;
	}
	#step02 .modal-content .modal_txt .modal_box .box_ttl span {
		display: inline-block;
		padding: 0 0.36vw;
		font-size: 1.428vw;
		font-weight: 500;
		line-height: 2.21vw;
		background: #faf0f0;
		margin-bottom: 0.42vw;
	}
	#step02 .modal-content .modal_txt .modal_box .box_ttl span:last-child {
		margin-bottom: 0;
	}
	#step02 .modal-content .modal_txt .modal_box .box_txt {
		font-size: 1.07vw;
		line-height: 1.8em;
		font-weight: 500;
	}
	#step02 a.js-modal-close {
		display: block;
		width: 3.5vw;
		height: 3.5vw;
		position: absolute;
		top: 0;
		right: 0;
		background-image: url("../images/modal_close_btn.png");
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		cursor: pointer;
	}

	#history {
		margin-top: -0.1vw;
	}
	#history .history_head {
	}
	#history .history_head .left {
		width: 50vw;
		box-sizing: border-box;
		padding: 2.138vw 4.889vw 3.78vw 5.428vw;
		background: #cbefff;
	}
	#history .history_head .left img {
		display: block;
		width: 39.643vw;
	}
	#history .history_head .right {
		width: 50vw;
		box-sizing: border-box;
		padding: 3.35vw 0 0;
		height: 54.71vw;
		background: #ffe55a;
		overflow-y: scroll;
	}
	#history .history_head .right .scroll {
		padding-bottom: 3.35vw;
	}
	#history .history_head .right .bg {
		width: 44.428vw;
		margin: 0 auto;
		background: #fff;
		box-sizing: border-box;
		padding: 0 1.64vw 0 1.97vw;
	}
	#history .history_head .right .bg .chronology {
		padding: 2.349vw 0 2.558vw;
		position: relative;
	}
	#history .history_head .right .bg .chronology .btn {
		width: 24vw;
		position: absolute;
		left: 11.5vw;
		top: 34.2vw;
	}
	#history .history_head .right .bg .chronology .btn a {
		display: block;
		width: 100%;
		transition: 0.3s;
	}
	#history .history_head .right .bg .chronology .btn a:hover {
		opacity: 0.8;
		transition: 0.3s;
	}
	#history .history_btm {
		padding: 2.82vw 0 5.36vw;
		position: relative;
		background: url("../images/history_btm_bg.png") no-repeat right top #f7f7f1;
		background-size: 55.71vw;
	}
	#history .history_btm .ttl {
		width: 41.46vw;
		margin-left: 16.82vw;
		margin-bottom: 1.64vw;
	}
	#history .history_btm .history_btm_slider {
		width: 70.39vw;
		margin: 0 auto 2.87vw;
	}
	#history .history_btm .history_btm_slider .history_btm_box {
		margin: 0 2.1vw;
	}
	#history .history_btm .history_btm_slider .prev-arrow {
		width: 2.5vw;
		position: absolute;
		top: -4.32vw;
		right: 8.35vw;
		cursor: pointer;
	}
	#history .history_btm .history_btm_slider .next-arrow {
		width: 2.5vw;
		position: absolute;
		top: -4.32vw;
		right: 2.9vw;
		cursor: pointer;
	}
	#history .history_btm .slick-num2 {
		text-align: center;
		position: absolute;
		top: 8.8vw;
		right: 20.93vw;
		z-index: 4;
	}
	#history .history_btm .slick-num2 .num_inner {
		display: block;
		font-size: 1.07vw;
		font-weight: 500;
	}
	#history .history_btm .slick-num2 .num_inner .nowcnt {
		font-size: 1.07vw;
	}
	#history .history_btm .slick-num2 .num_inner .allcnt {
		font-size: 1.07vw;
	}
	#history .history_btm .history_btm_btn {
		width: 69.85vw;
		margin: 0 auto;
	}
	#history .history_btm .history_btm_btn .btn {
		width: 34.285vw;
	}
	#history .history_btm .history_btm_btn .btn a {
		display: block;
		width: 100%;
		transition: 0.3s;
	}
	#history .history_btm .history_btm_btn .btn a:hover {
		opacity: 0.8;
		transition: 0.3s;
	}
	#history .history_btm .history_btm_img {
		position: absolute;
	}
	#history .history_btm .img01 {
		width: 16.37vw;
		top: 16.46vw;
		left: 0;
	}
	#history .history_btm .img02 {
		width: 11.32vw;
		bottom: 1.42vw;
		right: 1.85vw;
	}

	#step03 img {
		display: block;
	}
	#step03 .bg {
		height: 100%;
		padding: 3.32vw 0 4.57vw;
		background: url("../images/step03_bg.png") no-repeat;
		background-size: cover;
	}
	#step03 .step03_head {
		width: 95vw;
		margin: 0 auto 3vw;
		padding: 3.46vw 0 6.14vw;
		border-radius: 2.5vw;
		-webkit-border-radius: 2.5vw;
		-moz-border-radius: 2.5vw;
		background-color: #aec0e0;
		background-image: url("../images/step03_bg_txt.png");
		background-repeat: no-repeat;
		background-size: 86.357vw;
		background-position: 3.92vw 8.45vw;
		position: relative;
	}
	#step03 .step03_head .step03_img {
		width: 17.07vw;
		position: absolute;
		top: 3.98vw;
		right: 12.17vw;
		z-index: 2;
	}
	#step03 .step03_head .inner {
		width: 67vw;
		margin: 0 auto;
		position: relative;
		z-index: 3;
	}
	#step03 .step03_head .num {
		width: 9.78vw;
		margin: 0 auto 1.35vw;
	}
	#step03 .step03_head .ttl {
		width: 44.785vw;
		margin: 0 auto 1.4vw;
		font-size: 2.14vw;
		line-height: 4.428vw;
		font-weight: 500;
		background: #fff;
		text-align: center;
	}
	#step03 .step03_head .txt {
		width: 46.4vw;
		margin: 0 auto 2.14vw;
		font-size: 1.21vw;
		line-height: 1.57em;
		font-weight: 500;
	}
	#step03 .step03_head .txt span.line {
		background: url("../images/step03_txt_line.png") no-repeat;
	}
	#step03 .step03_head .txt span.big {
		font-size: 1.64vw;
	}
	#step03 .step03_head .step03_cont {
		flex-wrap: wrap;
	}
	#step03 .step03_head .step03_box {
		width: 32.5vw;
		margin-bottom: 2.64vw;
	}
	#step03 .step03_head .step03_box:nth-child(n + 3) {
		margin-bottom: 0;
	}
	#step03 .merit {
		width: 70vw;
		margin: 0 auto 3.92vw;
	}
	#step03 .merit .merit_ttl {
		width: 39.93vw;
		margin: 0 auto 2.74vw;
		font-size: 1.785vw;
		line-height: 5.357vw;
		font-weight: bold;
		text-align: center;
		color: #fff;
		background: #00dc09;
		border-radius: 1.57vw;
		-webkit-border-radius: 1.57vw;
		-moz-border-radius: 1.57vw;
		position: relative;
	}
	#step03 .merit .merit_ttl::before {
		position: absolute;
		content: "";
		width: 0;
		height: 0;
		left: 50%;
		bottom: -1vw;
		border-style: solid;
		border-color: #00dc09 transparent transparent transparent;
		border-width: 19px 11.5px 0px 11.5px;
	}
	#step03 .merit .merit_cont {
	}
	#step03 .merit .merit_box {
		width: 16.07vw;
		text-align: center;
	}
	#step03 .merit .merit_box .num {
		margin: 0 auto 1.66vw;
	}
	#step03 .merit .box01 .num {
		width: 9.21vw;
	}
	#step03 .merit .box02 .num {
		width: 9.77vw;
	}
	#step03 .merit .box03 .num {
		width: 9.75vw;
	}
	#step03 .merit .box04 .num {
		width: 9.89vw;
	}
	#step03 .merit .merit_box .merit_box_img {
		margin-bottom: 1.78vw;
	}
	#step03 .merit .box04 .merit_box_img {
		margin-bottom: 1.07vw;
	}
	#step03 .merit .merit_box .merit_box_txt {
		font-size: 1.14vw;
		line-height: 1.2em;
		font-weight: bold;
	}
	#step03 .merit .box04 .merit_box_txt {
		line-height: 1.5em;
	}
	#step03 .system {
		width: 70vw;
		margin: 0 auto;
		padding: 6.5vw 0 2.71vw;
		background: #f5ffe0;
		position: relative;
	}
	#step03 .system .ttl {
		width: 25.317vw;
		position: absolute;
		top: -0.71vw;
		left: 50%;
		transform: translateX(-50%);
	}
	#step03 .system .system_box {
		width: 59.7vw;
		margin: 0 auto;
	}
	#step03 .system .system_box .system_box_img {
		width: 29.428vw;
	}
	#step03 .system .system_box .system_box_txt {
		width: 27.7vw;
	}
	#step03 .system .system_box .system_box_txt .txt {
		font-size: 1.07vw;
		line-height: 2.25em;
		font-weight: 500;
	}
	#step03 .system .system_box .system_box_txt .btn {
		width: 24vw;
		margin: 0.71vw auto 0;
	}
	#step03 .system .system_box .system_box_txt .btn a {
		display: block;
		width: 100%;
		transition: 0.3s;
	}
	#step03 .system .system_box .system_box_txt .btn a:hover {
		opacity: 0.8;
		transition: 0.3s;
	}
	#step03 .support {
		height: 48.785vw;
		box-sizing: border-box;
		padding: 6.1vw 0 6.57vw;
		background: url("../images/step03_support_bg.png") no-repeat center;
		background-size: cover;
	}
	#step03 .support .ttl_area {
		width: 35.07vw;
		margin: 0 auto 1.11vw;
	}
	#step03 .support .ttl_area .hukidashi {
		width: 8.92vw;
		margin-bottom: 0.93vw;
	}
	#step03 .support .ttl_area .ttl {
		width: 100%;
	}
	#step03 .support .txt {
		width: 38.64vw;
		margin: 0 auto 1.71vw;
		text-align: center;
		font-size: 1.21vw;
		line-height: 2.21vw;
		font-weight: 500;
		background: #fff;
	}
	#step03 .support .support_cont {
		width: 70vw;
		margin: 0 auto 1.71vw;
	}
	#step03 .support .support_box {
		width: 22.857vw;
	}
	#step03 .support .btn_txt {
		width: 17.43vw;
		margin: 0 auto 0.71vw;
	}
	#step03 .support .btn {
		width: 24vw;
		margin: 0 auto;
	}
	#step03 .support .btn a {
		display: block;
		width: 100%;
		transition: 0.3s;
	}
	#step03 .support .btn a:hover {
		opacity: 0.8;
		transition: 0.3s;
	}

	#step04 {
	}
	#step04 .bg {
		background: #f7f7f1;
		position: relative;
	}
	#step04 .step04_img {
		width: 14.6vw;
		position: absolute;
		right: 0;
		bottom: 0;
	}
	#step04 .inner {
		width: 69.91vw;
		margin: 0 auto;
		padding: 4.28vw 0 5.21vw;
		background: url("../images/step04_bg_txt.png") no-repeat center 15.65vw;
		background-size: 56.7vw;
	}
	#step04 .num {
		width: 10.01vw;
		margin: 0 auto 1.57vw;
	}
	#step04 .ttl {
		width: 21.8vw;
		margin: 0 auto 1.07vw;
	}
	#step04 .step04_cont {
		position: relative;
	}
	#step04 .step04_cont .hukidashi {
		width: 14vw;
		margin-left: 5.42vw;
		margin-bottom: 0.57vw;
	}

	#step04 .step04_cont .step04_slider {
	}
	#step04 .step04_cont .thumbnail-thumb {
		width: 63.1264vw;
		margin: 0 auto 2.14vw;
	}
	#step04 .step04_cont .thumbnail-thumb.slick-slider .slick-track {
		transform: translate3d(0px, 0px, 0px) !important;
	}
	#step04 .step04_cont .thumbnail-thumb .department {
		width: 10.857vw !important;
		font-size: 1vw;
		line-height: 1.71vw;
		font-weight: bold;
		text-align: center;
		box-sizing: border-box;
		background: #cccccc;
		border: solid 0.071vw;
		border-radius: 0.43vw;
		-webkit-border-radius: 0.43vw;
		-moz-border-radius: 0.43vw;
		margin-right: 2.14vw;
		cursor: pointer;
	}
	#step04 .step04_cont .thumbnail-thumb .department.mr0 {
		margin-right: 0;
	}
	#step04 .step04_cont .thumbnail-thumb .department.slick-current {
		background: #d8ff01;
	}
	#step04 .step04_cont .thumbnail {
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_img {
		width: 50.06%;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt {
		width: 49.94%;
		background: #fff;
		padding: 5.82vw 0 0;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box.row2 .thumbnail_box_txt {
		padding-top: 4.42vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .txt {
		font-size: 1.428vw;
		font-weight: 500;
		margin-left: 4.157vw;
		margin-bottom: 3.82vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box.row2 .thumbnail_box_txt .txt {
		margin-bottom: 2vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .txt span {
		display: inline-block;
		line-height: 2.78vw;
		background: #d6ff85;
		padding: 0 0.68vw;
		margin-bottom: 0.5vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .txt span:last-child {
		margin-bottom: 0;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .txt span.mb0 {
		margin-bottom: 0;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt dl {
		width: 29.71vw;
		margin: 0 auto 4.28vw;
		height: 8.41vw;
		box-sizing: border-box;
		padding-top: 1.43vw;
		background: #ebffc2;
		text-align: center;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt dl dt {
		font-size: 1.28vw;
		line-height: 1;
		font-weight: bold;
		margin-bottom: 1.07vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box.box02 .thumbnail_box_txt dl dt {
		margin-bottom: 1.78vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box.box03 .thumbnail_box_txt dl dt {
		margin-bottom: 1.78vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box.box04 .thumbnail_box_txt dl dt {
		margin-bottom: 1.78vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt dl dd {
		font-size: 1.07vw;
		line-height: 1.53em;
		font-weight: 500;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .btn {
		width: 24vw;
		margin: 0 auto;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .btn a {
		display: block;
		width: 100%;
		transition: 0.3s;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .btn a:hover {
		opacity: 0.8;
		transition: 0.3s;
	}
	#step04 .btm_cont {
	}
	#step04 .btm_btn {
		width: 50%;
	}
	#step04 .btm_btn a {
		display: block;
		width: 100%;
		transition: 0.3s;
	}
	#step04 .btm_btn a:hover {
		opacity: 0.8;
		transition: 0.3s;
	}

	footer {
		margin-top: -0.1vw;
	}
	footer .copyright {
		font-size: 0.928vw;
		line-height: 3.857vw;
		font-weight: 500;
		color: #fff;
		background: #000;
		text-align: center;
	}
}

/* SP */
@media screen and (max-width: 768px) {
	body main.page-highschool001-food {
		padding-bottom: 6.4rem;
	}
	.spwrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.pconly {
		display: none !important;
	}

	header {
		width: 100%;
		position: absolute;
		left: 0;
		top: 0;
	}
	header .inner {
		box-sizing: border-box;
		padding: 5.2vw 0 5.6vw 3.18vw;
	}
	header .inner .logo {
		width: 65.55vw;
	}
	header .inner .header_btn {
		width: 100vw;
		box-sizing: border-box;
		padding: 1.86vw 5.66vw 1.33vw;
		background: #fff;
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 10;
		box-shadow: 0 -0.53vw 0.66vw rgba(0, 0, 0, 0.2);
	}
	header .inner .header_btn .btn {
		width: 43.73vw;
		font-size: 4.26vw;
		font-weight: 500;
	}
	header .inner .header_btn .btn a {
		display: block;
		width: 100%;
		height: 15.733vw;
		box-sizing: border-box;
		line-height: 15.2vw;
		color: #000;
		background-image: url("../images/header_btn_arrow.png");
		background-repeat: no-repeat;
		background-position: right 3.93vw center;
		background-size: 1.64vw;
		border: solid 0.26vw #000;
		border-radius: 1.29vw;
		-webkit-border-radius: 1.29vw;
		-moz-border-radius: 1.29vw;
	}
	header .inner .header_btn .btn.request a {
		background-color: #c6cde7;
		padding-left: 10.66vw;
	}
	header .inner .header_btn .btn.oc a {
		background-color: #ff7695;
		padding-left: 5.29vw;
	}

	#mv {
		padding: 0;
		background: #f7f7f1;
	}
	#mv .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	#mv .inner .mv_btn {
		width: 35.856vw;
		position: absolute;
		right: 4.27vw;
		bottom: 3.03vw;
	}
	#mv .inner .mv_btn a {
		display: block;
		width: 100%;
	}

	#step01 {
		background: #f7f7f1;
	}
	#step01 .inner {
		width: 87.55vw;
		margin: 0 auto;
		padding: 10.52vw 0 5.21vw;
		position: relative;
	}
	/*#step01 .inner::before { position: absolute; content: ""; width: 0; height: 0; bottom: -36px; left: 50%; transform: translateX(-50%); border-style: solid; border-color: #f7f7f1 transparent transparent transparent; border-width: 36px 51px 0px 51px;}*/
	#step01 .inner .num {
		width: 22.83vw;
		margin: 0 auto 5.6vw;
	}
	#step01 .inner .ttl {
		width: 59.03vw;
		margin: 0 auto 4.66vw;
	}
	#step01 .inner .txt {
		width: 86.16vw;
		margin: 0 auto 28vw;
		font-size: 3.73vw;
		line-height: 1.5em;
		font-weight: 500;
	}
	#step01 .inner .step01_cont {
		flex-wrap: wrap;
	}
	#step01 .inner .step01_box {
		width: 42.14vw;
		padding: 5.33vw 0;
		background: #eafde5;
		border-radius: 1.6vw;
		-webkit-border-radius: 1.6vw;
		-moz-border-radius: 1.6vw;
		text-align: center;
		position: relative;
		margin-bottom: 28.13vw;
	}
	#step01 .inner .step01_box:nth-child(n + 3) {
		margin-bottom: 0;
	}
	#step01 .inner .step01_box .box_img {
		width: 29.066vw;
		position: absolute;
		top: -19.33vw;
		left: 50%;
		transform: translateX(-50%);
		z-index: 2;
	}
	#step01 .inner .step01_box .box_ttl {
		width: 31.02vw;
		margin: 0 auto;
		font-size: 4.53vw;
		line-height: 7.7vw;
		font-weight: bold;
		box-sizing: border-box;
		background: #efff99;
		border: solid 0.266vw #000;
		border-radius: 0.89vw;
		-webkit-border-radius: 0.89vw;
		-moz-border-radius: 0.89vw;
		position: relative;
		z-index: 3;
		margin-bottom: 4vw;
	}
	#step01 .inner .step01_box dl {
		margin-bottom: 4vw;
	}
	#step01 .inner .step01_box dl:last-child {
		margin-bottom: 0;
	}
	#step01 .inner .step01_box dl dt {
		font-size: 4vw;
		line-height: 1;
		font-weight: bold;
		padding-bottom: 2.66vw;
		margin-bottom: 2vw;
		background: url("../images/step01_box_line.png") no-repeat center bottom;
		background-size: 11.73vw;
	}
	#step01 .inner .step01_box dl dd {
		font-size: 3.46vw;
		line-height: 1.346em;
		font-weight: 500;
	}

	#step02 {
		background: #f7f7f1;
		overflow: hidden;
	}
	#step02 .bg {
		position: relative;
		padding: 5.73vw 0 9.26vw;
	}
	#step02 .step02_btm_img img {
		display: block;
	}
	#step02 .inner {
		width: 89.866vw;
		margin: 0 auto;
		padding: 8.93vw 0 18.11vw;
		background: #edd3d9;
		border-radius: 3.9vw;
		-webkit-border-radius: 3.9vw;
		-moz-border-radius: 3.9vw;
		position: relative;
	}
	#step02 .inner::before {
		position: absolute;
		content: "";
		top: 5.2vw;
		right: -1.61vw;
		width: 75.39vw;
		height: 15.26vw;
		background: url("../images/step02_bg_txt_sp.png") no-repeat;
		background-size: auto 100%;
	}
	#step02 .step02_ttl_area {
		width: 79.066vw;
		margin: 0 auto 6vw;
	}
	#step02 .step02_ttl_area .left {
		margin-bottom: 7.73vw;
		position: relative;
		z-index: 3;
	}
	#step02 .step02_ttl_area .left .num {
		width: 25.1vw;
		margin-bottom: 6.93vw;
		margin-left: 3.86vw;
	}
	#step02 .step02_ttl_area .left .ttl {
		width: 48.72vw;
		margin-left: 1.33vw;
	}
	#step02 .step02_ttl_area .right {
	}
	#step02 .step02_ttl_area .right .hukidashi {
		width: 36.32vw;
		margin-bottom: 1.33vw;
	}
	#step02 .step02_ttl_area .right .txt {
		font-size: 3.46vw;
		letter-spacing: -0.05em;
		line-height: 1.61em;
		font-weight: 500;
	}
	#step02 .step02_cont {
		width: 100%;
		position: relative;
	}
	#step02 .step02_cont .check {
		width: 17.9vw;
		position: absolute;
		top: -2.97vw;
		right: 11.56vw;
		z-index: 3;
	}
	#step02 .step02_cont .step02_slider {
	}
	#step02 .step02_cont .step02_box {
		width: 16.78vw;
		margin: 0 1.35vw;
	}
	#step02 .step02_cont .prev-arrow {
		width: 8.14vw;
		position: absolute;
		bottom: -12.4vw;
		left: 28.29vw;
		cursor: pointer;
	}
	#step02 .step02_cont .next-arrow {
		width: 8.14vw;
		position: absolute;
		bottom: -12.4vw;
		right: 28.29vw;
		cursor: pointer;
	}
	#step02 .slick-num {
		text-align: center;
		position: absolute;
		bottom: 7.6vw;
		left: 50%;
		transform: translate(-50%);
		z-index: 4;
	}
	#step02 .slick-num .num_inner {
		display: inline-block;
		font-size: 4vw;
		font-weight: 500;
	}
	#step02 .slick-num .num_inner .nowcnt {
		font-size: 4.26vw;
	}
	#step02 .slick-num .num_inner .allcnt {
		font-size: 4.26vw;
	}
	#step02 .step02_img {
		width: 53vw;
		position: absolute;
		top: -6.03vw;
		right: -4.133vw;
		z-index: 3;
	}

	/*モーダル*/
	#step02 .modal {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		height: 100vh;
		width: 100%;
		z-index: 20;
	}
	#step02 .modal-bg {
		position: absolute;
		height: 100vh;
		width: 100%;
		background: rgba(204, 255, 102, 0.55);
	}
	#step02 .modal-content {
		width: 90vw;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		-webkit-transform: translateY(-50%) translateX(-50%);
		margin: auto;
		overflow: scroll;
		height: 90vh;
	}
	#step02 .modal-content .modal_inner {
		width: 100%;
		background: #f7f7f1;
	}
	#step02 .modal-content .modal_img {
	}
	#step02 .modal-content .modal_txt {
		box-sizing: border-box;
		padding: 4.55vw 4.18vw 6.66vw 5.57vw;
		background: url("../images/modal_bg_sp.png") no-repeat right top #f7f7f1;
		background-size: 60.64vw;
	}
	#step02 .modal-content .modal_txt .name {
		font-size: 5.6vw;
		font-weight: 500;
		margin-bottom: 0.84vw;
	}
	#step02 .modal-content .modal_txt .name span.line {
		display: inline-block;
		height: 6.66vw;
		line-height: 6.66vw;
		padding: 0.666vw 1.96vw;
		background: #fff;
	}
	#step02 .modal-content .modal_txt .name span.small {
		font-size: 3.2vw;
		font-weight: bold;
	}
	#step02 .modal-content .modal_txt .schoole {
		display: inline-block;
		font-size: 3.46vw;
		line-height: 5.73vw;
		font-weight: 500;
		padding: 0 1.96vw;
		background: #fff;
		margin-bottom: 3.86vw;
	}
	#step02 .modal-content .modal_txt dl {
		font-size: 0;
		margin-bottom: 0.66vw;
	}
	#step02 .modal-content .modal_txt dl dt {
		width: 15vw;
		height: 5.6vw;
		box-sizing: border-box;
		display: inline-block;
		font-size: 3.2vw;
		line-height: 5.333vw;
		font-weight: 500;
		text-align: center;
		margin-right: 1.19vw;
		background: #d8ff01;
		border: solid 0.13vw #000;
		border-radius: 0.8vw;
		-webkit-border-radius: 0.8vw;
		-moz-border-radius: 0.8vw;
		vertical-align: top;
	}
	#step02 .modal-content .modal_txt dl dd {
		display: inline-block;
		padding: 0 2vw;
		font-size: 3.46vw;
		line-height: 5.6vw;
		font-weight: 500;
		background: #fff;
		border-radius: 0.8vw;
		-webkit-border-radius: 0.8vw;
		-moz-border-radius: 0.8vw;
	}
	#step02 .modal-content .modal_txt dl dd span {
		font-size: 3.06vw;
	}
	#step02 .modal04 .modal-content .modal_txt dl dd span {
		line-height: 1.2em;
		display: inline-block;
		position: relative;
		top: -1vw;
	}
	#step02 .modal05 .modal-content .modal_txt dl dd span {
		line-height: 1.2em;
		display: inline-block;
		position: relative;
		top: -1vw;
	}
	#step02 .modal-content .modal_txt .modal_box {
		box-sizing: border-box;
		padding: 4.66vw 5.33vw 4.66vw 4vw;
		background: #fff;
		border-radius: 1.33vw;
		-webkit-border-radius: 1.33vw;
		-moz-border-radius: 1.33vw;
		margin-top: 4vw;
	}
	#step02 .modal-content .modal_txt .modal_box .box_ttl {
		margin-bottom: 2.66vw;
	}
	#step02 .modal-content .modal_txt .modal_box .box_ttl span {
		display: inline-block;
		padding: 0 0.36vw;
		font-size: 4vw;
		font-weight: 500;
		line-height: 5.66vw;
		background: #faf0f0;
		margin-bottom: 1.24vw;
	}
	#step02 .modal-content .modal_txt .modal_box .box_ttl span:last-child {
		margin-bottom: 0;
	}
	#step02 .modal-content .modal_txt .modal_box .box_txt {
		font-size: 3.73vw;
		letter-spacing: -0.02em;
		line-height: 1.428em;
		font-weight: 500;
	}
	#step02 a.js-modal-close {
		display: block;
		width: 14.66vw;
		height: 14.66vw;
		position: absolute;
		top: 0;
		right: 0;
		background-image: url("../images/modal_close_btn_sp.png");
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		cursor: pointer;
	}

	#history {
		margin-top: -0.1vw;
	}
	#history .history_head {
	}
	#history .history_head .left {
		width: 100%;
		box-sizing: border-box;
		padding: 3.866vw 0 4.12vw;
		text-align: center;
		background: #cbefff;
	}
	#history .history_head .left img {
		width: 88.53vw;
	}
	#history .history_head .right {
		width: 100%;
		box-sizing: border-box;
		padding: 4.77vw 0;
		background: #ffe55a;
	}
	#history .history_head .right .scroll {
		height: 133.688vw;
		overflow-y: scroll;
	}
	#history .history_head .right .bg {
		width: 93.12vw;
		margin: 0 auto;
		background: #fff;
		box-sizing: border-box;
		padding: 0 5.95vw 0 0.34vw;
		border-radius: 1.6vw;
		-webkit-border-radius: 1.6vw;
		-moz-border-radius: 2.5vw;
	}
	#history .history_head .right .bg .chronology {
		padding: 3.12vw 0 7.43vw;
		position: relative;
	}
	#history .history_head .right .bg .chronology .btn {
		width: 70.4vw;
		position: absolute;
		left: 18.45vw;
		top: 123.27vw;
	}
	#history .history_head .right .bg .chronology .btn a {
		display: block;
		width: 100%;
	}
	#history .history_btm {
	}
	#history .history_btm .bg {
		padding: 7.86vw 0 26.66vw;
		position: relative;
		background: url("../images/history_btm_bg.png") no-repeat right top #f7f7f1;
		background-size: 79.95vw;
	}
	#history .history_btm .ttl {
		width: 77.858vw;
		margin-left: 6.4vw;
		margin-bottom: 8.533vw;
	}
	#history .history_btm .history_btm_slider {
		width: 91.93vw;
		margin: 0 auto;
	}
	#history .history_btm .history_btm_slider .history_btm_box {
	}
	#history .history_btm .history_btm_slider .prev-arrow {
		width: 8.14vw;
		position: absolute;
		bottom: -15.6vw;
		left: 31.53vw;
		cursor: pointer;
	}
	#history .history_btm .history_btm_slider .next-arrow {
		width: 8.14vw;
		position: absolute;
		bottom: -15.6vw;
		right: 31.53vw;
		cursor: pointer;
	}
	#history .history_btm .slick-num2 {
		text-align: center;
		position: absolute;
		bottom: 11.33vw;
		left: 50%;
		transform: translateX(-50%);
		z-index: 4;
	}
	#history .history_btm .slick-num2 .num_inner {
		display: inline-block;
		font-size: 4vw;
		font-weight: 500;
	}
	#history .history_btm .slick-num2 .num_inner .nowcnt {
		font-size: 4vw;
	}
	#history .history_btm .slick-num2 .num_inner .allcnt {
		font-size: 4vw;
	}
	#history .history_btm .history_btm_btn {
		padding-top: 10.66vw;
	}
	#history .history_btm .history_btm_btn .btn {
		width: 100%;
	}
	#history .history_btm .history_btm_btn .btn a {
		display: block;
		width: 100%;
	}

	#step03 img {
		display: block;
	}
	#step03 .bg {
		height: 100%;
		padding: 20.71vw 0 9.46vw;
		background: url("../images/step03_bg_sp.png") no-repeat;
		background-size: cover;
	}
	#step03 .step03_head {
		width: 91.098vw;
		margin: 0 auto 8vw;
		padding: 6.4vw 0 8vw;
		border-radius: 3.73vw;
		-webkit-border-radius: 3.73vw;
		-moz-border-radius: 3.73vw;
		background-color: #aec0e0;
		background-image: url("../images/step03_bg_txt_sp.png");
		background-repeat: no-repeat;
		background-size: 89.3vw;
		background-position: 0.24vw 6.87vw;
		position: relative;
	}
	#step03 .step03_head .step03_img {
		width: 36.51vw;
		position: absolute;
		top: -14.35vw;
		right: 0.6vw;
	}
	#step03 .step03_head .inner {
	}
	#step03 .step03_head .num {
		width: 24.523vw;
		margin: 0 auto 5.53vw;
	}
	#step03 .step03_head .ttl {
		width: 83.6vw;
		margin: 0 0 4.13vw 4.73vw;
		font-size: 4vw;
		line-height: 8.266vw;
		font-weight: 500;
		background: #fff;
		text-align: center;
	}
	#step03 .step03_head .txt {
		width: 74.666vw;
		margin: 0 0 6.66vw 7.05vw;
		font-size: 3.73vw;
		line-height: 1.43em;
		font-weight: 500;
	}
	#step03 .step03_head .txt span.line {
		background: url("../images/step03_txt_line.png") no-repeat;
		padding: 1vw 0 0 0.5vw;
	}
	#step03 .step03_head .txt span.big {
		font-size: 6vw;
	}
	#step03 .step03_head .step03_cont {
		width: 78.13vw;
		margin-left: 5.82vw;
	}
	#step03 .step03_head .step03_box {
		margin-bottom: 4vw;
	}
	#step03 .step03_head .step03_box:last-child {
		margin-bottom: 0;
	}
	#step03 .merit {
		width: 90vw;
		margin: 0 auto 3.92vw;
	}
	#step03 .merit .merit_ttl {
		width: 74.53vw;
		margin: 0 auto 4vw;
		font-size: 3.73vw;
		line-height: 10vw;
		font-weight: bold;
		text-align: center;
		color: #fff;
		background: #00dc09;
		border-radius: 3.2vw;
		-webkit-border-radius: 3.2vw;
		-moz-border-radius: 3.2vw;
		position: relative;
	}
	#step03 .merit .merit_ttl::before {
		position: absolute;
		content: "";
		width: 0;
		height: 0;
		left: 50%;
		bottom: -1.86vw;
		border-style: solid;
		border-color: #00dc09 transparent transparent transparent;
		border-width: 2.53vw 1.53vw 0px 1.53vw;
	}
	#step03 .merit .merit_cont {
		width: 74.45vw;
		margin: 0 auto 13.33vw;
		flex-wrap: wrap;
	}
	#step03 .merit .merit_box {
		width: 30vw;
		text-align: center;
		margin-bottom: 8vw;
	}
	#step03 .merit .merit_box:nth-child(n + 3) {
		margin-bottom: 0;
	}
	#step03 .merit .merit_box .num {
		margin: 0 auto 2vw;
	}
	#step03 .merit .box01 .num {
		width: 17.46vw;
	}
	#step03 .merit .box02 .num {
		width: 18.53vw;
	}
	#step03 .merit .box03 .num {
		width: 18.4vw;
	}
	#step03 .merit .box04 .num {
		width: 18.8vw;
	}
	#step03 .merit .merit_box .merit_box_img {
		margin-bottom: 2.66vw;
	}
	#step03 .merit .merit_box .merit_box_txt {
		font-size: 3.2vw;
		line-height: 1.5em;
		font-weight: bold;
	}
	#step03 .merit .merit_box .merit_box_txt span {
		font-size: 3.73vw;
	}
	#step03 .merit .box04 .merit_box_txt {
		width: 41.6vw;
		position: relative;
		left: 50%;
		transform: translateX(-50%);
	}
	#step03 .system {
		width: 90vw;
		margin: 0 auto;
		padding: 15.75vw 0 9.75vw;
		background: #f5ffe0;
		position: relative;
	}
	#step03 .system .ttl {
		width: 67.26vw;
		position: absolute;
		top: -2.54vw;
		left: 50%;
		transform: translateX(-50%);
	}
	#step03 .system .system_box {
		width: 79.438vw;
		margin: 0 auto;
	}
	#step03 .system .system_box .system_box_img {
		margin-bottom: 5.33vw;
	}
	#step03 .system .system_box .system_box_txt {
		width: 78.933vw;
		margin: 0 auto;
	}
	#step03 .system .system_box .system_box_txt .txt {
		font-size: 3.73vw;
		letter-spacing: -0.05em;
		line-height: 1.53em;
		font-weight: 500;
	}
	#step03 .system .system_box .system_box_txt .btn {
		width: 70.4vw;
		margin: 6.66vw auto 0;
	}
	#step03 .system .system_box .system_box_txt .btn a {
		display: block;
		width: 100%;
	}
	#step03 .support {
		height: 190.01vw;
		box-sizing: border-box;
		padding: 7.06vw 0 16.84vw;
		background: url("../images/step03_support_bg_sp.png") no-repeat center;
		background-size: cover;
	}
	#step03 .support .ttl_area {
		width: 66.2vw;
		margin: 0 0 3.06vw 17.33vw;
	}
	#step03 .support .ttl_area .hukidashi {
		width: 23.06vw;
		margin-bottom: 0.93vw;
	}
	#step03 .support .ttl_area .ttl {
		width: 100%;
	}
	#step03 .support .txt {
		width: 72.13vw;
		margin: 0 auto 5.98vw;
		text-align: center;
		font-size: 3.73vw;
		line-height: 1.5em;
		font-weight: 500;
		background: #fff;
	}
	#step03 .support .support_cont {
		width: 72.36vw;
		margin: 0 auto 7.46vw;
	}
	#step03 .support .support_box {
		margin-bottom: 1.61vw;
	}
	#step03 .support .support_box:last-child {
		margin-bottom: 0;
	}
	#step03 .support .btn_txt {
		width: 55.64vw;
		margin: 0 auto 2.66vw;
	}
	#step03 .support .btn {
		width: 75.11vw;
		margin: 0 auto;
	}
	#step03 .support .btn a {
		display: block;
		width: 100%;
	}

	#step04 {
	}
	#step04 .bg {
		background: #f7f7f1;
		position: relative;
	}
	#step04 .step04_img {
		width: 14.6vw;
		position: absolute;
		right: 0;
		bottom: 0;
	}
	#step04 .inner {
		padding: 4.28vw 0 6.66vw;
		background: url("../images/step04_bg_txt_sp.png") no-repeat center 40.26vw;
		background-size: 84.17vw;
	}
	#step04 .num {
		width: 23.8vw;
		margin: 0 auto 3.6vw;
	}
	#step04 .ttl {
		width: 46.38vw;
		margin: 0 auto 8.26vw;
	}
	#step04 .step04_cont {
		position: relative;
	}
	#step04 .step04_cont .hukidashi {
		width: 41.37vw;
		margin-left: 15.06vw;
		margin-bottom: 2vw;
	}
	#step04 .step04_cont .step04_slider {
	}
	#step04 .step04_cont .scroll {
		width: 94.26vw;
		margin: 0 0 0 5.26vw;
	}
	#step04 .step04_cont .thumbnail-thumb {
	}
	#step04 .step04_cont .thumbnail-thumb.slick-slider .slick-track {
		width: 193vw !important;
	}
	#step04 .step04_cont .thumbnail-thumb.slick-slider .slick-list {
		overflow: scroll;
	}
	#step04 .step04_cont .thumbnail-thumb .department {
		font-size: 4.26vw;
		line-height: 8.71vw;
		font-weight: bold;
		text-align: center;
		box-sizing: border-box;
		background: #cccccc;
		border: solid 0.26vw;
		border-radius: 0.81vw;
		-webkit-border-radius: 0.81vw;
		-moz-border-radius: 0.81vw;
		cursor: pointer;
		padding: 0 5.33vw;
	}
	#step04 .step04_cont .thumbnail-thumb .department.mr0 {
		margin-right: 0;
	}
	#step04 .step04_cont .thumbnail-thumb .department.slick-current {
		background: #d8ff01;
	}
	#step04 .step04_cont .thumbnail {
	}
	#step04 .step04_cont .thumbnail .thumbnail_box {
		margin: 0 2.3vw;
		padding: 5.8vw 0 2.93vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .wrap {
		height: 143.166vw;
		box-shadow: 0.3vw 0.66vw 0.66vw rgba(0, 0, 0, 0.5);
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_img {
		width: 100%;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt {
		width: 100%;
		height: calc(100% - 56vw);
		background: #fff;
		box-sizing: border-box;
		padding: 6.66vw 0 0;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .txt {
		font-size: 4.26vw;
		font-weight: 500;
		margin-left: 5.61vw;
	}
	#step04 .step04_cont .thumbnail .box01 .thumbnail_box_txt .txt {
		margin-bottom: 4.06vw;
	}
	#step04 .step04_cont .thumbnail .box02 .thumbnail_box_txt .txt {
		margin-bottom: 12.13vw;
	}
	#step04 .step04_cont .thumbnail .box03 .thumbnail_box_txt .txt {
		margin-bottom: 3.96vw;
	}
	#step04 .step04_cont .thumbnail .box04 .thumbnail_box_txt .txt {
		margin-bottom: 3.96vw;
	}
	#step04 .step04_cont .thumbnail .box05 .thumbnail_box_txt .txt {
		margin-bottom: 4.14vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .txt span {
		display: inline-block;
		line-height: 7.19vw;
		background: #d6ff85;
		padding: 0 2vw;
		margin-bottom: 1.29vw;
	}
	#step04 .step04_cont .thumbnail .box03 .thumbnail_box_txt .txt span:first-child {
		padding-left: 0;
		font-feature-settings: "palt";
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .txt span:last-child {
		margin-bottom: 0;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .txt span.indent {
		padding: 0 !important;
		margin: 0 !important;
		background: none !important;
		letter-spacing: -0.4em;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt dl {
		width: 64.68vw;
		margin: 0 auto;
		box-sizing: border-box;
		padding: 4.8vw 0 5.2vw;
		background: #ebffc2;
		text-align: center;
		border-radius: 0.8vw;
	}
	#step04 .step04_cont .thumbnail .box01 .thumbnail_box_txt dl {
		margin-bottom: 10.19vw;
	}
	#step04 .step04_cont .thumbnail .box02 .thumbnail_box_txt dl {
		margin-bottom: 16.19vw;
	}
	#step04 .step04_cont .thumbnail .box03 .thumbnail_box_txt dl {
		margin-bottom: 8vw;
	}
	#step04 .step04_cont .thumbnail .box04 .thumbnail_box_txt dl {
		margin-bottom: 16.19vw;
	}
	#step04 .step04_cont .thumbnail .box05 .thumbnail_box_txt dl {
		margin-bottom: 10.19vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt dl dt {
		font-size: 4.26vw;
		line-height: 1;
		font-weight: bold;
		margin-bottom: 3.2vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box.box02 .thumbnail_box_txt dl dt {
		margin-bottom: 1.78vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box.box03 .thumbnail_box_txt dl dt {
		margin-bottom: 1.78vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box.box04 .thumbnail_box_txt dl dt {
		margin-bottom: 1.78vw;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt dl dd {
		font-size: 3.73vw;
		line-height: 1.39em;
		font-weight: 500;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .btn {
		width: 58.38vw;
		margin: 0 auto;
	}
	#step04 .step04_cont .thumbnail .thumbnail_box .thumbnail_box_txt .btn a {
		display: block;
		width: 100%;
	}
	#step04 .btm_cont {
	}
	#step04 .btm_btn {
		width: 100%;
	}
	#step04 .btm_btn a {
		display: block;
		width: 100%;
		transition: 0.3s;
	}

	footer {
		margin-top: -0.5vw;
		padding-bottom: 19.2vw;
	}
	footer .copyright {
		font-size: 2.93vw;
		line-height: 9.33vw;
		font-weight: 500;
		color: #fff;
		background: #000;
		text-align: center;
	}
}
