﻿@import"https://maxst.icons8.com/vue-static/landings/line-awesome/line-awesome/1.3.0/css/line-awesome.min.css";
.mt5 {
	margin-top: 5px !important
}
.pt5 {
	padding-top: 5px !important
}
.mr5 {
	margin-right: 5px !important
}
.pr5 {
	padding-right: 5px !important
}
.mb5 {
	margin-bottom: 5px !important
}
.pb5 {
	padding-bottom: 5px !important
}
.ml5 {
	margin-left: 5px !important
}
.pl5 {
	padding-left: 5px !important
}
.mt10 {
	margin-top: 10px !important
}
.pt10 {
	padding-top: 10px !important
}
.mr10 {
	margin-right: 10px !important
}
.pr10 {
	padding-right: 10px !important
}
.mb10 {
	margin-bottom: 10px !important
}
.pb10 {
	padding-bottom: 10px !important
}
.ml10 {
	margin-left: 10px !important
}
.pl10 {
	padding-left: 10px !important
}
.mt15 {
	margin-top: 15px !important
}
.pt15 {
	padding-top: 15px !important
}
.mr15 {
	margin-right: 15px !important
}
.pr15 {
	padding-right: 15px !important
}
.mb15 {
	margin-bottom: 15px !important
}
.pb15 {
	padding-bottom: 15px !important
}
.ml15 {
	margin-left: 15px !important
}
.pl15 {
	padding-left: 15px !important
}
.mt20 {
	margin-top: 20px !important
}
.pt20 {
	padding-top: 20px !important
}
.mr20 {
	margin-right: 20px !important
}
.pr20 {
	padding-right: 20px !important
}
.mb20 {
	margin-bottom: 20px !important
}
.pb20 {
	padding-bottom: 20px !important
}
.ml20 {
	margin-left: 20px !important
}
.pl20 {
	padding-left: 20px !important
}
.mt25 {
	margin-top: 25px !important
}
.pt25 {
	padding-top: 25px !important
}
.mr25 {
	margin-right: 25px !important
}
.pr25 {
	padding-right: 25px !important
}
.mb25 {
	margin-bottom: 25px !important
}
.pb25 {
	padding-bottom: 25px !important
}
.ml25 {
	margin-left: 25px !important
}
.pl25 {
	padding-left: 25px !important
}
.mt30 {
	margin-top: 30px !important
}
.pt30 {
	padding-top: 30px !important
}
.mr30 {
	margin-right: 30px !important
}
.pr30 {
	padding-right: 30px !important
}
.mb30 {
	margin-bottom: 30px !important
}
.pb30 {
	padding-bottom: 30px !important
}
.ml30 {
	margin-left: 30px !important
}
.pl30 {
	padding-left: 30px !important
}
.mt35 {
	margin-top: 35px !important
}
.pt35 {
	padding-top: 35px !important
}
.mr35 {
	margin-right: 35px !important
}
.pr35 {
	padding-right: 35px !important
}
.mb35 {
	margin-bottom: 35px !important
}
.pb35 {
	padding-bottom: 35px !important
}
.ml35 {
	margin-left: 35px !important
}
.pl35 {
	padding-left: 35px !important
}
.mt40 {
	margin-top: 40px !important
}
.pt40 {
	padding-top: 40px !important
}
.mr40 {
	margin-right: 40px !important
}
.pr40 {
	padding-right: 40px !important
}
.mb40 {
	margin-bottom: 40px !important
}
.pb40 {
	padding-bottom: 40px !important
}
.ml40 {
	margin-left: 40px !important
}
.pl40 {
	padding-left: 40px !important
}
.mt45 {
	margin-top: 45px !important
}
.pt45 {
	padding-top: 45px !important
}
.mr45 {
	margin-right: 45px !important
}
.pr45 {
	padding-right: 45px !important
}
.mb45 {
	margin-bottom: 45px !important
}
.pb45 {
	padding-bottom: 45px !important
}
.ml45 {
	margin-left: 45px !important
}
.pl45 {
	padding-left: 45px !important
}
.mt50 {
	margin-top: 50px !important
}
.pt50 {
	padding-top: 50px !important
}
.mr50 {
	margin-right: 50px !important
}
.pr50 {
	padding-right: 50px !important
}
.mb50 {
	margin-bottom: 50px !important
}
.pb50 {
	padding-bottom: 50px !important
}
.ml50 {
	margin-left: 50px !important
}
.pl50 {
	padding-left: 50px !important
}
.mt55 {
	margin-top: 55px !important
}
.pt55 {
	padding-top: 55px !important
}
.mr55 {
	margin-right: 55px !important
}
.pr55 {
	padding-right: 55px !important
}
.mb55 {
	margin-bottom: 55px !important
}
.pb55 {
	padding-bottom: 55px !important
}
.ml55 {
	margin-left: 55px !important
}
.pl55 {
	padding-left: 55px !important
}
.mt60 {
	margin-top: 60px !important
}
.pt60 {
	padding-top: 60px !important
}
.mr60 {
	margin-right: 60px !important
}
.pr60 {
	padding-right: 60px !important
}
.mb60 {
	margin-bottom: 60px !important
}
.pb60 {
	padding-bottom: 60px !important
}
.ml60 {
	margin-left: 60px !important
}
.pl60 {
	padding-left: 60px !important
}
.mt100 {
	margin-top: 100px !important
}
.pt100 {
	padding-top: 100px !important
}
.mr100 {
	margin-right: 100px !important
}
.pr100 {
	padding-right: 100px !important
}
.mb100 {
	margin-bottom: 100px !important
}
.pb100 {
	padding-bottom: 100px !important
}
.ml100 {
	margin-left: 100px !important
}
.pl100 {
	padding-left: 100px !important
}
* {
	box-sizing: border-box
}
html {
	font-size: 18px;
	font-family: YuMincho, "Yu Mincho", serif
}

