@media screen and (min-width: 769px) {
  .p_top .slider__main .swiper-wrapper {
    -webkit-transition-timing-function: linear !important;
       -moz-transition-timing-function: linear !important;
            transition-timing-function: linear !important;
  }
  .p_top .slider__main ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    width: auto;
  }
  .p_top .slider__main ul li {
    line-height: 0;
    width: 260px;
    height: 180px;
  }
  .p_top .slider__main ul li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

@media screen and (max-width: 769px) {
  .p_top .slider__main .swiper-wrapper {
    -webkit-transition-timing-function: linear !important;
       -moz-transition-timing-function: linear !important;
            transition-timing-function: linear !important;
  }
  .p_top .slider__main ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    width: auto;
  }
  .p_top .slider__main ul li {
    line-height: 0;
    width: 41.0628vw;
    /*width: 41.78743vw;*/
    height: 27.77778vw;
    /*padding: 0 0.72463vw*/
  }
  .p_top .slider__main ul li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
@media screen and (min-width: 769px) {
  .secManga01 {
    padding: 40px 0 0;
  }
  .secManga01__main {
    max-width: 800px;
  }
  .secManga01__main--fig {
    width: 100%;
    height: auto;
  }
  .secManga01__main--arrow {
    text-align: center;
    line-height: 0;
    margin-top: 14px;
  }
  .secManga01__main--arrow img {
    width: 514.81px;
    height: auto;
  }
  .p_top .sec01 {
    padding: 30px 0;
  }
  .secManga02 {
    padding: 0 0 110px;
  }
  .secManga02__main {
    max-width: 800px;
  }
  .secManga02__main--fig {
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 768px) {
  .secManga01 {
    padding: 4.8309vw 0 0;
  }
  .secManga01__main {

  }
  .secManga01__main--fig {
    width: 100%;
    height: auto;
  }
  .secManga01__main--arrow {
    text-align: center;
    line-height: 0;
    margin-top: 4.8309vw;
  }
  .secManga01__main--arrow img {
    width: 100%;
    height: auto;
  }
  .p_top .sec01 {
    padding: 4.8309vw 0;
  }
  .secManga02 {
    padding: 0 0 16.90821vw;
  }
  .secManga02__main {

  }
  .secManga02__main--fig {
    width: 100%;
    height: auto;
  }
}
/* Column Section Styles */
@media screen and (min-width: 769px) {
  .column {
    background: #1fb10f;
    padding: 40px 0;
  }

  .column__main {
    padding: 0;
  }

  .column__box {
    background: #ffffff;
    border-radius: 6px;
    padding: 27px 57px;
    box-shadow: 0 0 24px rgba(0, 0, 0, 0.25);
    max-width: 800px;
  }

  .column__title {
    font-size: 40px;
    line-height: 1.3;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin-bottom: 20px;
    font-family: 'Noto Sans JP', sans-serif;
  }

  .column__item {
    border-bottom: 1px dotted #AFC1E2;
  }

  .column__link {
    display: block;
    padding: 13px 20px 13px 0;
    text-decoration: none;
    color: #19360a!important;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 700;
    font-family: 'Noto Sans JP', sans-serif;
    transition: all 0.3s ease;
    cursor: pointer;
    position: relative;
    width: 100%;
  }

  .column__link:hover {
    color: #003da5;
  }

  .column__link::after {
    position: absolute;
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    background: url('../img/columnArrow.png') 0 0 no-repeat;
    background-size: contain;
  }
}

/* SP Styles */
@media screen and (max-width: 768px) {
  .column {
    background: #1fb10f;
    padding: 7.24637vw 3.62318vw;
  }

  .column__main {
    padding: 0;
  }

  .column__box {
    background: #ffffff;
    border-radius: 1.44927vw;
    padding: 4.1062vw 3.62318vw 7.2463vw;
    box-shadow: 0 0 5.7971vw rgba(0, 0, 0, 0.25);
  }

  .column__title {
    font-size: 7.7294vw;
    line-height: 1.3;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin-bottom: 4.8309vw;
    font-family: 'Noto Sans JP', sans-serif;
  }

  .column__item {
    border-bottom: 1px dotted #AFC1E2;
  }

  .column__link {
    display: block;
    padding: 3.47vw 5.33vw 3.47vw 0;
    text-decoration: none;
    color: #19360a!important;
    font-size: 3.73vw;
    line-height: 1.3;
    font-weight: 700;
    font-family: 'Noto Sans JP', sans-serif;
    transition: all 0.3s ease;
    cursor: pointer;
    position: relative;
    width: 100%;
  }

  .column__link:hover {
    color: #003da5;
  }

  .column__link::after {
    position: absolute;
    content: "";
    display: inline-block;
    width: 3.73vw;
    height: 3.73vw;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    background: url('../img/columnArrow.png') 0 0 no-repeat;
    background-size: contain;
  }
}

#fixed_cv {
  display: none;
}

