@charset "UTF-8";
@import url("https://web.archive.org/web/20250228163459cs_/https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Noto+Serif+JP:wght@400;500;600&display=swap");
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  text-decoration: none;
  color: currentColor;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  cursor: pointer;
}

ins {
  background-color: #fff;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #fff;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
}

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

input,
button,
textarea,
select {
  /* デフォルトスタイルをリセット */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /* font-familyを継承しないので、継承させる */
  font-family: inherit;
  /* iOSの角丸をリセット */
  border-radius: 0;
  border: none;
  /* box-size */
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 文字色を親から継承 */
  color: inherit;
}

label {
  /* iOSでのlabelとinput,select,textareaの関連付け */
  cursor: pointer;
}

/* スピンボタン非表示 chrome,safari */
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button,
input[type=month]::-webkit-outer-spin-button,
input[type=month]::-webkit-inner-spin-button,
input[type=datetime-local]::-webkit-outer-spin-button,
input[type=datetime-local]::-webkit-inner-spin-button,
input[type=week]::-webkit-outer-spin-button,
input[type=week]::-webkit-inner-spin-button,
input[type=time]::-webkit-outer-spin-button,
input[type=time]::-webkit-inner-spin-button,
input[type=date]::-webkit-outer-spin-button,
input[type=date]::-webkit-inner-spin-button {
  /*-webkit-appearance: none;
  margin: 0;*/
  display: none;
}

/* スピンボタン非表示(firefox) */
input[type=number],
input[type=month],
input[type=datetime-local],
input[type=week],
input[type=time],
input[type=date] {
  -moz-appearance: textfield;
}

/* クリアボタン非表示 */
input[type=date]::-webkit-clear-button,
input[type=month]::-webkit-clear-button,
input[type=datetime-local]::-webkit-clear-button,
input[type=time]::-webkit-clear-button,
input[type=week]::-webkit-clear-button {
  -webkit-appearance: none;
}

@font-face {
  font-family: "mainSub";
  src: url("/web/20250228163459im_/https://kushiro-katekyo.com/fonts/WalterTurncoat.ttf") format("truetype");
}
/*============================================================
//  ブレイクポイント
//==========================================================*/
/*============================================================
//  関数
//==========================================================*/
/*============================================================
//  コンポーネント
//==========================================================*/
/*============================================================
//  共通
//==========================================================*/
html {
  scroll-behavior: smooth;
}

body {
  color: #1C1C1C;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 2.6666666667vw;
}
@media screen and (min-width: 1025px) {
  body {
    font-size: min(1.458vw, 28px);
  }
}

.l-container {
  width: calc(100% - 22.4vw);
  margin: 0 auto;
}
@media screen and (min-width: 1025px) {
  .l-container {
    width: min(62.5vw, 1200px);
  }
}

.c-secTitle {
  font-size: 4.2666666667vw;
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .c-secTitle {
    font-size: min(2.083vw, 40px);
  }
}
.c-secTitle--en {
  font-size: 2.1333333333vw;
  font-family: "Noto Serif JP", serif;
  color: #17B2D2;
  letter-spacing: 0.12em;
  display: block;
  line-height: 2;
}
@media screen and (min-width: 1025px) {
  .c-secTitle--en {
    font-size: min(1.25vw, 24px);
  }
}