@media only screen and (max-width: 767px) {
html {
	font-size: 16px;
}
}

ul>li:before {
	content: none
}
p {
	line-height: 1.5
}
img {
	width: 100%
}
@media only screen and (max-width: 767px) {
.pcOnly {
	display: none !important
}
}
.spOnly {
	display: none !important
}
@media only screen and (max-width: 767px) {
.spOnly {
	display: inline-block !important
}
}
@media only screen and (max-width: 767px) {
.st-Main {
	margin-bottom: 0
}
}
.st-Assist a {
	color: #333;
	font-family: "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif
}
.st-Btns {
	width: auto;
	font-family: "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif
}
.st-Btns_Item-menu {
	width: auto
}
.st-Btns_Item-menu a {
	width: 150px;
	text-align: center;
	font-size: 14px;
	padding: 0
}
.st-Header_Nav {
	justify-content: flex-end
}
@media only screen and (max-width: 1024px) {
.st-Assist {
	display: none
}
}
ul>li {
	margin-bottom: 0
}
.sp_menu {
	display: none
}
@media only screen and (max-width: 1024px) {
.sp_menu {
	display: block;
	width: 80px
}
}
.st-Header-fixed .st-Btns, .st-Header-fixed .st-Btns_Item-menu {
	width: auto
}
@media only screen and (max-width: 767px) {
.st-Header-fixed .st-Btns, .st-Header-fixed .st-Btns_Item-menu {
	width: 80px
}
}
.st-Header-fixed .st-Btns_Item-menu a {
	width: 150px;
	font-size: 14px
}
.st-Wrapper {
	padding: 0
}
@media only screen and (max-width: 1024px) {
.Btns_sp_none {
	display: none
}
}
h3::before {
	content: none
}
.yumin {
	font-family: YuMincho, "Yu Mincho", serif
}
.yugothic {
	font-family: YuGothic, "Yu Gothic", sans-serif
}
.hirakaku {
	font-family: "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif
}
.ls {
	letter-spacing: -0.3rem;
	margin-left: -0.3rem
}
.st-Menu_Util {
	max-width: 490px;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 20px
}
.st-Menu_Util_oc {
	width: 49%;
	margin: 0;
	padding: 0;
	text-align: center
}
@media only screen and (max-width: 767px) {
.st-Menu_Util_oc {
	width: 100%
}
}
.st-Menu_Util_oc a {
	background: #cd255d;
	color: #fff;
	padding: 30px 15px;
	display: block;
	text-decoration: none
}
.st-Menu_Util_doc {
	width: 49%;
	margin: 0;
	padding: 0;
	text-align: center
}
@media only screen and (max-width: 767px) {
.st-Menu_Util_doc {
	width: 100%
}
}
.st-Menu_Util_doc a {
	border: solid 1px #cd255d;
	color: #cd255d;
	padding: 30px 15px;
	display: block;
	text-decoration: none
}
.cnt_inner {
	max-width: 1200px;
	width: 100%;
	margin: auto
}
.OC_h2 {
	text-align: center;
	font-size: 60px;
	font-weight: bold
}
@media only screen and (max-width: 767px) {
.OC_h2 {
	font-size: 31px
}
}
.OC_h2+p {
	text-align: center;
	font-size: 36px
}
@media only screen and (max-width: 767px) {
.OC_h2+p {
	font-size: 20px
}
}
h2::first-letter {
	font-size: 100%
}
.mv {
	background-position: right;
	background-size: cover
}
.mv_txt {
	height: calc( 90vh + 400px);
	position: relative
}
.mv_txt_lead {
	position: absolute;
	left: 0;
	bottom: 5%;
	color: #fff;
	font-size: 60px;
	line-height: 1.3;
	text-shadow: 3px 1px 4px rgba(76,75,75,.8901960784)
}
@media only screen and (max-width: 767px) {
.mv_txt_lead {
	font-size: 24px;
	width: 90%
}
}
.mv_txt_lead small {
	font-size: 60%
}
.mv_txt_lead h1 img {
	width: 100%;
	max-width: 800px
}

@media only screen and (max-width: 1200px) {
	.mv_txt_lead h1 img {
		max-width: 700px
	}
}

