/* サイト毎に定義するスタイル */

/* 共通
------------------------------------------------------------------------ */
html {
	height: 100%;
	font-size: 62.5%;
}
body {
  min-width: 100%;
	height: 100%;
	font-family: "メイリオ","meyrio",sans-serif;
	font-size: 14px;
	font-size: 1.4em;
	line-height: 1.6;
	color:#333333;
	background: #fff;
	-webkit-font-smoothing: antialiased;
}

body.__active{
  height: 100%;
  overflow: hidden;
}

/* リンク設定 */
a          {color: #0074af;}
a:visited	 {color: #0074af;}
a:hover		 {opacity: 0.7;}
a:focus		 {color: #0074af;}

a,a:hover,a:visited,a:focus {
	text-decoration: none;
	outline: none;
}
a:hover {text-decoration: none;}
.btn:hover,a:hover {opacity: 0.7;}

.serif {font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}

h1,h2,h3,h4,h5,h6{font-weight:bold;}
p {line-height:1.6;}

*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
 }

/* レイアウト
------------------------------------------------------------------------ */
.page {}

.wrap{width: 1140px;}
.wrap--main{width: 1010px;}
.wrap,
.wrap--main {
	margin: 0 auto;
  position: relative;
  width: 100%;
}
.s .wrap,
.s .wrap--main {
	width: 100%;
	padding: 0;
  border-top:none;
}

.w195 {
    width: 195px;
}
.w365 {
    width: 365px;
}
.w400 {
    width: 400px;
}

.w500 {
    width: 500px;
}

.w600 {
    width: 600px;
}

.w740 {
    width: 740px;
}


/****** コンテンツ ******

/* 汎用
------------------------------------------------------------------------ */
section {
margin-bottom: 40px;
}

.pl_blockB01 {
padding: 0 20px;
margin-bottom: 20px;
}

.s .pl_blockB01 {
padding: 0 10px;
margin-bottom: 20px;
}

*[class*="pl_h2Title"] {
    background: #0074af;
}

#pl_navWrap>nav[role="navigation"]>ul>li a {
    background: #0074af;
}

.pl_linkMore03.pl_linkMoreSmall>span:before {
    content: url(../img/ico_arrow_right02_small01.png);
    top: 0.6em;
    margin-top: -0.3em;
}
.pl_linkMore03>span:before {
	content: url(../img/ico_arrow_right02.png);
	top: .9em;
	left: 0;
	margin-top: -0.5em;
}

.box__ttl {
  margin: 0 auto 30px;
  text-align: center;
}
.box__ttl img {
  width: 640px;
  height: auto;
}
.s .box__ttl img {
  width: 100%;
  max-width: 640px;
}
.box__body {
  background: #fff;
  color: #333333;
}
.s .box__body {
  padding:0;
}

.pl_contentBlockA02{
  max-width: 1030px;
  margin: 0 auto;
  padding: 30px 10px 0 10px;
}
.s .pl_contentBlockA02{
  padding: 30px 0 0 0;
}

.pl_supportersBlock {
  padding:0 20px;

}
.s .pl_supportersBlock {
  padding:0 10px;
}

.box-schedule:first-child{margin-left:0;}
.box-schedule{width:226px; margin-left:10px; float:left;}

.s .box-schedule{width:100%; margin-left:0; float:none;}


.pl_linkListX01 {
  margin-top: 5px !important;
}
.s .pl_linkListX01 {
  margin:20px 0;
  text-align:center;
}

.box-column {
    margin:0;
    width: 740px;
}
.s .box-column {
    width: 100%;
    margin:0;
}

.box-column .-btn-detail {
    width: 365px;
    box-sizing: border-box;
    float: left;
}
.s .box-column .-btn-detail {
    width: 100%;;
    margin:0;
}

section.pl_secBlock03 {
    margin-bottom: 25px;
}
.s section.pl_secBlock03 {
    margin-bottom: 20px;
}

.pl_tFighters01 {
    color: #0074af;
    font-size: 14px;
}

.snow-comment .-img{width:111px; float:left;}
.s .snow-comment .-img{width:100%; padding-bottom:10px; text-align:center;}
.snow-comment .-text{width:629px; float:left; padding-left:10px;}
.s .snow-comment .-text{width:100%; padding-left:0;}

.s .text-qa{padding-left:2.3em;text-indent:-2.3em;}
.s .text-qa2{padding-left:3.0em;text-indent:-3.0em;}
.text-qa span{margin-left:32px;}
.text-qa2 span{margin-left:41px;}
.s .text-qa span{margin-left:0;}
.s .text-qa2 span{margin-left:0;}

.frame-csr-snow{margin: 20px 25px; padding: 10px; border: 2px solid #0074af; border-radius: 8px; text-align: center;}
.frame-csr-snow .-title{font-size:23px;}
.frame-csr-snow img{width:249px;}

.s .frame-csr-snow{margin: 20px 0;}
.s .frame-csr-snow .-title{font-size:16px;}
.s .frame-csr-snow img{width:50%;}

.text-snow-activity{padding-left:5em; text-indent:-5em;}

.map-csr-snow{position:relative; background: url(../img/hokkaido_map.png) top center no-repeat; width:700px;height:643px;}
.s .map-csr-snow{display:none}

.map-csr-snow .abs a:hover{opacity:1!important;}
.map-csr-snow .abs a:hover>img{opacity:1!important;}


.pl_boxColumn2 {
  display: flex;
  column-gap: 10px;
  width: 100%;
}
.s .pl_boxColumn2 {
  display: block;
  width: 100%;
}


/* ボタン */
.pl_btnBlock01 {
    margin: 0;
    text-align: center;
}


.pl_h1Title01 {
font-weight: normal;
}
.s .pl_h1Title01 {
  font-size:22px;
  font-size:2.2rem;
  padding:15px 10px 0 10px;
  margin-bottom:15px;
  border-bottom:none;
}

.pl_h1Title01 {
font-weight: normal;
}

.-indent {
  text-indent: -1.0em;
  padding-left: 1.0em;
}

.pl_supporterTxt.-indent {
  text-indent: -1.5em;
  padding-left: 1.5em;
}

.pl_supporterTxt {
  padding-bottom:3px;
}
.pl_supporterTxt.-list div {
  padding-left:22px;
}


.wrapper {
  overflow:hidden;
  position: relative;
}

#GeneralPage .box {
  margin-bottom: 30px;
  position: static;
}
.s #GeneralPage .box {
  margin-bottom: 0;
  width:100%;
}

