@charset "UTF-8";

/* ------------------------------------------------------------ */
/* reset
/* ------------------------------------------------------------ */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
	padding: 0;
	margin: 0;
	font-family: Lato, "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-style: normal;
	font-weight: 200;
	/*-webkit-font-smoothing: antialiased;*/
	color: #333333;
	line-height: 1;
}
dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
	line-height: 1.5;
}
fieldset, img {
	border: 0;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}
.pagebody img + img,
.pagebody p > a img {
	padding: 0 0 10px 10px;
}
address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal;
	font-weight: normal;
}
ol, ul {
	list-style: none;
}
caption, th {
	text-align: left;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: normal;
}
q:before, q:after {
	content: '';
}
abbr, acronym {
	border: 0;
}
/* ------------------------------------------------------------ */
/* デフォルトclass
/* ------------------------------------------------------------ */
.max_img {
	max-width: 100% !important;
	height: auto !important;
}
.alignleft {
	float: left;
}
.f_right,
.alignright {
	margin: 0 0 20px 20px !important;
	float: right !important;
}
.f_left,
.alignleft {
	margin: 0 20px 20px 0 !important;
	float: left !important;
}
.clear {
	clear: both;
}
.right {
	text-align: right !important;
}
.left {
	text-align: left !important;
}
.center {
	text-align: center !important;
}
strong {
	font-weight: bold;
}
.font_s,
.notice {
	font-size: 13px !important;
}
.font16 {
	font-size: 16px !important;
}
.font18 {
	font-size: 18px !important;
}
.font23 {
	font-size: 23px !important;
}
.c10 {
	width: 10%;
}
.c15 {
	width: 15%;
}
.c20 {
	width: 20%;
}
.c25 {
	width: 25%;
}
.c30 {
	width: 30%;
}
.c33 {
	width: 33.333%;
}
.c35 {
	width: 35%;
}
.c45 {
	width: 45%;
}
.c50 {
	width: 50%;
}
.c60 {
	width: 60%!important;
}
.c65 {
	width: 65% !important;
}
.mtrbl0 {
	margin: 0 !important;
}
.mb0 {
	margin-bottom: 0 !important;
}
.mb5 {
	margin-bottom: 5px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mt0 {
	margin-top: 0 !important;
}
.mt5 {
	margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt35 {
	margin-top: 35px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt50 {
  margin-top: 50px !important;
}
.valign {
  vertical-align: top;
}
.required {
	color: #e21010;
}
.new {
	margin-right: 5px;
	padding: 5px 10px;
	color: #ffffff;
	background: #ff0000;
}


/* ------------------------------------------------------------ */
/* 感染拡大予防対策
/* ------------------------------------------------------------ */
.columns2 {
  display: flex;
  flex-wrap: wrap;
}
.columns2 .column3 {
  border-bottom: 3px solid #053576;
}
.snow-box {
  padding: 30px;
  background: url('images/page/snow_bk.jpg') no-repeat center center / 100% 100%;
}
.snow-box h3 {
  text-align: center;
  color: #053576;
  margin-top: 15px!important;
}
.snow-box p {
  text-align: center;
  color: #053576;
}
.covid19-box {
  padding: 10px;
  text-align: center;
}
.covid19-title {
  text-align: center;
  border-top: 1px solid #d60000;
  border-bottom: 1px solid #d60000;
  padding: 20px 0;
  color: #d60000;
}
@media screen and (max-width: 800px) {
  .columns2 .column3 {
    width: 48%;
  }
}
@media screen and (max-width: 600px) {
  .columns2 .column3 {
    width: 98%;
  }
}
/* ------------------------------------------------------------ */
/* 直行バス
/* ------------------------------------------------------------ */
.target-red {
  font-weight: bold;
  background: #f51515;
  color: #fff;
  padding: 10px 20px;
  display: inline-block;
}
/* ------------------------------------------------------------ */
/* 癒しの湯　天領
/* ------------------------------------------------------------ */
#tenryou .tenryou_main .newchargebox h6 {
  font-weight: bold;
}
#tenryou .tenryou_main .newchargebox {
  margin: 0 0 30px;
  padding: 20px 30px 10px;
  background: #f5f9f3;
  overflow: hidden;
}
/* ------------------------------------------------------------ */
/* 早割シーズ券申し込み
/* ------------------------------------------------------------ */
.form-close {
  position: relative;
}
.form-close:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 10;
  background: #fff;
  opacity: 0.2;
}
/* テーブル・ボタン等体裁 修正 */
.seasonticketform {
  box-sizing: border-box;
}
.seasonticketform .file-button::file-selector-button {
  color: #000000;
  background: #FFFFFF;
  font-size: 1.0rem;
  border: 1px solid;
  border-radius: 3px;
  padding: 8px 16px;
  text-align: center;
}