.mv_action {
	padding: 60px 0px;
	margin: auto;
	max-width: 1200px;
	width: 100%;
	text-align: center
}
@media only screen and (max-width: 767px) {
.mv_action {
	padding: 60px 0
}
}
.mv_action_lead {
	color: #fff;
	font-size: clamp(2.5rem, 0.27rem + 4.64vw, 3.75rem);
	text-shadow: 3px 2px 5px #666;
}
@media only screen and (max-width: 767px) {
.mv_action_lead {
	/*font-size: clamp(1.5rem, 0.964rem + 2.68vw, 2.25rem);*/
	display: none;
}
}
.mv_action_cont {
	background: #fff;
	width: 100%;
	border-radius: 50px;
	padding: 50px
}
@media only screen and (max-width: 1200px) {
.mv_action_cont {
	margin: 20px 5%;
	width: auto
}
}
@media only screen and (max-width: 767px) {
.mv_action_cont {
	padding: 20px 15px;
	border-radius: 20px
}
}
.mv_action_cont p {
	font-size: 34px
}
@media only screen and (max-width: 767px) {
.mv_action_cont p {
	font-size: 14px
}
}
.mv_action_cont p span {
	color: #cd255d;
	font-size: 150%;
	font-weight: bold
}
.mv_action_tlt {
	font-size: 48px;
	font-weight: bold
}
@media only screen and (max-width: 767px) {
.mv_action_tlt {
	font-size: 18px
}
}
.mv_action_subscription {
	background: #cd255d;
	font-size: 36px
}
@media only screen and (max-width: 767px) {
.mv_action_subscription {
	font-size: 15px;
	padding: 5px 0
}
}
.mv_action_subscription a {
	color: #fff;
	text-decoration: none;
	display: block
}
.mv_action_subscription a.sw-Blank {
	padding-right: 0
}
.program {
	padding: 3em 5%;
	background: #fff
}
.program_big {
	display: flex;
	margin-bottom: 3em
}
@media only screen and (max-width: 1024px) {
.program_big {
	flex-direction: column
}
}
@media only screen and (max-width: 767px) {
.program_big {
	margin-bottom: 1em
}
}
.program_big_imgr {
	flex-direction: row-reverse
}
@media only screen and (max-width: 1024px) {
.program_big_imgr {
	flex-direction: column
}
}
.program_big_imgl .program_big_right h3 {
margin:3.75rem 0 .5rem 50px
}
@media only screen and (max-width: 1024px) {
.program_big_imgl .program_big_right h3 {
	margin: 15px 0
}
}
.program_big_imgl .program_big_right p {
	padding: 0 0 0 50px
}
@media only screen and (max-width: 1024px) {
.program_big_imgl .program_big_right p {
	padding: 0
}
}
.program_big_imgl .program_big_right .cat {
	padding: 0 0 0 50px
}
@media only screen and (max-width: 1024px) {
.program_big_imgl .program_big_right .cat {
	padding: 0
}
}
.program_big_right {
	width: 50%
}
@media only screen and (max-width: 1024px) {
.program_big_right {
	width: 100%
}
}
.program_big_right h3 {
	border-bottom: solid 2px #f34d46;
margin:3.75rem 50px .5rem 0;
	padding: 0;
	color: #f34d46;
	font-size: 37px;
	display: inline-block
}
.program_big_right h3::before {
	content: none
}
@media only screen and (max-width: 1024px) {
.program_big_right h3 {
	margin: 15px 0;
	padding: 0
}
}
@media only screen and (max-width: 767px) {
.program_big_right h3 {
	font-size: 30px
}
}
.program_big_right h3 span {
	background-color: #d9e367;
	color: #fff;
	padding: 3px 5px 0;
	margin-bottom: -25px;
	font-size: 26px;
	position: relative;
	top: -7px;
}
.program_big_right p {
	padding: 0 50px 0 0;
	text-align: left;
	font-size: 24px
}
@media only screen and (max-width: 1024px) {
.program_big_right p {
	padding: 0;
	font-size: 18px
}
}
.program_big_right p .mogi_link {
	font-size: 24px
}
@media only screen and (max-width: 1024px) {
.program_big_right p .mogi_link {
	font-size: 18px
}
}

.program_big_right .cat {
	color: #f34d46;
	font-weight: bold;
	font-size: 20px;
	padding: 0 50px 0 0;
	margin-bottom: 1.5rem
}
.program_sub {
	display: flex;
	flex-wrap: wrap;
	gap: 1%;
}
.program_box {
	width: 32.6%;
	padding: 0;
}

@media only screen and (max-width: 1024px) {
.program_sub {
	gap: 3%;
}
.program_box {
	width: 48.5%
}
}
@media only screen and (max-width: 767px) {
.program_box {
	width: 100%
}
}
.program_box img {
	width: 100%
}
.program_box h3 {
	border-bottom: solid 2px #f34d46;
	display: inline-block;
	font-size: 30px;
	margin-top: 10px;
	margin-bottom: 10px;
	padding: 0;
	color: #f34d46
}
.program_box p {
	text-align: left
}
.program .program_txt_r {
	text-align: right
}

@media only screen and (max-width: 767px) {
.program .program_txt_r {
	font-size: 14px;
	text-align: left
}
}
.time_schedule {
	background: #ebebeb;
	padding: 4em 5%
}
.time_schedule dl {
	margin-bottom: 10px;
	display: flex;
	font-size: 24px;
	flex-wrap: wrap
}
@media only screen and (max-width: 1024px) {
.time_schedule dl {
	font-size: 18px
}
}
.time_schedule dl dd {
	background: #f34d46;
filter:progid:DXImageTransform.Microsoft.gradient( startColorstr="$start-color", endColorstr="$end-color", GradientType=1 );
	color: #fff;
	padding: 10px 25px;
	width: 35%;
	display: flex;
	align-items: center
}
@media only screen and (max-width: 1024px) {
.time_schedule dl dd {
	padding: 10px
}
}
@media only screen and (max-width: 767px) {
.time_schedule dl dd {
	width: 100%
}
}
.time_schedule dl dt {
	background: #fff;
	padding: 10px 25px;
	margin: 0 1%;
	flex-grow: 2;
	width: 45%;
	display: flex;
	align-items: center
}
@media only screen and (max-width: 1024px) {
.time_schedule dl dt {
	padding: 10px
}
}
@media only screen and (max-width: 767px) {
.time_schedule dl dt {
	width: 79%;
	margin: 0
}
}
.time_schedule dl dt+dt {
	width: 10%;
	flex-grow: 1;
	margin: 0
}
@media only screen and (max-width: 1024px) {
.time_schedule dl dt+dt {
	padding: 10px
}
}
@media only screen and (max-width: 767px) {
.time_schedule dl dt+dt {
	width: 18%;
	margin-left: 1%
}
}
#mogi_sche table {
	border-collapse: separate;
	border-spacing: 5px;
	width: 100%;
	font-size: 24px
}
@media only screen and (max-width: 1024px) {
#mogi_sche table {
	font-size: 18px
}
}
@media only screen and (max-width: 767px) {
#mogi_sche tr {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 3px
}
}
#mogi_sche th {
	background: #f34d46;