#GeneralPage .main {
  background: url(../img/bg_mainContent.gif) 0 0 repeat-y;
  padding:0;
}
.s #GeneralPage .main{
  background:none;
}
#GeneralPage .pl_btnBlock01_side>*:first-child {
  margin: 0;
}
#GeneralPage .pl_btnBlock01_side {
  text-align:center;
  margin-bottom:20px;
}
#GeneralPage .pl_btnBlock01_side a {
  width: 160px;
  padding: 10px 5px 9px;
  font-size: 1.4rem;
}
#GeneralPage .pl_btnT01_side {
  border: 1px solid #ccc;
  padding: 2px 5px;
  text-align: center;
  background: #fff;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  box-shadow: rgba(0,0,0,0.2) 0px 2px 2px 1px;
  -webkit-box-shadow: rgba(0,0,0,0.2) 0px 2px 2px 1px;
  -moz-box-shadow: rgba(0,0,0,0.2) 0px 2px 2px 1px;
}
#GeneralPage .pl_btnT01_side {
    display: inline-block;
  font-size: 1.3rem;
  font-weight: bold;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#GeneralPage .pl_btnT01_side {
  display: inline-block;
  font-size: 1.3rem;
  font-weight: bold;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.s #GeneralPage .pl_textBlock01 .pl_clmSec .pl_clmBox.pl_clmWide_1_3 {
  width: 50%!important;
}
#GeneralPage .ex_content {
  width: 1010px;
  margin: 0 auto;
}
.s #GeneralPage .ex_content {
  width: 100%;
}
#GeneralPage #pl_navWrap>nav[role="navigation"]>ul>li a.pl_active {
  background: #ccb67a;
  color: #fff!important;
}
#GeneralPage .pl_linkList01>li>a, .pl_linkList07>li>a, .pl_stepList01>li>a {
  position: relative;
  padding: 17px 25px 17px 10px;
}
#GeneralPage #pl_content .pl_linkList01 {
  margin-bottom: 40px;
  font-weight: bold;
}
#GeneralPage #pl_content .pl_linkList01>li {
  width: 100%;
}
#GeneralPage #pl_content .pl_linkList01>li {
  float: left;
  margin-right: 5px;
}