@media screen and (max-width: 768px) {
  .p_top .footer {
    padding-bottom: 16vw;
  }

  #fixed_cv {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 9997;
    display: block;
    width: 100%;
    font-family: "Noto Sans JP", sans-serif;
  }

  #fixed_cv aside {
    width: 96%;
    margin: 0 auto;
    overflow: hidden;
    background: #fff;
    border: 2px solid #fff;
    border-radius: 1.2vw 1.2vw 0 0;
    box-shadow: 0 0 1.45vw rgba(0, 0, 0, 0.28);
  }

  #fixed_cv h2 {
    position: relative;
    margin: 0;
    padding: 0 14vw 0 5vw;
    color: #fff;
    font-size: 4.35vw;
    font-weight: 700;
    line-height: 12.3vw;
    letter-spacing: 0;
    text-align: left;
    background: #187918;
    cursor: pointer;
  }

  #fixed_cv h2 em {
    color: #ffec47;
    font-size: 5.1vw;
    font-style: normal;
  }

  #fixed_cv h2 > span {
    position: absolute;
    top: 50%;
    right: 4vw;
    width: 5.8vw;
    height: 5.8vw;
    background: #fff;
    border-radius: 50%;
    transform: translateY(-50%);
  }

  #fixed_cv h2 > span::before,
  #fixed_cv h2 > span::after {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    content: "";
    background: #187918;
    transform: translate(-50%, -50%);
  }

  #fixed_cv h2 > span::before {
    width: 2.8vw;
    height: 0.55vw;
  }

  #fixed_cv h2 > span::after {
    width: 0.55vw;
    height: 2.8vw;
    transition: opacity 0.2s ease;
  }

  #fixed_cv.is_open h2 > span::after {
    opacity: 0;
  }

  #fixed_cv .inner {
    display: none;
    padding: 3.6vw;
    background: #fffcf3;
    text-align: center;
  }

  #fixed_cv .txt {
    margin: 0 0 3vw;
    color: #333;
    font-size: 3.5vw;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: 0;
  }

  #fixed_cv .txt em {
    color: #e95200;
    font-style: normal;
  }

  #fixed_cv .tel {
    margin-bottom: 3.6vw;
  }

  #fixed_cv .tel a,
  #fixed_cv .mail a,
  #fixed_cv .line a {
    display: block;
    min-height: 11.4vw;
    color: #111 !important;
    font-weight: 700;
    line-height: 11.4vw;
    border: 0.72vw solid #111;
    border-radius: 1.2vw;
  }

  #fixed_cv .tel a {
    background: #fff;
  }

  #fixed_cv .center {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.8vw;
  }

  #fixed_cv .free {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 13.8vw;
    height: 7vw;
    color: #187918;
    font-size: 2.6vw;
    line-height: 1.15;
    border: 0.45vw solid #187918;
    border-radius: 50%;
  }

  #fixed_cv .label {
    font-size: 3.35vw;
  }

  #fixed_cv .num {
    color: #187918;
    font-family: "DIN 2014", "Roboto", sans-serif;
    font-size: 6.1vw;
    line-height: 1;
  }

  #fixed_cv .cv_links {
    display: grid;
    /*grid-template-columns: repeat(2, minmax(0, 1fr));*/
    gap: 2vw;
    margin-bottom: 3.6vw;
  }

  #fixed_cv .mail a,
  #fixed_cv .line a {
    min-height: 11.8vw;
    color: #fff !important;
    font-size: 3.65vw;
    line-height: 11.8vw;
    border: 0;
  }

  #fixed_cv .mail a {
    background: linear-gradient(-135deg, #f37e00, #e95200);
  }

  #fixed_cv .mail a em {
    color: #ffec47;
    font-style: normal;
  }

  #fixed_cv .line a {
    background: linear-gradient(-135deg, #5aa212, #34b61b);
  }

  #fixed_cv .certificate {
    margin: 0;
    color: #333;
    font-size: 3vw;
    font-weight: 700;
    line-height: 1.6;
    text-align: left;
  }
}