filter:progid:DXImageTransform.Microsoft.gradient( startColorstr="$start-color", endColorstr="$end-color", GradientType=1 );
	color: #fff;
	text-align: center;
	border: none
}
#mogi_sche td {
	border: none;
	font-weight: bold
}
@media only screen and (max-width: 767px) {
#mogi_sche td {
	width: 100%;
	padding: 0 10px
}
#mogi_sche td.sp_head {
	background: #f34d46;
filter:progid:DXImageTransform.Microsoft.gradient( startColorstr="$start-color", endColorstr="$end-color", GradientType=1 );
	color: #fff;
	margin-top: 10px
}
}
#mogi_sche td.gakka01 {
	color: #cd255d
}
#mogi_sche td.gakka02 {
	color: #0066a2
}
#mogi_sche td.gakka03 {
	color: #306751
}
#mogi_sche td.gakka04 {
	color: #f39800
}
.fl_d_c span {
	display: flex;
	flex-direction: column;
	align-items: baseline;
	align-self: center
}
.fl_d_c span small {
	font-size: 14px;
	line-height: 1.2;
	display: inline-block
}
.c-gap_wrap {
	position: relative;
	width: 100%;
	height: 560px
}
@media only screen and (max-width: 767px) {
.c-gap_wrap {
	height: 200px
}
}
.c-gap_wrap::before {
	content: "";
	display: block;
	position: fixed;
	z-index: -1;
	top: 0;
	left: 0;
	background: url(/oc2025_winter/img/gap01.webp);
	background-size: cover;
	width: 100%;
	height: 100vh;
	background-position: center
}
.c-gap_wrap2 {
	position: relative;
	width: 100%;
	height: 560px
}
@media only screen and (max-width: 767px) {
.c-gap_wrap2 {
	height: 200px
}
}
.c-gap_wrap2::before {
	content: "";
	display: block;
	position: fixed;
	z-index: -2;
	top: 0;
	left: 0;
	background: url(/oc2025_winter/img/gap02.jpg);
	background-size: cover;
	width: 100%;
	height: 100vh;
	background-position: center
}
.c-gap_wrap2.active::before {
	z-index: -1
}
.access {
	padding: 3em 5%;
	background: url(/oc2025_winter/img/common/access.webp)
}
.access_cnt {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}
.access_cnt_txt {
	width: calc(100% - 720px);
	font-weight: 500
}
@media only screen and (max-width: 1024px) {
.access_cnt_txt {
	width: 100%
}
}
.access_cnt_txt_h {
	font-size: 36px;
	font-weight: bold
}
@media only screen and (max-width: 767px) {
.access_cnt_txt_h {
	font-size: 24px
}
}
.access_cnt_img {
	background: #fff;
	padding: 1em;
	width: 700px;
	text-align: center
}
@media only screen and (max-width: 1024px) {
.access_cnt_img {
	width: 100%;
	max-width: 700px;
	margin: auto
}
}
.link {
	color: #333;
	display: block
}
.link::before {
	content: url(/oc2025_winter/img/common/arrow.png);
	vertical-align: middle;
	padding-right: 5px
}
.stay {
	padding: 3em 5%;
	background: #fff
}
.stay_inner {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}
.stay_img {
	width: 530px
}
@media only screen and (max-width: 1024px) {
.stay_img {
	max-width: 530px;
	width: 100%
}
}
@media only screen and (max-width: 767px) {
.stay_img {
	order: 2
}
}
.stay_txt {
	width: calc(100% - 540px);
	padding-left: 15px
}
@media only screen and (max-width: 1024px) {
.stay_txt {
	width: 100%;
	padding-left: 0
}
}
@media only screen and (max-width: 767px) {
.stay_txt {
	order: 1
}
}
.stay_txt_h3 {
	font-size: 36px;
	font-weight: bold
}
@media only screen and (max-width: 767px) {
.stay_txt_h3 {
	font-size: 26px
}
}
.stay_txt_note {
	font-size: 14px;
	margin-top: 20px
}
.stay .yoyaku div {
	display: inline-block;
	border-radius: 10px;
	border: solid 1px #333;
	padding: 5px 10px;
	margin-bottom: 10px;
	font-weight: bold
}
.tel {
	background: #f34d46;
	color: #fff;
	border-radius: 15px;
	text-align: center;
	font-size: 18px;
	padding: 15px
}
@media only screen and (max-width: 767px) {
.tel {
	display: flex;
	flex-direction: column
}
}
.tel span {
	font-size: 36px;
	vertical-align: middle;
	font-weight: bold
}
.tel span a {
	color: #fff;
	text-decoration: none
}
.event {
/*
	overflow: hidden;
*/
	overflow: visible;
	position: relative;
	z-index: 3;
	padding: 70px 0 110px;
	background: #fff
}
@media only screen and (max-width: 767px) {
.event {
	padding: 25px 0 50px
}
}
.event_inner {
	position: relative;
	z-index: 3;
	padding: 5em 5%
}
@media only screen and (max-width: 767px) {
.event_inner {
	padding: 2em 5%
}
}
.event_inner .OC_h2 {
	padding-top: 1em
}
.event_img {
	margin: 60px 0 30px
}
@media only screen and (max-width: 767px) {
.event_img {
	margin: 30px 0
}
}
.event_bg {
	background: #b4d8ae;
	background: -moz-linear-gradient(left, #b4d8ae 0%, #eebacb 100%);
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, #b4d8ae), color-stop(100%, #eebacb));
	background: -webkit-linear-gradient(left, #b4d8ae 0%, #eebacb 100%);
	background: -o-linear-gradient(left, #b4d8ae 0%, #eebacb 100%);
	background: -ms-linear-gradient(left, #b4d8ae 0%, #eebacb 100%);
	background: linear-gradient(to right, #b4d8ae 0%, #eebacb 100%);
filter:progid:DXImageTransform.Microsoft.gradient( startColorstr="$start-color", endColorstr="$end-color", GradientType=1 );
	transform: skewY(356deg);
	position: absolute;
	z-index: 0;
	width: 100%;
	height: 87%
}
.special {
	padding: 3em 5%;
	background: #fff
}
.special_bnr {
	display: flex;
	margin-top: 100px
}
@media only screen and (max-width: 767px) {
.special_bnr {
	margin-top: 20px;
	flex-direction: column
}
}
.special_bnr div {
	width: 33%;
	padding: 5px
}
@media only screen and (max-width: 767px) {
.special_bnr div {
	width: 100%
}
}
.special_bnr div img {
	width: 100%
}
.st-Footer {
	background: #fff
}
@media only screen and (max-width: 767px) {
.st-Footer {
	padding: 1rem 15px
}
}
.st-Footer_Inner {
	flex-wrap: wrap;
	border-bottom: none
}
.st-Footer_Left {
	width: 30%;
	flex: 0 0 30%
}
@media only screen and (max-width: 767px) {
.st-Footer_Left {
	width: 100%;
	flex: 0 0 100%;
	order: 1
}
}
.st-Footer_Left h2 {
	position: relative;
	padding: 50px 0
}
@media only screen and (max-width: 767px) {
.st-Footer_Left h2 {
	padding: 15px 0;
	margin: 0 0 20px
}
}
.st-Footer_Left h2::after {
	position: absolute;
	right: 0;
	top: 0;
	content: "";
	width: 20px;
	height: 100%;
	background: #f34d46
}
@media only screen and (max-width: 767px) {
.st-Footer_Left h2::after {
	height: 10px;
	width: 100%;
	top: initial;
	bottom: 0
}
}
.st-Footer_Right {
	width: 70%;
	text-align: left;
	flex: 1 1 70%
}
@media only screen and (max-width: 767px) {
.st-Footer_Right {
	width: 100%;
	flex: 1 1 100%;
	order: 2
}
.st-Footer_Right h2 {
	margin: 10px 0
}
}
.st-Footer_Center {
	width: 100%
}
@media only screen and (max-width: 767px) {
.st-Footer_Center {
	order: 3
}
}
.st-Footer_Column {
	flex-direction: column;
	align-items: flex-start;
	padding-left: 10%
}
@media only screen and (max-width: 767px) {
.st-Footer_Column {
	padding-left: 0
}
}
.st-Footer_Column p {
	margin-bottom: 10px
}
.st-Address_Txt {
	color: #333;
	text-align: center;
font-size:.88rem
}
@media only screen and (max-width: 767px) {
.st-Address_Txt {
	text-align: left
}
}
.st-Address_Txt a {
	color: #cd255d
}
.st-Footer_SiteInfo {
	justify-content: center
}
.st-Footer_SiteInfo_Item>a {
	color: #333;
	text-decoration: underline;
font-size:.88rem
}
.st-Footer_Copyright {
	color: #333;
	padding: 0
}
.SNS_List {
	display: flex;
	justify-content: center
}
.SNS_List li {
	margin: 0 20px;
	padding: 0
}
.st-jizen {
	position: fixed;
	right: 20px;
	bottom: 0px;
	z-index: 400
}
.st-jizen a {
	width: 159px;
	height: 69px;
	position: relative;
	display: block;
	z-index: 400
}
@media only screen and (max-width: 767px) {
.st-jizen a {
	width: 100px;
	height: auto
}
}
#oc2023 .mv {
	background-image: url(/oc2025_winter/img/mv.webp);
	background-position-y: 0;
}
#oc2023au .mv {
	background-image: url(/oc2025_winter/img/mv.jpg)
}
@media screen and (min-width: 768px) {
#oc2023au .mv {
	background-position-y: -20vw
}
}
@media only screen and (max-width: 767px) {
#oc2023 .mv {
	background-image: url(/oc2025_winter/img/mv_sp.webp);
	background-size: 100%;
	background-position: 0 clamp(-2.375rem, -8.56rem + 17.86vw, 0rem);
	background-repeat: no-repeat;
	background-color: #fff;
}
}
#oc202306 .mv_txt_lead h1 img {
	max-width: 601px
}
#oc2023ao .c-gap_wrap::before {
	background-image: url(/oc2023_sougou/img/gap01.jpg);
	background-position: center
}
#oc202306 .program_big_right h3, #oc202306 .program_box h3 {
	color: #f34d46;
	border-bottom: solid 2px #f34d46
}
#oc2023ao .program_big_right h3, #oc2023ao .program_box h3 {
	color: #66bc70;
	border-bottom: solid 2px #66bc70
}
#oc202306 .time_schedule dl dd {
	background: #f34d46;