#GeneralPage .pl_linkMore02>span {
  position: relative;
  padding-right: 15px;
  font-size: 1.3rem;
  font-weight: bold;
}
#GeneralPage .pl_linkMore02>span:before {
  content: url(../img/ico_arrow_right01.png);
  top: 50%;
  right: 0;
  margin-top: -0.5em;
}
#GeneralPage .frame-member {
  border:1px solid #937e45;
}
#GeneralPage .text-title1 {
  color:#937e45;
  padding-top:21%
}
.s #GeneralPage .text-title1 {
  padding-top:8%
}
#GeneralPage .text-title2 {
  color:#937e45;
  padding-top:30%
}
.s #GeneralPage .text-title2 {
  padding-top:8%
}
#GeneralPage .text-player {
  font-size:14px;
}
.s #GeneralPage .text-player {
  font-size:11px;
}
#GeneralPage .text-player>span {
  position: relative;
  display: block;
  padding-right: 15px;
  font-weight: bold;
}
#GeneralPage .text-player>span:before {
  content: url(../img/ico/ico_arrow_right02.png);
  top: .9em;
  right: 0;
  margin-top: -0.5em;
  display: block;
  position: absolute;
  line-height: 1;
}
#GeneralPage .text-adjust {
  width:239px;
}
.s #GeneralPage .text-adjust {
 width:75%;
}
#GeneralPage .img-adjust {
  margin-left:-79px;
}
.s #GeneralPage .img-adjust {
  margin-left:-11%;
}
#GeneralPage .bg-white {
  background:#fff;
}
#GeneralPage .bg-gray {
  background:#eee;
}
#GeneralPage .text-gold {
  color:#937e45;
}
#GeneralPage .text-blue {
  color:#0074af;
}
#GeneralPage .text-white {
  color:#fff;
}
#GeneralPage .pl_table179 tr>* {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
  padding:12px 20px 12px 10px;
  vertical-align: middle;
  border-bottom: 1px solid #ccc;
}
#GeneralPage .pl_table179 tr:last-child {
  border-bottom:none;
}
#GeneralPage .pl_table179 td {
  font-weight: bold;
  width: 50%;
  border-right:1px solid #ccc;
}
#GeneralPage .pl_table179 td:last-child {
  border-right:none;
}
#GeneralPage .pl_table179{
  width:100%;
  background:#fff;
  font-size:1.4rem;
  line-height:1.3
}
#GeneralPage .pl_table179 a {
  display:table;
  width:100%;-webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
  padding:10px 20px 10px 10px;
  font-weight:bold;color:#000;
  position:relative
}
#GeneralPage .pl_table179 a:after {
  display:block;
  position:absolute;
  line-height:1
}
#GeneralPage .pl_table179 a:after {
  content:"";
  top:50%;
  right:-10px;
  width:10px;
  height:15px;
  margin-top:-0.5em;
  background-image:url(../img/ico_arrow_right03.png);
  background-position:0 0;
  background-repeat:no-repeat;
  background-size:100% auto
}
#GeneralPage .pl_table179 a:after {
  width:10px
}

#GeneralPage .sns-list {
  font-size: 0;
  padding: 30px 0 20px;
  font-weight: bold;
  text-align: center;
}
.s #GeneralPage .sns-list {
  padding: 20px 0;
}

#GeneralPage .sns-list>li {
  display: inline-block;
  vertical-align: middle;
  padding:0 5px;
}

.s *[class*="pl_h2Title"] {
  background: #0074af;
  color: #fff;
}



/* SP用　リスト */
.s .pl_h2Title01 {margin-bottom: 0;}

.s .pl_linkList01, .s .pl_linkList07, .s .pl_stepList01 {
    border-top: 1px solid #ccc;
}

.s .pl_linkList01>li, .s .pl_linkList07>li, .s .pl_stepList01>li {
    background: #fff;
    border-bottom: 1px solid #ccc;
    font-weight: bold;
    width: 100%;
}

.s .pl_linkList01>li>a, .s .pl_linkList07>li>a, .s .pl_stepList01>li>a {
    position: relative;
    padding: 17px 25px 17px 10px;
}

.s .pl_linkList01>li>a, .s .pl_linkList07>li>a, .s .pl_stepList01>li>a, .s .pl_linkList01>li>span, .s .pl_linkList07>li>span, .s .pl_stepList01>li>span {
    display: table;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1.1;
}

.s .pl_linkList01 a, .s .pl_linkList07 a, .s .pl_stepList01 a, .s .pl_linkList05 a, .s .pl_linkList04 a {
    color: #333;
}