/* ------------------------------------------------------------ */
/* 外国人向けEC（予約連携）
/* ------------------------------------------------------------ */
.ec_tab_frame {
	width: 100%;
	padding: 50px 20px;
	margin: 3px 0;
	background: #f4f4f4;
}
.ec_tab_frame,
.ec_tab_frame * {
	box-sizing: border-box;
}
.ec_tab_box {
	width: 100%;
	max-width: 1100px;
	padding: 0;
	margin: 0 auto;
}
.ec_tab_box #for_foreign {
	margin-bottom: 25px;
	display: inline-block;
	color: #004586;
	font-size: 22px;
	font-weight: bold;
}
.ec_tab_wrap {
	width: 100%;
	margin: 0;
}
.ec_tab_wrap input[type="radio"] {
	display: none;
}
.ec_tab_area {
	font-size: 0;
	margin: 0 10px;
}
.ec_tab_area label {
	width: 100%;
	max-width: 140px;
	margin: 0 5px;
	display: inline-block;
	padding: 10px;
	color: #666;
	background: #ddd;
	text-align: center;
	font-size: 13.5px;
	cursor: pointer;
	transition: ease 0.2s opacity;
}
.ec_tab_area label:hover {
	opacity: 0.5;
}
.ec_panel_area {
	background: #fff;
}
.ec_tab_panel {
	width: 100%;
	padding: 2.0rem 2.0rem;
	display: none;
}
.ec_tab_panel * {
	margin: 1.5em 0;
	line-height: 1.75;
}
.ec_tab_panel *:first-child {
	margin-top: 0;
}
.ec_tab_panel *:last-child {
	margin-bottom: 0;
}
.ec_tab_panel p {
	font-size: 13.5px;
}
.ec_tab_panel p.txt-center {
	text-align: center;
}
.ec_tab_panel img {
	width: 100%;
	max-width: 600px;
}

#ec_tab1:checked ~ .ec_tab_area .ec_tab1_label,
#ec_tab2:checked ~ .ec_tab_area .ec_tab2_label,
#ec_tab3:checked ~ .ec_tab_area .ec_tab3_label,
#ec_tab4:checked ~ .ec_tab_area .ec_tab4_label,
#ec_tab5:checked ~ .ec_tab_area .ec_tab5_label {
	background: #fff;
	color: #000;
}
#ec_tab1:checked ~ .ec_panel_area #panel1,
#ec_tab2:checked ~ .ec_panel_area #panel2,
#ec_tab3:checked ~ .ec_panel_area #panel3,
#ec_tab4:checked ~ .ec_panel_area #panel4,
#ec_tab5:checked ~ .ec_panel_area #panel5 {
	display: block;
}


/* ------------------------------------------------------------ */
/* 一里野 はじめてスキー応援DAY 追加スタイル
/* 一里野 はじめてスノーボード応援DAY 追加スタイル
/* ------------------------------------------------------------ */
.del {
  color: red;
  text-decoration: line-through;
}
.del span {
  color: #000;
}
.skiing_form_box-red {
	margin: 2.0em 0;
	color: #de0707;
	padding: 0.7em;
	text-align: center;
	border: 1px solid;
}
.skiing_form_box-red .txt-large {
	font-size: 1.2em;
}

:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody p {
	font-weight: bold;
}
.children_age {
	display: none;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody form {
	position: relative;
}

:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody .close form:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 10;
	background: #d9ed72;
	opacity: 0.2;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody form .hissu,
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody form .ninni {
	font-size: 90%;
	display: inline-block;
	position:relative;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody form .hissu::after {
	color: #de0707;
	content: '【必須】';
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody form .ninni::after {
	color: #333333;
	content: '［任意］';
}

:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody .formtbl {
	border: 2px solid #009a40;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody .formtbl th {
	border-top: 1px solid #009a40;
	border-left: 1px solid #009a40;
	background: #f2ffa9;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody .formtbl td {
	padding: 2px 10px;
	border-left: 1px solid #009a40;
	border-top: 1px solid #009a40;
	background: #ffffff;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody .form_bk {
	padding: 20px;
	background: #d9ec73;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody .form_bk h5 {
	background: #009a40;
	padding: 10px 15px;
	margin-top: 0;
	font-size: 20px;
	color: #ffffff;
	text-align: center;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody input {
	margin: 5px 0!important;
	height: 25px;
	padding: 0 7px;
	font-size: 13px;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody input {
	margin: 5px 4px!important;
	height: auto!important;
	padding: 0 7px;
	font-size: 13px;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody textarea {
	width: 96%;
	margin-top: 7px!important;
	padding: 0 2%;
	font-size: 13px;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody input[type="submit"] {
	width: 150px;
	height: 33px;
	margin: 0;
	padding: 0 3px;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	border: #009a40 1px solid;
	-moz-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2), 0 0 2px rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2), 0 0 2px rgba(0, 0, 0, 0.3);
	box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1), 0 0 0px black;
	cursor: pointer;
	color: #fefefe;
	font-size: 13px;
	background: #009a40;
	text-align: center !important;
	font-weight: bold;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody input[type="submit"] {
	padding: 5px 3px;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody input[type="number"] {
	max-width: 3em;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody input[name="保護者の氏名"],
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody input[name="お子さまの氏名"] {
	max-width: 150px;
}
:where(body.snowboard_form.ichirino, body.fam_snowboard_form.ichirino) #content .pagebody input[type="submit"].kakunin_modoru {
	border: #888888 1px solid!important;
	background: #888888!important;
}


/* ------------------------------------------------------------ */
/* レンタカー利用でお得に瀬女コテージ村を利用しよう 追加スタイル
/* ------------------------------------------------------------ */
.sena-rentacar_flow {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 0.85em 1.5em 0.75em;
  border: 2px solid #159915;
  border-radius: 1.0em;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 70px;
}
.sena-rentacar_flow::after {
  display: block;
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  transform: translate(-50%, 0%);
  content: '';
  width: 52.5px;
  height: 50px;
  background: #159915;
  clip-path: polygon(0 47.5%, 31% 47.5%, 31% 0, 69% 0, 69% 47.5%, 100% 47.5%, 50% 100%);
  padding: 0;
  margin: 0;
}
.last.sena-rentacar_flow {
  margin-bottom: 0;
}
.last.sena-rentacar_flow::after {
  display: none;
}
.sena-rentacar_flow p {
  width: 100%;
  color: #000000;
  font-size: 1.2em;
  font-weight: bold;
  margin: 0!important;
}
.sena-rentacar_flow p .step {
  position: relative;
  display: block;
  font-size: 0.9em;
  line-height: 1.5;
  color: #FFFFFF;
  background: #159915;
  padding: 0.25em 1.0em;
  width: max-content;
  max-width: 100%;
  margin-bottom: 0.5em;
}
.renta_txt-red {
	color: #FF0000;
}


/* ------------------------------------------------------------ */
/* (rootdir)/common/style.css へ記載
/* 冬季スタッフ募集 エントリーフォーム
/* ------------------------------------------------------------ */
:root {
  --color-offer-main: #75ACC0;
  --color-offer-sub: #D6E6EC;
  --color-offer-red: #de0707;
  --color-offer-white: #ffffff;
  --color-offer-inkblack: #23343A;
  --color-offer-gray: #888888;
}

/* 冬季スタッフ募集 エントリーフォーム｜ボタン */
.btn_offer-form {
	position: relative;
	width: 100%;
	margin: 50px 0;
}
.btn_offer-form,
.btn_offer-form * {
	box-sizing: border-box;
}
.btn_offer-form a {
  background: var(--color-offer-main);
  border-radius: 50px;
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 auto;
	width: max-content;
  max-width: 100%;
  padding: 25px 45px;
  color: var(--color-offer-white)!important;
	text-decoration: none;
  transition: 0.3s ease-in-out;
  font-weight: 500;
	font-size: 107%;
}
.btn_offer-form a:hover {
  background: var(--color-offer-sub);
  color: var(--color-offer-inkblack)!important;
}
.btn_offer-form a:after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid var(--color-offer-white);
  border-right: 3px solid var(--color-offer-white);
  transform: rotate(45deg) translateY(-50%);
  position: absolute;
  top: 50%;
  right: 20px;
  border-radius: 1px;
  transition: 0.3s ease-in-out;
}
.btn_offer-form a:hover:after {
  border-color: var(--color-offer-inkblack);
}

/* 冬季スタッフ募集 エントリーフォーム */
.form-staff-offer {
	position: relative;
}
.form-staff-offer,
.form-staff-offer * {
	box-sizing: border-box;
}
.form-staff-offer .red {
  color: var(--color-offer-red)!important;
}
.form-staff-offer .caution {
	color: var(--color-offer-red)!important;
	text-align: center;
	padding: 15px;
	margin: 20px 0;
	border: 1px solid;
}

.form-staff-offer form {
	position: relative;
}
.form-staff-offer .hissu,
.form-staff-offer .ninni {
	font-size: 90%;
	display: inline-block;
	position:relative;
}
.form-staff-offer .hissu::after {
	color: var(--color-offer-red)!important;
	content: '【必須】';
}
.form-staff-offer .ninni::after {
	color: var(--color-offer-inkblack)!important;
	content: '［任意］';
}
.form-staff-offer .tbl-mt {
	margin-top: 10px!important;
}

.form-staff-offer .form-table {
	width: 100%;
	border: 2px solid var(--color-offer-main)!important;
}
.form-staff-offer .form-table th {
	padding: 2px 10px;
	border-top: 1px solid var(--color-offer-main)!important;
	border-left: 1px solid var(--color-offer-main)!important;
	background: var(--color-offer-sub)!important;
}
.form-staff-offer .form-table td {
	padding: 2px 10px;
	border-left: 1px solid var(--color-offer-main)!important;
	border-top: 1px solid var(--color-offer-main)!important;
	background: var(--color-offer-white)!important;
}
.form-staff-offer h5 {
	background: var(--color-offer-main)!important;
	padding: 10px 15px;
	margin-top: 0;
	font-size: 20px;
	color: var(--color-offer-white)!important;
	text-align: center;
}
.form-staff-offer input[type="text"] {
	margin: 5px 4px!important;
	height: auto!important;
	/*padding: 0 7px;
	font-size: 13px;*/
}
.form-staff-offer textarea {
	width: 100%;
	margin-top: 7px!important;
	/*padding: 0 2%;
	font-size: 13px;*/
}
.form-staff-offer input[type="submit"] {
	width: 150px;
	height: auto;
	margin: 0;
	padding: 0 3px;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	border: 1px solid var(--color-offer-main)!important;
	-moz-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2), 0 0 2px rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2), 0 0 2px rgba(0, 0, 0, 0.3);
	box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1), 0 0 0px black;
	cursor: pointer;
	color: var(--color-offer-white)!important;
	font-size: 13px;
	background: var(--color-offer-main)!important;
	text-align: center !important;
	font-weight: bold;
}
.form-staff-offer input[type="submit"] {
	padding: 5px 3px;
}
.form-staff-offer input[type="number"] {
	max-width: 3em;
}
.form-staff-offer input[type="submit"].kakunin_modoru {
	border: 1px solid var(--color-offer-gray)!important;
	background: var(--color-offer-gray)!important;
}
@media screen and (max-width: 700px) {
	.form-staff-offer .form-table th,
	.form-staff-offer .form-table td {
		display: block;
	}
	.form-staff-offer .form-table td {
		padding: 10px 10px;
	}
	.form-staff-offer input[type="text"] {
		width: 100%;
	}
}


/* ------------------------------------------------------------ */
/* シーズン券販売（ECサイトでの購入）
/* ------------------------------------------------------------ */
.font-small {
	font-size: 13px;
}
.ec_text-red {
	color: #ff0000;
}

.ec-caution_box {
	background: #F0F0F0;
	padding: 30px;
}
.ec-caution_box > *:first-child {
	margin-top: 0!important;
}
.ec-caution_box > *:last-child {
	margin-bottom: 0!important;
}

.ec-outline_box {
	box-sizing: border-box;
	display: block;
	width: max-content;
	max-width: 100%;
	padding: 1.5em 2.0em;
	margin: 0 auto;
	border: 1px solid;
}
.ec-outline_box > *:first-child {
	margin-top: 0!important;
}
.ec-outline_box > *:last-child {
	margin-bottom: 0!important;
}
.ec-outline_box .outline-item {
	font-weight: bold;
	font-size: 1.2em;
	margin-top: 1.2em;
}
.ec-outline_box .outline-item span {
	font-size: 0.7em;
	color: #FFFFFF;
	background: #555555;
	padding: 0.5em;
	margin-right: 0.7em;
}

.ec-matomete_box {
	border: 1px solid #000000;
	padding: 30px;
	margin: 3.0em 0;
}
.ec-matomete_box > *:first-child {
	margin-top: 0!important;
}
.ec-matomete_box > *:last-child {
	margin-bottom: 0!important;
}
.ec-matomete_box .matomete_catch {
	font-weight: bold;
	font-size: 125%!important;
}
.ec-matomete_box .matomete_catch img {
	width: 35px;
}
.ec-matomete_box .matomete_catch span {
	font-size: 85%;
	color: #FFFFFF;
	background: #F00000;
	padding: 5px 10px;
}
.ec-matomete_box .txt-center {
	text-align: center;
}


/* ------------------------------------------------------------ */
/* 北陸信越山岳観光索道協会 YouTube動画紹介
/* ------------------------------------------------------------ */
.embed_video_yt {
  display: block;
  position: relative;
  width: 100%;
  padding-top: calc(100% * 9 / 16);
}
.embed_video_yt iframe {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