filter:progid:DXImageTransform.Microsoft.gradient( startColorstr="$start-color", endColorstr="$end-color", GradientType=1 )
}
#oc2023ao .time_schedule dl dd {
	background: #f34d46;
filter:progid:DXImageTransform.Microsoft.gradient( startColorstr="$start-color", endColorstr="$end-color", GradientType=1 )
}
#oc2023au .time_schedule dl dd {
	background: #f34d46;
filter:progid:DXImageTransform.Microsoft.gradient( startColorstr="$start-color", endColorstr="$end-color", GradientType=1 )
}
#oc2023ao .time_schedule dl dt {
	width: 50%
}
#oc2023ao .time_schedule dl dt+dt {
	width: 10%
}
@media only screen and (max-width: 767px) {
#oc2023ao .time_schedule dl dt, #oc202306 .time_schedule dl dt {
	width: 68%
}
#oc2023ao .time_schedule dl dt+dt, #oc202306 .time_schedule dl dt+dt {
	width: 27%
}
}
#oc202306 .tel {
	background: #f34d46
}
#oc2023ao .tel {
	background: #66bc70
}
#oc202306 .st-Footer_Left h2::after {
	background: #f34d46
}
#oc2023ao .st-Footer_Left h2::after {
	background: #66bc70
}