.s .pl_linkList01>li>a>*, .s .pl_linkList07>li>a>*, .s .pl_stepList01>li>a>*, .s .pl_linkList01>li>span>*, .s .pl_linkList07>li>span>*, .s .pl_stepList01>li>span>* {
    display: table-cell;
    vertical-align: middle;
}


.s .pl_linkList01>li>a:after, .s .pl_linkList07>li>a:after, .s .pl_stepList01>li>a:after {
    content: "";
    top: 50%;
    right: 10px;
    width: 10px;
    height: 15px;
    margin-top: -0.5em;
    background-image: url(../img/ico_arrow_right02.png);
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
}
.s .pl_linkList01>li>a:after, .s .pl_linkList07>li>a:after, .s .pl_stepList01>li>a:after {
    display: block;
    position: absolute;
    line-height: 1;
}

/* スライダー */
.main_gallery{
  height: 35vh;
  display: flex;
  overflow: hidden;
}
.s .main_gallery{
  height: 244.5px;
}

.slider{
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-start;
  width: auto;
  height: 100%;
}
.slider div{
  flex: 0 0 auto;
  width: auto;
  height: 100%;
}
.slider img{
  width: auto;
  height: 100%;
}

.main_gallery .slider.__active:nth-child(1){
  animation: roop1 60s -30s infinite linear;
}
.main_gallery .slider.__active:nth-child(2){
  animation: roop2 60s infinite linear;
}

@keyframes roop1 {
  0%{transform: translateX(100%);}
  to{transform: translateX(-100%);}
}
@keyframes roop2 {
  0%{transform: translateX(0%);}
  to{transform: translateX(-200%);}
}

/* MVテキスト */
.activity_card{
  display: flex;
  justify-content: center;
  column-gap: 40px;
  width: 100%;
}
.s .activity_card{
  flex-wrap: wrap;
}

.card_img{
  width: 25%;
  margin: auto 0;
}
.s .card_img{
  width: 40%;
  margin: 0 auto;
}

.card_content{
  width: 75%;
}
.s .card_content{
  width: 95%;
  margin: 20px auto;
}

.card_content h3{
  font-size: 24px;
}
.s .card_content h3{
  font-size: 20px;
}

/* タグ */
.tag{
  display: flex;
  justify-content: flex-start;
  column-gap: 6px;
  margin-top: 10px;
}
.s .tag{
  column-gap: 3px;
}

.tag_name{
  font-size: 12px;
  font-weight: bold;
  border: 2px solid;
  border-radius: 4px;
  padding: 1px 4px;
}
.s .tag_name{
  border: 1px solid;
  padding: 0 2px;
}

.tag_01{
  color: #616161;
  border-color: #dadada;
}
.tag_02{
  color: #006298;
}

.card_text{
  margin-top: 10px;
}
.card_text p{
  margin-top: 5px;
}


/* PLAY CATCH 22 */
img {
  width: 100%;
  height: auto;
}

.card_img img{
  aspect-ratio: 760 / 816;
}

.result-table {
  width: 100%;
  border-collapse: collapse;
  border: 2px solid #859fd4;
  text-align: center;
}
.result-table thead th {
  background-color: #859fd4;
  border-right: 1px dashed #fff;
  font-weight: bold;
  color: #fff;
}
.result-table tbody td {
  padding: 5px;
  background-color: #d4ddf1;
  border: 1px solid #859fd4;
  font-size: 18px;
}

.target-list li {
  margin-bottom: 20px;
}
.s .target-list li {
  margin-bottom: 40px;
}
.target-list li:last-of-type {
  margin-bottom: 0;
}
.target {
  display: flex;
  gap: 20px;
}
.s .target {
  display: block;
}
.target-img {
  width: 30%;
}
.s .target-img {
  width: 100%;
  max-width: 500px;
  margin: 0 auto 10px;
}
.target-comment {
  width: calc(70% - 20px);
}
.s .target-comment {
  width: 100%;
}
.target-comment h3 {
  font-weight: bold;
  font-size: 16px;
}

.numberList {
  list-style-type: decimal;
  padding-inline-start: 1.5em;
}

.notes li {
  padding-inline-start: 1em;
  text-indent: -1em;
}
.notes li::before {
  content: '※';
}

.items {
  display: flex;
  gap: 10px;
}
.items li {
  width: 50%;
}

.s .applyBtn {
  max-width: 400px;
}

.cooperation {
  display: flex;
  text-align: center;
}
.cooperation a {
  color: #000;
}