.c-contactBtn {
  width: 10.6666666667vw;
  height: 10.6666666667vw;
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: -webkit-gradient(linear, left bottom, left top, from(#FFB300), to(#F8E963));
  background: -webkit-linear-gradient(bottom, #FFB300, #F8E963);
  background: linear-gradient(to top, #FFB300, #F8E963);
}
@media screen and (min-width: 1025px) {
  .c-contactBtn {
    width: min(6.25vw, 120px);
    height: min(6.25vw, 120px);
  }
}
.c-contactBtn__icon {
  width: 5.3333333333vw;
}
@media screen and (min-width: 1025px) {
  .c-contactBtn__icon {
    width: min(2.917vw, 56px);
  }
}

/*============================================================
//  ヘッダー
//==========================================================*/
.pj-header {
  height: 16vw;
}
@media screen and (min-width: 1025px) {
  .pj-header {
    height: min(6.25vw, 120px);
  }
}
.pj-header__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 2.6666666667vw;
  height: 100%;
}
.pj-header__subTitle {
  font-size: 2.6666666667vw;
  color: #1C1C1C;
  display: block;
}
@media screen and (min-width: 1025px) {
  .pj-header__subTitle {
    font-size: min(1.458vw, 28px);
  }
}
.pj-header__title {
  font-size: 3.7333333333vw;
  color: #FFA200;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .pj-header__title {
    font-size: min(1.875vw, 36px);
  }
}
.pj-header__menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 1025px) {
  .pj-header__menu {
    display: none;
  }
}
.pj-header__hum {
  width: 10.6666666667vw;
  height: 10.6666666667vw;
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: -webkit-gradient(linear, left bottom, left top, from(#0093D4), to(#00D4FF));
  background: -webkit-linear-gradient(bottom, #0093D4, #00D4FF);
  background: linear-gradient(to top, #0093D4, #00D4FF);
  margin-left: 2.1333333333vw;
  position: relative;
}
@media screen and (min-width: 1025px) {
  .pj-header__hum {
    width: min(6.25vw, 120px);
    height: min(6.25vw, 120px);
  }
}
.pj-header__hum::before, .pj-header__hum:after {
  content: "";
  display: block;
  width: 5.0666666667vw;
  height: 0.5333333333vw;
  background-color: #ffffff;
  position: absolute;
  z-index: 99;
}
.pj-header__hum::before {
  top: 3.2vw;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.pj-header__hum::after {
  bottom: 3.2vw;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.pj-header__hum.is-active::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 5.0666666667vw;
}
.pj-header__hum.is-active::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  bottom: 5.0666666667vw;
}
.pj-header__humIcon {
  width: 5.0666666667vw;
  height: 0.5333333333vw;
  background-color: #ffffff;
  display: block;
  z-index: 99;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.pj-header__humIcon.is-active {
  opacity: 0;
}
.pj-header__nav {
  display: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 1025px) {
  .pj-header__nav {
    position: static;
    background: none;
    height: auto;
    display: block;
  }
}
.pj-header__nav.is-active {
  display: block;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  height: 100vh;
  background-image: -webkit-gradient(linear, left bottom, left top, from(#D6F8FF), to(#ace0f9));
  background-image: -webkit-linear-gradient(bottom, #D6F8FF 0%, #ace0f9 100%);
  background-image: linear-gradient(to top, #D6F8FF 0%, #ace0f9 100%);
  z-index: 2;
}
.pj-header__navList {
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10.6666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-header__navList {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0 min(4.167vw, 80px);
  }
}
@media screen and (min-width: 1025px) {
  .pj-header__navLink {
    font-size: min(0.833vw, 16px);
  }
}

/*============================================================
// キービジュアル
//==========================================================*/
.pj-main {
  position: relative;
}
.pj-main::before {
  content: "";
  display: block;
  background: url(/web/20250228163459im_/https://kushiro-katekyo.com/images/blueBg.png) no-repeat center/cover;
  width: 125.3333333333vw;
  height: 98.9333333333vw;
  position: absolute;
  z-index: -1;
  top: -2%;
  left: -34%;
}
@media screen and (min-width: 1025px) {
  .pj-main::before {
    width: min(61.198vw, 1175px);
    height: min(48.281vw, 927px);
  }
}
@media screen and (min-width: 1025px) {
  .pj-main::before {
    top: 0;
    left: -4%;
  }
}

.pj-key {
  padding: 7.4666666667vw 0 10.6666666667vw 2.6666666667vw;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 1025px) {
  .pj-key {
    padding: min(7.083vw, 136px) 0 min(6.667vw, 128px);
    width: min(84.375vw, 1620px);
    overflow: visible;
    margin: 0 auto;
  }
}
.pj-key__subTitle {
  color: #7D7D7D;
  font-family: "mainSub";
}
.pj-key__title {
  font-size: 4.2666666667vw;
  margin-top: 2.1333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-key__title {
    font-size: min(2.083vw, 40px);
    margin-top: min(0.833vw, 16px);
  }
}
.pj-key__title--green {
  background-color: #ffffff;
  font-size: 6.4vw;
  border-radius: 1.0666666667vw;
  padding: 2.1333333333vw 1.0666666667vw 2.1333333333vw 2.1333333333vw;
  display: table;
  margin-top: 2.1333333333vw;
  color: #13B900;
}
@media screen and (min-width: 1025px) {
  .pj-key__title--green {
    font-size: min(2.917vw, 56px);
    border-radius: 8px;
    padding: min(0.833vw, 16px) min(0.417vw, 8px) min(0.833vw, 16px) min(0.833vw, 16px);
    margin-top: min(0.833vw, 16px);
  }
}
.pj-key__title--blue {
  background-color: #ffffff;
  font-size: 6.4vw;
  border-radius: 1.0666666667vw;
  padding: 2.1333333333vw 1.0666666667vw 2.1333333333vw 2.1333333333vw;
  display: table;
  margin-top: 2.1333333333vw;
  color: #0080B9;
}
@media screen and (min-width: 1025px) {
  .pj-key__title--blue {
    font-size: min(2.917vw, 56px);
    border-radius: 8px;
    padding: min(0.833vw, 16px) min(0.417vw, 8px) min(0.833vw, 16px) min(0.833vw, 16px);
    margin-top: min(0.833vw, 16px);
  }
}
.pj-key__title--pink {
  background-color: #ffffff;
  font-size: 6.4vw;
  border-radius: 1.0666666667vw;
  padding: 2.1333333333vw 1.0666666667vw 2.1333333333vw 2.1333333333vw;
  display: table;
  margin-top: 2.1333333333vw;
  color: #FF4696;
}
@media screen and (min-width: 1025px) {
  .pj-key__title--pink {
    font-size: min(2.917vw, 56px);
    border-radius: 8px;
    padding: min(0.833vw, 16px) min(0.417vw, 8px) min(0.833vw, 16px) min(0.833vw, 16px);
    margin-top: min(0.833vw, 16px);
  }
}
.pj-key__caution {
  margin-top: 2.1333333333vw;
  width: 45.3333333333vw;
  line-height: 1.45;
  text-shadow: 0.5333333333vw 0.5333333333vw 2.6666666667vw white;
}
@media screen and (min-width: 1025px) {
  .pj-key__caution {
    margin-top: min(0.833vw, 16px);
    width: min(21.667vw, 416px);
    text-shadow: min(0.208vw, 4px) min(0.208vw, 4px) min(1.042vw, 20px) white;
  }
}
.pj-key__ctaBtn {
  background: -webkit-gradient(linear, left top, left bottom, from(#FFA200), to(#FFD70D));
  background: -webkit-linear-gradient(top, #FFA200, #FFD70D);
  background: linear-gradient(to bottom, #FFA200, #FFD70D);
  border-radius: 1.0666666667vw;
  color: #ffffff;
  font-weight: 700;
  letter-spacing: 0.12em;
  display: table;
  margin-top: 3.2vw;
  padding: 2.6666666667vw 5.3333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-key__ctaBtn {
    border-radius: 8px;
    margin-top: min(2.917vw, 56px);
    padding: min(1.563vw, 30px) min(2.5vw, 48px);
  }
}
.pj-key__appeal {
  background-color: #0099FF;
  border-radius: 50%;
  color: #ffffff;
  font-weight: 700;
  width: 37.3333333333vw;
  height: 37.3333333333vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  position: absolute;
  bottom: 0;
  right: 4%;
}
@media screen and (min-width: 1025px) {
  .pj-key__appeal {
    width: min(16.667vw, 320px);
    height: min(16.667vw, 320px);
    right: -4%;
  }
}
.pj-key__appeal::before {
  content: "";
  display: block;
  background: url(/web/20250228163459im_/https://kushiro-katekyo.com/images/star.png) no-repeat center/cover;
  width: 6.4vw;
  height: 11.4666666667vw;
  position: absolute;
  top: 4%;
  right: 8%;
}
@media screen and (min-width: 1025px) {
  .pj-key__appeal::before {
    width: min(3.021vw, 58px);
    height: min(5.417vw, 104px);
  }
}
.pj-key__appeal::after {
  content: "";
  display: block;
  background: url(/web/20250228163459im_/https://kushiro-katekyo.com/images/star.png) no-repeat center/cover;
  width: 6.4vw;
  height: 11.4666666667vw;
  position: absolute;
  bottom: 0;
  left: 3%;
  -webkit-transform: rotate(332deg);
          transform: rotate(332deg);
}
@media screen and (min-width: 1025px) {
  .pj-key__appeal::after {
    width: min(3.021vw, 58px);
    height: min(5.417vw, 104px);
  }
}
.pj-key__appealText {
  font-size: 3.2vw;
  font-weight: 700;
  line-height: 1.6;
}
@media screen and (min-width: 1025px) {
  .pj-key__appealText {
    font-size: min(1.667vw, 32px);
  }
}
.pj-key__appealNum {
  font-size: 8.5333333333vw;
  letter-spacing: -0.16em;
  margin-top: 1.0666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-key__appealNum {
    font-size: min(3.75vw, 72px);
    margin-top: min(0.417vw, 8px);
  }
}
.pj-key__appealNum--small {
  font-size: 3.7333333333vw;
  padding-left: 1.0666666667vw;
  margin-right: -0.5333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-key__appealNum--small {
    padding-left: min(0.417vw, 8px);
    margin-right: min(-0.208vw, -4px);
    font-size: min(1.875vw, 36px);
  }
}
.pj-key__imgWrap {
  position: absolute;
  top: 4%;
  right: -6%;
  z-index: -1;
}
@media screen and (min-width: 1025px) {
  .pj-key__imgWrap {
    top: 0;
    right: -7%;
  }
}
.pj-key__img {
  width: 84.6666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-key__img {
    width: min(68.854vw, 1322px);
  }
}

/*============================================================
// 対応学年
//==========================================================*/
.pj-grade {
  margin-top: 10.6666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-grade {
    margin-top: min(10.417vw, 200px);
  }
}
.pj-grade__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 9.6vw;
  gap: 0 6.9333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-grade__list {
    margin: min(6.25vw, 120px) auto 0;
    gap: 0 min(3.333vw, 64px);
    width: min(44.167vw, 848px);
  }
}
.pj-grade__listItem {
  width: calc(100% - 13.8666666667vw);
  border-radius: 2.6666666667vw;
  -webkit-box-shadow: 1.0666666667vw 1.0666666667vw 5.3333333333vw rgba(0, 0, 0, 0.16);
          box-shadow: 1.0666666667vw 1.0666666667vw 5.3333333333vw rgba(0, 0, 0, 0.16);
  padding: 2.6666666667vw 1.6vw 3.7333333333vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ffffff;
}
@media screen and (min-width: 1025px) {
  .pj-grade__listItem {
    width: calc(100% - min(3.333vw, 64px) * 2);
    border-radius: 20px;
    -webkit-box-shadow: min(0.417vw, 8px) min(0.417vw, 8px) min(2.083vw, 40px) rgba(0, 0, 0, 0.16);
            box-shadow: min(0.417vw, 8px) min(0.417vw, 8px) min(2.083vw, 40px) rgba(0, 0, 0, 0.16);
    padding: min(2.083vw, 40px) min(2.813vw, 54px) min(1.667vw, 32px);
  }
}
.pj-grade__listItem--primary {
  border: 0.5333333333vw solid #B4FFDC;
}
@media screen and (min-width: 1025px) {
  .pj-grade__listItem--primary {
    border: 4px solid #B4FFDC;
  }
}
.pj-grade__listItem--juniorHigh {
  border: 0.5333333333vw solid #B4E8FF;
}
@media screen and (min-width: 1025px) {
  .pj-grade__listItem--juniorHigh {
    border: 4px solid #B4E8FF;
  }
}
.pj-grade__listItem--high {
  border: 0.5333333333vw solid #FFB4BC;
}
@media screen and (min-width: 1025px) {
  .pj-grade__listItem--high {
    border: 4px solid #FFB4BC;
  }
}
.pj-grade__img {
  margin-top: 2.6666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-grade__img {
    margin-top: min(1.875vw, 36px);
  }
}
.pj-grade__img--primary {
  width: 9.0666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-grade__img--primary {
    width: min(5.417vw, 104px);
  }
}
.pj-grade__img--juniorHigh {
  width: 9.6vw;
}
@media screen and (min-width: 1025px) {
  .pj-grade__img--juniorHigh {
    width: min(6.25vw, 120px);
  }
}
.pj-grade__img--high {
  width: 9.6vw;
}
@media screen and (min-width: 1025px) {
  .pj-grade__img--high {
    width: min(6.25vw, 120px);
  }
}
.pj-grade__text {
  font-size: 3.2vw;
  text-align: center;
  font-weight: 500;
}
@media screen and (min-width: 1025px) {
  .pj-grade__text {
    font-size: min(1.667vw, 32px);
  }
}

/*============================================================
// 釧路プロ家庭教師会とは
//==========================================================*/
.pj-about {
  padding-top: 26.6666666667vw;
  padding-bottom: 26.6666666667vw;
  position: relative;
  overflow: hidden;
  margin-top: -5.3333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-about {
    padding-top: min(27.083vw, 520px);
    margin-top: min(-12.5vw, -240px);
    padding-bottom: min(18.438vw, 354px);
  }
}
.pj-about::before {
  content: "";
  display: block;
  background: url(/web/20250228163459im_/https://kushiro-katekyo.com/images/yellowBg.png) no-repeat center/cover;
  width: 125.3333333333vw;
  height: 91.7333333333vw;
  position: absolute;
  z-index: -1;
  top: 0;
  right: -42%;
}
@media screen and (min-width: 1025px) {
  .pj-about::before {
    width: min(65.938vw, 1266px);
    height: min(48.229vw, 926px);
  }
}
@media screen and (min-width: 1025px) {
  .pj-about::before {
    right: -6%;
  }
}
.pj-about::after {
  content: "";
  display: block;
  background: url(/web/20250228163459im_/https://kushiro-katekyo.com/images/blueBg.png) no-repeat center/cover;
  width: 125.3333333333vw;
  height: 98.9333333333vw;
  position: absolute;
  z-index: -1;
  top: 56%;
  left: -61%;
  -webkit-transform: rotate(35deg);
          transform: rotate(35deg);
}
@media screen and (min-width: 1025px) {
  .pj-about::after {
    width: min(61.198vw, 1175px);
    height: min(48.281vw, 927px);
  }
}
@media screen and (min-width: 1025px) {
  .pj-about::after {
    left: -14%;
  }
}
.pj-about__list {
  margin-top: 9.6vw;
}
@media screen and (min-width: 1025px) {
  .pj-about__list {
    margin-top: min(6.25vw, 120px);
  }
}
.pj-about__listItem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 1025px) {
  .pj-about__listItem {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.pj-about__listItem:not(:first-child) {
  margin-top: 17.6vw;
}
@media screen and (min-width: 1025px) {
  .pj-about__listItem:not(:first-child) {
    margin-top: min(8.125vw, 156px);
  }
}
@media screen and (min-width: 1025px) {
  .pj-about__listItem:nth-child(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
@media screen and (min-width: 1025px) {
  .pj-about__textWrap {
    width: min(33.333vw, 640px);
  }
}
.pj-about__listTitle {
  background-color: #17B2D2;
  display: table;
  padding: 2.1333333333vw 7.4666666667vw;
  font-size: 3.2vw;
  letter-spacing: 0.12em;
  color: #ffffff;
}
@media screen and (min-width: 1025px) {
  .pj-about__listTitle {
    padding: min(1.042vw, 20px) min(1.667vw, 32px);
    font-size: min(1.667vw, 32px);
  }
}
.pj-about__listText {
  margin-top: 3.7333333333vw;
  line-height: 2;
}
@media screen and (min-width: 1025px) {
  .pj-about__listText {
    margin-top: min(2.5vw, 48px);
  }
}
.pj-about__imgWrap {
  margin-top: 4.8vw;
}
@media screen and (min-width: 1025px) {
  .pj-about__imgWrap {
    margin-top: 0;
  }
}
.pj-about__img {
  width: 42.6666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-about__img {
    width: min(24.792vw, 476px);
  }
}

/*============================================================
// ご挨拶
//==========================================================*/
.pj-greeting {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(10%, #DBF9FF), color-stop(50%, #FFFFFF), color-stop(90%, #DBF9FF));
  background: -webkit-linear-gradient(top, #DBF9FF 10%, #FFFFFF 50%, #DBF9FF 90%);
  background: linear-gradient(to bottom, #DBF9FF 10%, #FFFFFF 50%, #DBF9FF 90%);
  padding-top: 10.6666666667vw;
  padding-bottom: 10.6666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-greeting {
    padding-top: min(10.417vw, 200px);
    padding-bottom: min(10.417vw, 200px);
  }
}
.pj-greeting__text {
  margin-top: 9.6vw;
  text-align: center;
  line-height: 3.32;
}
@media screen and (min-width: 1025px) {
  .pj-greeting__text {
    margin-top: min(6.25vw, 120px);
  }
}
.pj-greeting__text--big {
  font-size: 3.2vw;
  font-weight: 500;
}
@media screen and (min-width: 1025px) {
  .pj-greeting__text--big {
    font-size: min(1.667vw, 32px);
  }
}

/*============================================================
// 生徒さんの声
//==========================================================*/
.pj-voice {
  padding-top: 21.3333333333vw;
  padding-bottom: 21.3333333333vw;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 1025px) {
  .pj-voice {
    padding-top: min(18.75vw, 360px);
    padding-bottom: min(18.75vw, 360px);
  }
}
.pj-voice::before {
  content: "";
  display: block;
  background: url(/web/20250228163459im_/https://kushiro-katekyo.com/images/yellowBg.png) no-repeat center/cover;
  width: 125.3333333333vw;
  height: 91.7333333333vw;
  position: absolute;
  z-index: -1;
  top: 2%;
  left: -56%;
  -webkit-transform: rotate(-35deg);
          transform: rotate(-35deg);
}
@media screen and (min-width: 1025px) {
  .pj-voice::before {
    width: min(65.938vw, 1266px);
    height: min(48.229vw, 926px);
  }
}
@media screen and (min-width: 1025px) {
  .pj-voice::before {
    left: -10%;
  }
}
.pj-voice::after {
  content: "";
  display: block;
  background: url(/web/20250228163459im_/https://kushiro-katekyo.com/images/blueBg.png) no-repeat center/cover;
  width: 125.3333333333vw;
  height: 98.9333333333vw;
  position: absolute;
  z-index: -1;
  top: 42%;
  right: -42%;
}
@media screen and (min-width: 1025px) {
  .pj-voice::after {
    width: min(61.198vw, 1175px);
    height: min(48.281vw, 927px);
  }
}
@media screen and (min-width: 1025px) {
  .pj-voice::after {
    right: 20%;
  }
}
@media screen and (min-width: 1025px) {
  .pj-voice__container {
    width: min(78.854vw, 1514px);
  }
}
.pj-voice__list {
  margin-top: 9.6vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10.6666666667vw 0;
}
@media screen and (min-width: 1025px) {
  .pj-voice__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-top: min(6.25vw, 120px);
    gap: min(8.333vw, 160px);
  }
}
.pj-voice__list::before {
  content: "";
  display: block;
  background: url(/web/20250228163459im_/https://kushiro-katekyo.com/images/yellowBg.png) no-repeat center/cover;
  width: 125.3333333333vw;
  height: 91.7333333333vw;
  position: absolute;
  z-index: -1;
  bottom: 5%;
  left: 50%;
  -webkit-transform: rotate(-35deg) translateX(-50%);
          transform: rotate(-35deg) translateX(-50%);
}
@media screen and (min-width: 1025px) {
  .pj-voice__list::before {
    width: min(65.938vw, 1266px);
    height: min(48.229vw, 926px);
  }
}
@media screen and (min-width: 1025px) {
  .pj-voice__list::before {
    bottom: 10%;
  }
}
.pj-voice__listItem {
  padding: 9.6vw 6.9333333333vw;
  background-color: #ffffff;
  border-radius: 2.6666666667vw;
  -webkit-box-shadow: 1.0666666667vw 1.0666666667vw 5.3333333333vw rgba(0, 0, 0, 0.16);
          box-shadow: 1.0666666667vw 1.0666666667vw 5.3333333333vw rgba(0, 0, 0, 0.16);
}
@media screen and (min-width: 1025px) {
  .pj-voice__listItem {
    padding: min(3.75vw, 72px) min(2.708vw, 52px);
    border-radius: 20px;
    -webkit-box-shadow: min(0.417vw, 8px) min(0.417vw, 8px) min(2.083vw, 40px) rgba(0, 0, 0, 0.16);
            box-shadow: min(0.417vw, 8px) min(0.417vw, 8px) min(2.083vw, 40px) rgba(0, 0, 0, 0.16);
    width: calc((100% - min(8.333vw, 160px)) / 2);
  }
}
.pj-voice__name {
  font-weight: 700;
  line-height: 2;
  margin-top: 6.4vw;
}
@media screen and (min-width: 1025px) {
  .pj-voice__name {
    margin-top: min(3.333vw, 64px);
  }
}
.pj-voice__name--boy {
  color: #0077FF;
}
.pj-voice__name--girl {
  color: #FF9100;
}
.pj-voice__subtext {
  margin-top: 3.7333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-voice__subtext {
    margin-top: min(2.188vw, 42px);
  }
}
.pj-voice__text {
  line-height: 2;
  margin-top: 3.7333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-voice__text {
    margin-top: min(1.458vw, 28px);
  }
}

/*============================================================
// 受講料金
//==========================================================*/
.pj-price__container {
  max-width: 880px;
}
.pj-price__text {
  margin-top: 9.6vw;
  line-height: 2;
}
@media screen and (min-width: 1025px) {
  .pj-price__text {
    margin-top: min(6.25vw, 120px);
  }
}
.pj-price__text--center {
  text-align: center;
  line-height: 2;
  margin-top: 7.2vw;
}
@media screen and (min-width: 1025px) {
  .pj-price__text--center {
    margin-top: min(2.813vw, 54px);
  }
}
.pj-price__item {
  text-align: center;
  margin-top: 10.6666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-price__item {
    margin-top: min(6.25vw, 120px);
  }
}
.pj-price__itemText {
  line-height: 2;
  font-weight: 500;
}
.pj-price__table {
  -webkit-box-shadow: 1.0666666667vw 1.0666666667vw 5.3333333333vw rgba(0, 0, 0, 0.16);
          box-shadow: 1.0666666667vw 1.0666666667vw 5.3333333333vw rgba(0, 0, 0, 0.16);
  border-radius: 1.0666666667vw;
  background-color: #ffffff;
  margin-top: 6.4vw;
}
@media screen and (min-width: 1025px) {
  .pj-price__table {
    -webkit-box-shadow: min(0.417vw, 8px) min(0.417vw, 8px) min(2.083vw, 40px) rgba(0, 0, 0, 0.16);
            box-shadow: min(0.417vw, 8px) min(0.417vw, 8px) min(2.083vw, 40px) rgba(0, 0, 0, 0.16);
    border-radius: 8px;
    margin-top: min(2.917vw, 56px);
  }
}
.pj-price__table :not(:first-of-type) {
  border-top: 1px solid #DBDBDB;
}
.pj-price__tableCol {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.pj-price__tableTitle {
  color: #ffffff;
  width: 50%;
  padding: 3.2vw;
}
@media screen and (min-width: 1025px) {
  .pj-price__tableTitle {
    padding: min(1.875vw, 36px);
  }
}
.pj-price__tableTitle--skyblue {
  background-color: #71BDFF;
  border-top-left-radius: 1.0666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-price__tableTitle--skyblue {
    border-top-left-radius: 8px;
  }
}
.pj-price__tableTitle--turquoise {
  background-color: #00ABCE;
}
.pj-price__tableTitle--dodgerblue {
  background-color: #0078FF;
  border-bottom-left-radius: 1.0666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-price__tableTitle--dodgerblue {
    border-bottom-left-radius: 8px;
  }
}
.pj-price__tableDetail {
  width: 50%;
  padding: 3.2vw;
}
@media screen and (min-width: 1025px) {
  .pj-price__tableDetail {
    padding: min(1.875vw, 36px);
  }
}
.pj-price__cautionText {
  margin-top: 12.8vw;
  color: #8A8A8A;
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .pj-price__cautionText {
    margin-top: min(10.417vw, 200px);
  }
}

/*============================================================
// 代表教師
//==========================================================*/
.pj-teacher {
  padding-top: 34.6666666667vw;
  position: relative;
  overflow: hidden;
  margin-top: -13.3333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-teacher {
    padding-top: min(27.083vw, 520px);
    margin-top: min(-5.208vw, -100px);
    padding-bottom: min(20.417vw, 200px);
  }
}
.pj-teacher::before {
  content: "";
  display: block;
  background: url(/web/20250228163459im_/https://kushiro-katekyo.com/images/yellowBg.png) no-repeat center/cover;
  width: 125.3333333333vw;
  height: 91.7333333333vw;
  position: absolute;
  z-index: -1;
  top: 28%;
  right: -56%;
  -webkit-transform: rotate(284deg);
          transform: rotate(284deg);
}
@media screen and (min-width: 1025px) {
  .pj-teacher::before {
    width: min(65.938vw, 1266px);
    height: min(48.229vw, 926px);
  }
}
@media screen and (min-width: 1025px) {
  .pj-teacher::before {
    top: 5%;
    right: 0;
  }
}
.pj-teacher__title {
  text-align: left;
}
.pj-teacher__text {
  line-height: 1.6;
  margin-top: 13.8666666667vw;
  position: relative;
}
@media screen and (min-width: 1025px) {
  .pj-teacher__text {
    margin-top: min(6.25vw, 120px);
  }
}
.pj-teacher__text::before, .pj-teacher__text::after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: #CCCCCC;
  position: absolute;
}
.pj-teacher__text::before {
  top: -4.2666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-teacher__text::before {
    top: min(-2.5vw, -48px);
  }
}
.pj-teacher__text::after {
  bottom: -4.2666666667vw;
  left: 0;
}
@media screen and (min-width: 1025px) {
  .pj-teacher__text::after {
    bottom: min(-2.5vw, -48px);
  }
}
.pj-teacher__text--strong {
  font-size: 3.2vw;
  font-weight: 500;
  color: #00A2FF;
  display: block;
  padding-bottom: 5.3333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-teacher__text--strong {
    padding-bottom: min(2.083vw, 40px);
    font-size: min(1.667vw, 32px);
  }
}
.pj-teacher__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.pj-teacher__list {
  margin-top: 13.8666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-teacher__list {
    margin-top: min(12.917vw, 248px);
  }
}
.pj-teacher__listCol:not(:first-of-type) {
  margin-top: 4.2666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-teacher__listCol:not(:first-of-type) {
    margin-top: min(1.667vw, 32px);
  }
}
.pj-teacher__listTitle {
  font-size: 3.2vw;
  font-weight: 700;
  line-height: 1.45;
}
@media screen and (min-width: 1025px) {
  .pj-teacher__listTitle {
    font-size: min(1.458vw, 28px);
  }
}
.pj-teacher__listDetail {
  line-height: 1.4;
}
@media screen and (min-width: 1025px) {
  .pj-teacher__listDetail {
    font-size: min(1.25vw, 24px);
  }
}
.pj-teacher__imgWrap {
  text-align: right;
  margin-top: -6.4vw;
}
@media screen and (min-width: 1025px) {
  .pj-teacher__imgWrap {
    margin-top: min(-21.771vw, -268px);
  }
}
.pj-teacher__img {
  width: 42.6666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-teacher__img {
    width: min(31.25vw, 600px);
  }
}

/*============================================================
// お問い合わせ
//==========================================================*/
.pj-contact {
  position: relative;
  padding-top: 66.6666666667vw;
  margin-top: -21.3333333333vw;
  padding-bottom: 37.3333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-contact {
    padding-top: min(34.271vw, 658px);
    margin-top: min(6.25vw, 120px);
    padding-bottom: min(10.417vw, 200px);
  }
}
.pj-contact::before {
  content: "";
  background: url(/web/20250228163459im_/https://kushiro-katekyo.com/images/contact.jpg) no-repeat center/cover;
  width: 100%;
  height: 41.6vw;
  position: absolute;
  top: 20%;
}
@media screen and (min-width: 1025px) {
  .pj-contact::before {
    height: min(36.458vw, 700px);
    top: 10%;
  }
}
.pj-contact::after {
  content: "";
  display: block;
  background: url(/web/20250228163459im_/https://kushiro-katekyo.com/images/blueBg.png) no-repeat center/cover;
  width: 125.3333333333vw;
  height: 98.9333333333vw;
  position: absolute;
  z-index: -1;
  top: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  left: -49%;
}
@media screen and (min-width: 1025px) {
  .pj-contact::after {
    width: min(61.198vw, 1175px);
    height: min(48.281vw, 927px);
  }
}
@media screen and (min-width: 1025px) {
  .pj-contact::after {
    left: -20%;
    top: -22%;
  }
}
.pj-contact__inner {
  background-color: #ffffff;
  border-radius: 2.6666666667vw;
  position: relative;
  padding: 9.6vw 4.8vw 0;
}
@media screen and (min-width: 1025px) {
  .pj-contact__inner {
    border-radius: 20px;
    padding: min(7.292vw, 140px) min(14.479vw, 278px) 0;
  }
}
.pj-contact__form {
  margin-top: 10.6666666667vw;
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .pj-contact__form {
    margin-top: min(3.333vw, 64px);
  }
}
.pj-contact__formCol:not(:first-child) {
  margin-top: 5.3333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-contact__formCol:not(:first-child) {
    margin-top: min(4.583vw, 88px);
  }
}
.pj-contact__formLabel {
  font-size: 3.2vw;
}
@media screen and (min-width: 1025px) {
  .pj-contact__formLabel {
    font-size: min(1.458vw, 28px);
  }
}
.pj-contact__form input[type=text],
.pj-contact__form input[type=email],
.pj-contact__form textarea {
  border-radius: 1.0666666667vw;
  border: 1px solid #373737;
  width: 100%;
  margin-top: 3.2vw;
  font-size: 16px;
  padding: 1.0666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-contact__form input[type=text],
.pj-contact__form input[type=email],
.pj-contact__form textarea {
    border-radius: 8px;
    margin-top: min(2.5vw, 48px);
    padding: min(0.417vw, 8px);
  }
}
.pj-contact__form textarea {
  resize: none;
  min-height: 53.3333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-contact__form textarea {
    min-height: min(20.833vw, 400px);
  }
}
.pj-contact__form button[type=submit] {
  border: 1px solid #17B2D2;
  color: #17B2D2;
  border-radius: 1.0666666667vw;
  min-width: 120px;
  background-color: #ffffff;
  display: table;
  margin: 5.3333333333vw 0 0 auto;
}
@media screen and (min-width: 1025px) {
  .pj-contact__form button[type=submit] {
    border-radius: 8px;
    margin: min(2.083vw, 40px) 0 0 auto;
    width: min(16.458vw, 316px);
  }
}
.pj-contact__form button[type=submit] span {
  font-size: 3.2vw;
  padding: 1.8666666667vw;
  display: inline-block;
}
@media screen and (min-width: 1025px) {
  .pj-contact__form button[type=submit] span {
    font-size: min(1.458vw, 28px);
    padding: min(0.729vw, 14px);
  }
}

/*============================================================
// 追従
//==========================================================*/
.pj-follow {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  padding: 0 2.6666666667vw;
  position: fixed;
  bottom: 4%;
  right: 0;
}
@media screen and (min-width: 1025px) {
  .pj-follow {
    padding: 0 min(4.167vw, 80px);
  }
}

.pj-scrollBtn {
  width: 10.6666666667vw;
  height: 10.6666666667vw;
  border-radius: 50%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: -webkit-gradient(linear, left bottom, left top, from(#0093D4), to(#00D4FF));
  background: -webkit-linear-gradient(bottom, #0093D4, #00D4FF);
  background: linear-gradient(to top, #0093D4, #00D4FF);
  margin-right: 2.1333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-scrollBtn {
    width: min(6.25vw, 120px);
    height: min(6.25vw, 120px);
  }
}
@media screen and (min-width: 1025px) {
  .pj-scrollBtn {
    margin-right: min(0.833vw, 16px);
  }
}
.pj-scrollBtn__icon {
  width: 5.3333333333vw;
}
@media screen and (min-width: 1025px) {
  .pj-scrollBtn__icon {
    width: min(2.917vw, 56px);
  }
}

/*============================================================
// フッター
//==========================================================*/
.pj-footer {
  padding-top: 10.6666666667vw;
  padding-bottom: 2.6666666667vw;
  background-color: #7AD6FF;
}
@media screen and (min-width: 1025px) {
  .pj-footer {
    padding-top: min(4.167vw, 80px);
    padding-bottom: min(1.042vw, 20px);
  }
}

.pj-access__title {
  color: #ffffff;
}
.pj-access__title--en {
  color: #ffffff;
}

.pj-address {
  text-align: center;
  margin-top: 5.3333333333vw;
  font-style: normal;
}
@media screen and (min-width: 1025px) {
  .pj-address {
    margin-top: min(2.083vw, 40px);
  }
}
.pj-address__text {
  color: #ffffff;
  line-height: 1.6;
}

.pj-copyright {
  text-align: center;
  margin-top: 10.6666666667vw;
}
@media screen and (min-width: 1025px) {
  .pj-copyright {
    margin-top: min(4.167vw, 80px);
  }
}
.pj-copyright__text {
  color: #ffffff;
  -webkit-transform: scale(0.8);
          transform: scale(0.8);
  display: inline-block;
}
/*
     FILE ARCHIVED ON 16:34:59 Feb 28, 2025 AND RETRIEVED FROM THE
     INTERNET ARCHIVE ON 09:26:12 Feb 12, 2026.
     JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE.

     ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C.
     SECTION 108(a)(3)).
*/
/*
playback timings (ms):
  captures_list: 0.515
  exclusion.robots: 0.019
  exclusion.robots.policy: 0.009
  esindex: 0.011
  cdx.remote: 11.221
  LoadShardBlock: 115.582 (3)
  PetaboxLoader3.datanode: 109.765 (4)
  PetaboxLoader3.resolve: 76.657 (2)
  load_resource: 111.147
*/