/*******************************************************/

/* 違いを知ろう！大商大の学科研究 */
.program_big {
	display: flex;
	margin-top: 1em;
	margin-bottom: 3em;
}

.program_big_imgl .program_big_right h3 {
	margin-top: 0;
}

.program_big_right h6 {
	margin: 0 0 0.5rem 50px;
	color: #f34d46;
}

.program_big_right h6 span {
	background: #f34d46;
	color: #fff;
	letter-spacing: 0;
	display: table;
	margin: 0 0 8px;
	padding: 8px;
}

.program_big_imgl .program_big_right figure {
	width: 60%;
	margin: auto;
}

.program_big_imgl .program_big_right p {
	padding: 0 0 0 50px;
	text-align: left;
	font-size: 24px;
}

@media only screen and (max-width: 1200px) {
	.program_big {
		flex-direction: column;
	}
	.program_big_imgl .program_big_right h6 {
		margin: 15px 0 0;
	}
	.program_big_imgl .program_big_right h3 {
		margin: 15px 0;
	}
	.program_big_imgl .program_big_right h3:after {
		top: -60px;
	}
	.program_big_imgl .program_big_right h3 span {
		display: inline;
	}
	.program_big_imgl .program_big_right p {
		padding: 0;
	}
	.program_big_imgl .program_big_right {
		width: 100%;
	}
}

@media only screen and (max-width: 767px) {
	.program_big_imgl .program_big_right h3 {
		display: block;
	}

	.program_big_imgl .program_big_right h3 span {
		display: table;
		font-size: 20px;
	}

	.program_big_imgl .program_big_right h3:after {
		top: 0;
		width: clamp(4.375rem, 1.393rem + 12.72vw, 7.5rem);
		height: clamp(4.375rem, 1.393rem + 12.72vw, 7.5rem);
		right: clamp(-0.875rem, -1.71rem + 3.56vw, 0rem);
	}

	.program_big_imgl .program_big_right figure {
		width: 100%;
	}

	.SNS_List li {
		margin: 0 14px;
		padding: 0;
	}
}

@media only screen and (min-width: 768px) {
	.mv_action_cont p {
		font-size: clamp(1.313rem, -0.007rem + 2.75vw, 1.75rem);
		/* 1024px:28px 769px:21px: */
	}

	.mv_action_subscription {
		font-size: clamp(1.875rem, 0.744rem + 2.35vw, 2.25rem);
		/* 1024px:36px 769px:30px: */
	}
}

/** メインビジュアル **/

@media only screen and (max-width: 1200px) {
	.mv_txt {
	height: calc( 90vh + 400px);
	}
}

.mv_txt_lead {
	bottom: auto;
	top: 32%;
}

.mv_action_lead {
	text-align: center;
	margin-top: 1em;
}

@media only screen and (max-width: 767px) {
	.mv_txt_lead {
		font-size: clamp(2.25rem, 0.819rem + 6.11vw, 3.75rem);
		/* 768px:60px 375px:36px: */
	}

	.mv_action_tlt {
		font-size: clamp(1.25rem, -0.42rem + 7.12vw, 3rem);
		/* 768px:48px 375px:20px: */
	}

	#oc2023au .mv {
		background-position: 0 clamp(-4.375rem, -8.56rem + 17.86vw, 0rem);
		background-size: 100%;
	}

	.mv_action_cont p {
		font-size: clamp(1rem, 0.523rem + 2.04vw, 1.5rem);
		/* 768px:24px 375px:16px: */
		margin-bottom: 0.6rem;
	}

	.mv_txt {
		height: calc((100vw / 16 * 35) - 60px);
	}

	.mv_txt_lead {
		position: static;
		padding-top: clamp(15rem, 9.036rem + 25.45vw, 21.25rem);
		margin-left: auto;
		margin-right: auto;
		display: none;
		/* 768px:340px 375px:240px: */
	}

	.mv_action_lead {
		text-align: center;
		margin-top: 1em;
	}

	.mv_action {
		padding: 60px 0;
		background: url(/oc2025_winter/img/mv_sp_bottom.jpg);
		background-size: cover;
		background-position-x: center;
	}
}

@media only screen and (max-width: 533px) {
	.mv_txt {
		height: calc(100vh - 60px);
	}
}

/**　違いを知ろう！大商大の学科研究　*******************************************/

