/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Nov 28 2025 | 00:56:13 */
/*----- リンクボタン（背景色：青/ホバー時：伸びる）※最終的に削除する -----*/
a.normal-btn {
	display: block;
	margin: 0 auto;
	padding: 1em 2em 0.9em;
	width: 60%;
	line-height: 1.2em;
	color: #fff;
	text-align: center;
	text-decoration: none;
	background-color: #0063e5;
     border-radius: 5px;
	transition: all ease 0.2s;
}
a.normal-btn:hover {
	width: 65%;
	box-shadow: 6px 6px 13px 6px rgb(0 0 0 / 18%);
}
/* 受付終了リンクボタン（背景色：グレー/ホバーなし） */
a.finish-btn {
     background: #999;
     color: #000;
     cursor: none;
     line-height: 1.4em;
     padding: 1em 2em;
     text-decoration: none;
}


/*--------------------------------
リンクボタン
--------------------------------*/
a.btn-application,
a.btn-download,
a.btn-archive_video,
a.btn-detail,
a.btn-finish {
     display: block;
     /* margin: 0 auto; */
     margin: 0 auto 2.5em;
     padding: 1em 1em .9em;
     width: 100%;
     line-height: 1.2;
     /* color: #fff; */
     text-align: center;
     text-decoration: none;
     border-radius: 100vh;
     box-sizing: border-box;
     transition: all .5s ease;
}
/* 申込み／問い合わせ */
a.btn-application { background-color: #2a79e1; color: #fff; }
a.btn-application:hover { background-color: #ffd58f; color: #2A2723; }
/* ダウンロード */
a.btn-download { background-color: #129471; color: #fff; }
a.btn-download:hover { background-color: #ffd9c6; color: #2A2723; }
/* 詳細・紹介 */
a.btn-detail { background-color: #ee7748; color: #fff; }
a.btn-detail:hover { background-color: #aeddec; color: #2A2723; }
/* 動画視聴 */
a.btn-archive_video { background-color: #f0bc2e; color: #2A2723; }
a.btn-archive_video:hover { background-color: #93bdf0; color:#2A2723; }
/* 終了 */
a.btn-finish {
     color: rgb(0 0 0 / 100%);
     background-color: rgb(204 204 204 / 100%);
     border: 1px solid rgb(119 119 119 / 100%);
     cursor: default!important;
}

@media screen and (min-width: 768px) {
     a.btn-application,
     a.btn-download,
     a.btn-archive_video,
     a.btn-detail,
     a.btn-finish {
          width: 70%!important;
          /* transition: all ease 0.5s; */
     }
     
     /* hover */
     /* a.btn-application:hover,
     a.btn-download:hover,
     a.btn-archive_video:hover,
     a.btn-detail:hover {
          width: 75%!important;
          box-shadow: 6px 6px 13px 6px rgb(0 0 0 / 18%);
     } */
}
/* ボタンの横並び */
@media screen and (min-width: 768px) {
     .btn-flex {
          display: flex;
          margin-bottom: 2em;
     }
     .btn-flex a {
          margin: 0 .5em;
     }
}
@media screen and (max-width: 767px) {
     .btn-flex {
          margin-top: 1.5em;
          margin-bottom: 2.5em;
     }
     .btn-flex a {
          margin: .2em 0;
     }
}
/*----- 画像と並んだ時のPC表示での幅の調整 -----*/
@media screen and (min-width: 860px) {
     p.btn-float {
          width: 80%;
     }
}
/*----- テーブルセル内のリンクボタン -----*/
a.inner-cell {
     display: block;
     padding: .2em .2em .1em;
     color: #fff;
     text-align: center;
     background-color: #337ab7;
     border-radius: 5px;
     transition: all ease 0.2s;
     width: 95%;
     text-decoration: none;
     margin-left: auto;
     margin-right: auto;
     box-sizing: border-box;
}
a.inner-cell:hover { width: 100%; }
/*----- 右端に設置する小さめのリンクボタン」 -----*/
.btn-small-right {
     margin-left: auto;
     margin-right: 0;
     width: 25%;
}
.btn-small-right a {
     display: block;
     margin-left: auto;
     margin-right: auto;
     padding: .7em .2em .5em;
     color: #fff;
     text-align: center;
     background-color: #337ab7;
     border-radius: 5px;
     transition: all ease 0.2s;
     width: 95%;
     text-decoration: none;
     box-sizing: border-box;
}
.btn-small-right a:hover {
     width: 100%;
     background-color: rgba(51 122 183 / 0.75);
     box-shadow: 6px 6px 13px 6px rgb(0 0 0 / 18%);
}
@media screen and (max-width: 767px) {
     .btn-small-right { width: 38%; }
     .btn-small-right a { width: 100%; }
     .btn-small-right a:hover {
          background-color: #337ab7;
          box-shadow: none;
     }
}

/*--------------------------------
特別デザインのリンクボタンとボタン周り
--------------------------------*/
/*----- 1つ設置 -----*/
.ex_btn_box {
     position: relative;
     margin: 1em auto 2em!important;
     padding: 0!important;
     box-sizing: border-box;
     width: 55%;
     height: 7.1em;
     overflow: hidden;
}
.ex_btn_box img {
     position: absolute;
     z-index: 1;
     top: 0;
     left: 0;
     width: 100%;
}
/*ボタン*/
.ex_btn_link {
     position: absolute!important;
     z-index: 2;
     top: 2.9em;
     right: 1em;
     display: block!important;
     position: relative;
     text-decoration: none;
     background: #0cab35;/*ボタン色*/
     color: #FFF;
     border-bottom: solid 5px #024c15;/*ボタン色より暗めに*/
     border-right: solid 5px #088327;/*ボタン色より暗めに*/
     border-radius: 3px;
     margin-top: 12px!important;
     padding: 0!important;
     width: 36%;
     height: 40px;
     box-sizing: border-box;
     line-height: 38px;
     text-align: center;
     font-size: .9em!important;
}
.ex_btn_link:hover {
     color: #ebbc00;
}
.ex_btn_link:active {
     /*ボタンを押したとき*/
     border:none;
     -webkit-transform: translate(2px,2px);
     transform: translate(2px,2px);
     border-bottom: 2px solid #024c15;
     border-right: 2px solid #088327;
     box-sizing: border-box;
}
.ex_btn_link[target="_blank"]::after {
     content: "";
     position: absolute;
     right: 0!important;
}
@media screen and (max-width:1159px) {
     .ex_btn_box {
          width: 70%;
          height: 6.7em;
     }
     .ex_btn_link {
          top: 29%;
          right: 1em;
          width: 35%;
          height: 2.3em;
          line-height: 2.2em;
          font-size: .9em!important;
     }
}
@media screen and (max-width:767px) {
     .ex_btn_box {
          width: 100%;
          height: 5em;
     }
     .ex_btn_link {
          top: 2.1em;
          right: .8em;
          width: 30%;
          height: 2.5em;
          line-height: 2.4em;
          font-size: .7em!important;
     }
}
/*----- 複数設置 -----*/
.ex_btn_box_plural {
     position: relative;
     z-index: 0;
     margin: 1em auto 2em!important;
     padding: .5em .5em 2.5em!important;
     width: 100%;
     border: 3px solid #ebbc00;
     box-sizing: border-box;
}
.ex_btn_box_plural::before {
     content: "";
     position: absolute;
     z-index: 10;
     right: 0;
     bottom: -4em;
     width: 10em;
     height: 10em;
     background: url(/wp-content/uploads/2022/05/ex_btn_bg.png) top center no-repeat;
     background-size: 100%;
}
.ex_btn_contents {
     padding-top: 0.5em;
     padding-bottom: .5em;
     height: auto;
     overflow: hidden;
     border-top: 1px solid #999;
}
.ex_btn_contents:first-child {
     padding-top: 0;
     border: none!important;
}
.ex_btn_read {
     float: left;
     padding: .5em 0 .3em!important;
     width: 60%;
     height: auto;
     overflow: hidden;
     text-align: center;
     line-height: 1.3;
     background-color: #ebbc00;
}
.text-s {
     display: block!important;
     margin: 0 .5em!important;
     font-size: 90%;
}
hr.ex_line {
     margin: -.9em .5em .5em!important;
     border: none!important;
     border-bottom: 1px dotted #000!important;
}
/*ボタン*/
.ex_btn_plural_link {
     float: right;
     display: block!important;
     position: relative;
     text-decoration: none;
     background: #0cab35;/*ボタン色*/
     color: #FFF;
     letter-spacing: 0.1rem!important;
     border-bottom: solid 5px #024c15;/*ボタン色より暗めに*/
     border-right: solid 5px #088327;/*ボタン色より暗めに*/
     border-radius: 3px;
     padding: .5em .5em .3em!important;
     width: 38%;
     box-sizing: border-box;
     text-align: center;
}
.ex_btn_plural_link:active {
     /*ボタンを押したとき*/
     border:none;
     -webkit-transform: translate(2px,2px);
     transform: translate(2px,2px);
     border-bottom: 2px solid #024c15;
     border-right: 2px solid #088327;
     box-sizing: border-box;
}
@media screen and (max-width:1159px) {
     .ex_btn_box_plural {
          width: 100%!important;
          padding-bottom: 1.5em;
     }
}
@media screen and (max-width:767px) {
     .ex_btn_box_plural {
          padding: .5em .5em 0!important;
          /* padding: .5em .5em 1em!important; */
          width: 100%!important;
          overflow: hidden;
          background: none;
     }
     .ex_btn_box_plural::before {
          content: "";
          display: none!important;
     }
     .ex_btn_contents {
          padding-bottom: 0!important;
     }
     .ex_btn_contents:last-of-type {
          margin-bottom: -1em!important;
     }
     .ex_btn_read {
          float: none;
          padding-left: .5em;
          padding-right: .5em;
          width: 100%!important;
     }
     .ex_btn_read strong {
          display: block;
          padding-left: .5em;
          padding-right: .5em;
          width: 100%;
          box-sizing: border-box;
     }
     /*ボタン*/
     .ex_btn_plural_link {
          float: none;
          margin-top: .5em;
          margin-bottom: -.6em;
          width: 100%;
     }
}

/*--------------------------------
リンクのアイコン関係
--------------------------------*/
/*----- リンクボタンのアイコンを非表示にする -----*/
.button[href^="http://"]:not([href*='global.wilsonlearning.com'])::after,
input[type=submit][href^="http://"]:not([href*='global.wilsonlearning.com'])::after,
.button a[href^="http://"]:not([href*='global.wilsonlearning.com'])::after,
input[type=submit] a[href^="http://"]:not([href*='global.wilsonlearning.com'])::after,
.button[href^="https://"]:not([href*='global.wilsonlearning.com'])::after,
input[type=submit][href^="https://"]:not([href*='global.wilsonlearning.com'])::after,
.button a[href^="https://"]:not([href*='global.wilsonlearning.com'])::after,
input[type=submit] a[href^="https://"]:not([href*='global.wilsonlearning.com'])::after,
.button[href^="//"]:not([href*='global.wilsonlearning.com'])::after,
input[type=submit][href^="//"]:not([href*='global.wilsonlearning.com'])::after,
.button a[href^="//"]:not([href*='global.wilsonlearning.com'])::after,
input[type=submit] a[href^="//"]:not([href*='global.wilsonlearning.com'])::after,

.button--secondary[href^="http://"]:not([href*='global.wilsonlearning.com'])::after,
.button--secondary a[href^="http://"]:not([href*='global.wilsonlearning.com'])::after,
.button--secondary[href^="https://"]:not([href*='global.wilsonlearning.com'])::after,
.button--secondary a[href^="https://"]:not([href*='global.wilsonlearning.com'])::after,
.button--secondary[href^="//"]:not([href*='global.wilsonlearning.com'])::after,
.button--secondary a[href^="//"]:not([href*='global.wilsonlearning.com'])::after {
     background: none!important;
     margin-left: 0!important;
     width: 0!important;
}
/*----- アイコン付きのリンク設定 -----*/
/* 別タブでページを表示 */
a.target-blank[target="_blank"]::after,
a.target-blank-over[target="_blank"]::after {
     content: "\f08e";
     font-family:'Font Awesome 5 Free';
     font-size: .5em;
     font-weight: 900;
     margin-left: 0.6em;
     margin-right: 0.2em;
     color: #999;
     display: inline-block;
}
/* 別タブページを表示（アイコンがテキストに重なってしまう時） */
a.target-blank-over[target="_blank"]::after {
     margin-left: 3.5em;
}

/*--------------------------------
ページトップへ戻る
--------------------------------*/
#page_top {
     width: 5em;
     height: 4em;
     position: fixed;
     right: 0;
     bottom: 0;
     /* bottom: 8em; */
     opacity: 0.6;
     border: 1px solid #3f98ef;
     border-radius: 15px;
     z-index: 2;
     opacity: 0;
     transition: all .5s ease;
}
#page_top.is_active {
     opacity: .7;
     transition: all .5s ease;
}
/* body.home #page_top {
     bottom: 8em;
} */
#page_top a {
     position: relative;
     display: block;
     width: 90px;
     height: 90px;
     text-decoration: none;
}
#page_top a::before {
     font-family: 'Font Awesome 5 Free';
     font-weight: 900;
     content: '\f102';
     font-size: 25px;
     color: #3f98ef;
     position: absolute;
     width: 25px;
     height: 25px;
     top: -40px;
     bottom: 0;
     right: 0;
     left: 0;
     margin: auto;
     text-align: center;
}
#page_top a::after {
     content: 'PAGE TOP';
     font-size: 13px;
     color: #fff;
     position: absolute;
     top: 45px;
     bottom: 0;
     right: 0;
     left: 0;
     margin: auto;
     text-align: center;
     color: #3f98ef;
}
@media screen and (max-width: 767px) {
     #page_top {
          display: none!important;
     }
}

/*----- 提供サービス内のプログラムページへのリンク一覧の「詳しくはこちらへ」ボタンの挙動設定 -----*/
a.button.button--secondary {
	border-radius: 100vh;
	transition: all .5s ease;
}
.button--secondary:hover, button a:hover {
	padding-left: 2em;
	padding-right: 2em;
	letter-spacing: normal;
}
@media screen and (max-width: 767px) {
	a.button.button--secondary {
		width: 75%;
	}
}

/*----- ガジェットボタンの挙動設定 -----*/
/* トップページ「詳細へ」 */
p.text-cta {
	bottom: 20px!important;
	width: 81%;
}
.text-cta::after {
	content: '';
	display: none;
}
p.text-cta a {
	display: block;
	padding: .5em 0;
	text-align: center;
	border: 1px solid #0063e5;
	border-radius: 100vh;
	text-decoration: none;
	transition: all .5s ease;
}
p.text-cta a:hover {
	background-color: #0063e5;
	color: #fff;
}
/* アーカイブページ「続きを読む」 */
body.archive p.text-cta {
	margin: 1em auto;
	padding: .5em!important;
	width: 75%;
	text-align: center;
	border: 1px solid #0063e5;
	border-radius: 100vh;
	transition: all .5s ease;
}
body.archive p.text-cta:hover {
	background-color: #0063e5;
	color: #fff;
}
@media screen and (max-width: 767px) {
	body.archive p.text-cta {
		margin: -.5em auto 1.5em;
	}
}

/*----- 問い合わせ・inquiryリンクボタン -----*/
/* 問い合わせ */
a.btn_link_contact {
     display: none;
}
/* inquiry */
a#btn_link_inquiry {
     position: fixed;
     padding: 1em;
     font-size: 18px;
     font-weight: 900;
     color: #2a2723;
     text-align: center;
     writing-mode: vertical-rl;
     text-decoration: none;
     background-color: #fbbd3a;
     /* border-radius: 30px 30px 0 0; */
     border-radius: 30px 0 0 30px;
     z-index: 10;
     opacity: 0;
     transition: all .5s ease;
}
a#btn_link_inquiry.is_active {
     opacity: 1;
     transition: all .5s ease;
}
/* @media screen and (min-width: 768px) { */
     /* inquiry */
     a#btn_link_inquiry {
          /* right: -47px; */
          right: 0;
          top: 35%;
          /* transform: rotate(270deg); */
     }
/* } */
@media screen and (max-width: 767px) {
     /* 問い合わせ */
     a.btn_link_contact {
          display: block;
          margin: -1em auto 1.5em;
          padding: 1em 0;
          width: 12em;
          text-align: center;
          color: #fff;
          line-height: 1;
          border-radius: 100vh;
          background-color: #6f9840;
          text-decoration: none;
     }
     a.btn_link_contact i.fa-solid {
          margin-left: 5px;
          margin-right: -5px;
          padding: 2px 2px 0;
          width: 18px;
          height: 18px;
          font-weight: 900!important;
          color: #2a2723!important;
          border: 1px solid #fff0;
          border-radius: 100%;
          background-color: #fff;
          box-sizing: border-box;
     }
     /* inquiry */
     a#btn_link_inquiry {
          /* right: -12%; */
          right: 0;
          top: 30%;
          /* transform: rotate(270deg); */
     }
}