@media only screen and (max-width: 767px) {
	.program_big_imgl .program_big_right p {
		font-size: clamp(1.125rem, 0.767rem + 1.53vw, 1.5rem);
		/* 768px: 24px 375px: 18px: */
	}

	.program_big.program_big_imgl figure	{
		margin: 0 auto;
		width: 100%;
	}

}

/**　プログラム　*******************************************/
@media only screen and (max-width: 767px) {
	.program_box h3{
		font-size: clamp(1.5rem, 1.142rem + 1.53vw, 1.875rem);
		/* 768px: 30px 375px: 24px: */
	}
	
	.program_box h3.small{
		font-size: clamp(1.375rem, 0.898rem + 2.04vw, 1.875rem);
		/* 768px: 30px 375px: 22px: */
	}

	.program_box figure{
		margin: 0 auto;
		width: 80%;
	}

	.program_big_right h3{
		font-size: clamp(1.5rem, 1.142rem + 1.53vw, 1.875rem);
		/* 768px: 30px 375px: 24px: */
	}

}

.program .tel{
	max-width: 1200px;
	width: 100%;
	margin: auto;
}

@media only screen and (min-width: 768px) {
	.program .tel{
		font-size: 24px;
	}
}

/**　ジェラート　*********************************************************/
.gelato {
	padding: 6px 0;
	background: #fff;
	border-top: 3px solid #f90;
	border-bottom: 3px solid #f90;
}

.gelato_outer {
	padding: 2em 0;
	border-top: 10px solid #f90;
	border-bottom: 10px solid #f90;
}

.flex {
	display: flex;
}

.gelato_ttl {
	width: 100%;
	flex-wrap: nowrap;
}

.gelato p,
.gelato figure {
	margin: 0;
}

.gelato_ttl img {
	max-width: 800px;
	margin-bottom: 1rem;
}

.gelato figure img {
	max-width: none;
	width: 299px;
}

.gelato figure {
	width: 300px;
	margin-right: 50px;
}

.galato_ttl_txt {
	width: 850px;
}

@media only screen and (max-width: 1024px) {
	.flex {
		flex-direction: column;
	}

	.gelato_inner {
		text-align: center;
		padding: 0 5%;
	}

	.gelato figure {
		width: auto;
		margin-right: 0;
	}

	.gelato figure {
		width: auto;
		margin-right: 0;
		order: 2;
	}

	.gelato_ttl img {
		max-width: 100%;
		margin-bottom: 1rem;
	}

	.galato_ttl_txt {
		width: auto;
		order: 1;
	}

	.gelato p {
		margin: 0 0 1rem;
		text-align-last: left;
	}
}

.program_big_imgl img,
.program_big_imgr img {
	object-fit: contain;
}



/**　無料宿泊サービス　*******************************************/


	.stay .stay_txt_note.icon li:before {
		content:"※";
		background: none;
		top: 0;
	}



@media only screen and (max-width: 767px) {
	.stay p {
		font-size: clamp(0.875rem, 0.636rem + 1.02vw, 1.125rem);
		/* 768px: 18px 375px: 14px: */
	}

	.stay .stay_txt_note {
		font-size: 14px;
	}
	
	.stay .tel {
		font-size: clamp(0.875rem, 0.636rem + 1.02vw, 1.125rem);
		/* 768px: 18px 375px: 14px: */
		padding: 6px;
		line-height: 1.2;
	}

	.stay .tel span {
		font-size: clamp(1.125rem, 0.767rem + 1.53vw, 1.5rem);
		/* 768px: 24px 375px: 18px: */
	}
	
	.stay .stay_img img{
		width: 80%;
		margin: auto;
	}
	.stay .yoyaku div{
		font-size: 14px;
		padding: 3px 9px;
		margin-bottom: 5px;
	}
}

/**　無料宿泊サービス　*******************************************/
@media only screen and (max-width: 767px) {
	.st-Footer_Left h2{
		margin-bottom: 1rem;
		padding: 10px 0;
	}
	.st-Footer_Left h2::after{
		height: 6px;
	}
	.st-Footer_Right{
		margin-bottom: 0;
	}
}

/**　KLON　*******************************************/
.klon {
	padding: 3em 0;
	background: #dadcd2
}

.klon_inner{
	display: flex;
	position: static;
}

.klon_ttl{
	float: none;
	margin: 0;
	order: 1;
	/*flex-basis: 30%;*/
	padding-right: 15px;
}
.klon_ttl img {
    max-width: 342px;
}
.klon_img01{
	width: 300px;
	margin: 0;
	float: none;
	order: 3;
	/*flex-basis: 20%;*/
}

.klon_txt{
	padding: 0;
	order: 2;
	/*flex-basis: 50%;*/
}

@media only screen and (max-width: 767px) {

.klon_inner{
	flex-direction: column;
	text-align: center;
	padding: 0 5%
}

.klon_ttl{
	order: 1;
	padding-right: 0;
}
	

.klon_img01{
	order: 2;
	margin: 1em auto;
}

.klon_txt{
	text-align: left;
	order: 3;
}

}

/**　SPECIAL CONTENTS　*******************************************/
@media only screen and (max-width: 767px) {
	.special_bnr {
		margin: 0;
	}
    .special_bnr div {
        width: 80%;
        margin: auto;
    }
}

/**　CONTACT　*******************************************/
@media only screen and (max-width: 767px) {
	.st-Footer_Right h2{
		font-size: clamp(1.125rem, 0.767rem + 1.53vw, 1.5rem);
		/* 768px: 24px 375px: 18px: */
		margin: 0 0 6px;
	}
	.st-Footer_Right a{
		font-size: clamp(0.875rem, 0.636rem + 1.02vw, 1.125rem);
		/* 768px: 18px 375px: 14px: */
		margin: 0 0 6px;
	}
}

.st-Footer{
 padding-top: 0;
}

.st-Footer_Inner{
	padding-bottom: 0;
}


@media only screen and (max-width: 767px) {
	.access_cnt_img{
		margin-top: 1rem;
	}
}


/**　共通　*******************************************/

.maxw480Only {
	display: none;
}

@media only screen and (max-width: 480px) {
	.maxw480Only {
		display: block;
	}
}


.c-gap_wrap::before {
    animation-name: fadeIn2s;
    animation-delay: 2s;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    opacity: 0;
}
@keyframes fadeIn2s {
    0% {
    }
    100% {
        opacity: 1;
    }
}

.yoyaku ul {
	list-style-type: none;
	line-height: 1.78;
	margin: 0 0 1.5rem;
}

.yoyaku ul > li {
	position: relative;
	padding: 0 0 0 25px;
	margin: 0 0 0.15rem;
	text-indent: 0;
}

.yoyaku ul > li:last-child {
	margin-bottom: 0;
}

.yoyaku ul > li:before {
	content: '';
	display: block;
	position: absolute;
	top: 7.7px;
	top: 0.55rem;
	left: 7px;
	width: 10px;
	height: 10px;
	border-radius: 6px;
	background: #111;
}


                    .nasic{
                    padding: 0;
                    background: #EAE7DF;
                    }
                    
                    .nasic_outer{
                    padding: 2em 0 3em;
                    }
                    
                    .flex{
                    display: flex;
                    }
                    
                    .nasic_ttl{
                    width: 100%;
                    font-size: 40px;
                    font-weight: bold;
                    line-height: 1.5;
                    margin-bottom: 1rem;
                    }
                    
                    
                    .nasic_inner{
                    max-width: 1200px;
                    margin: 0 auto;
                    }
                    
                    .textarea{
                    background: #fff;
                    padding: 30px;
                    border-radius: 10px;
                    }
                    
                    .nasic p{
                    font-size: 1.2rem;
                    }
                    
                    .nasic figure img{
                    max-width: 1000px;
                    }
                    
                    .nasic p a{
                    color: #000;
                    }
                    
                    .nasic .mv_action_subscription a{
                    text-align: center;
                    }
                    
                    
                    @media only screen and (max-width: 1024px) {
                    
                    .nasic_inner{
                     padding: 0 5%;
                    }
                    
                    
                    .nasic_ttl_txt{
                    width: auto;
                    }
                    
                    .nasic p{
                    margin: 0 0 1rem;
                    font-size: 0.88rem;
                    }
                    
                    }
                    
                    .program_big_imgl img,
                    .program_big_imgr img{
                    object-fit: contain;
                    }
                    
                    .nasic .stay_txt_h3{
                    font-size: 48px;
                    color: #cd255d;
                    }
                    
                    @media only screen and (max-width: 767px) {
                    .nasic .stay_txt_h3{
                    font-size: 24px;
                    }
                    }

/**　　*******************************************/

.pickuparea .program_sub{
gap: 3%;
}

.pickuparea .program_box{
width: 48.5%;
padding: 0;
}

@media only screen and (min-width: 768px) {
.pickuparea .program_box .program_box_txt h3{
font-size: clamp(1.663rem, 1.435rem + 0.47vw, 2rem);
/** 30px - 36px 768px - 1905px **/

}
.pickuparea .program_box .program_box_txt p{
font-size: clamp(1rem, 0.776rem + 0.47vw, 1.331rem);
/** 18px - 24px 768px - 1905px **/
}

}


@media only screen and (max-width: 767px) {
.pickuparea .program_box {
width: 100%
}
}

.pickuparea .program_box.bizidea{
width: 100%;
padding: 0;
display: flex;
flex-wrap: wrap;
gap: 3%;
margin-bottom: 2rem;
}

.pickuparea .program_box.bizidea figure,
.pickuparea .program_box.bizidea .program_box_txt{
width: 48.5%;
}

@media only screen and (min-width: 768px) {
.pickuparea .program_box.bizidea .program_box_txt h3{
font-size: clamp(1.663rem, 1.287rem + 0.78vw, 2.219rem);
/** 30px - 40px 768px - 1905px **/

}
.pickuparea .program_box.bizidea .program_box_txt p{
font-size: clamp(1rem, 0.776rem + 0.47vw, 1.331rem);
/** 18px - 24px 768px - 1905px **/
}

}

@media only screen and (max-width: 767px) {
.pickuparea .program_box.bizidea figure,
.pickuparea .program_box.bizidea .program_box_txt{
width: 100%
}

.pickuparea .program_box.bizidea figure{
width: 80%;
}

}

@media only screen and (max-width: 1024px) {
.program_box figure {
    margin: 0 0 0.5rem;
    margin: auto;
}
}


@media only screen and (min-width: 992px) {
#oc2023 .mv:before{
width: 50vw;
}
}

@media only screen and (max-width: 991px) {
#oc2023 .mv:before{
width: 38vw;
}
}


@media only screen and (min-width: 768px) {

#oc2023 .mv{
position: relative;
}

#oc2023 .mv:before{
content:"";
background: url(/oc2025_winter/img/h1_bg.png) no-repeat left top;
position: absolute;
height: 100%;
}

.mv_action{
position: relative;
}

.mv_txt_lead figure{
height: 400px;
}

.mv_txt_lead figure img{
height: 100%;
width: auto;;
}

}





