@media screen and (max-width: 767px) {
  .cmshtml {
    /* box-nextlink */
    /* page_wrap */
    /* main-img-top */
    /* link01 */
    /* link02 */
    /* contents01 */
    /* contents02 */
    /* contents03 */
    /* contents04 */
    /* news */
  }
  .cmshtml .box-nextlink {
    bottom: 70px;
    height: 50px;
  }
  .cmshtml .box-nextlink img {
    height: 50px;
  }
  .cmshtml .page_wrap {
    right: 5%;
  }
  .cmshtml .page_wrap li {
    margin-bottom: 15px;
  }
  .cmshtml .page_wrap a {
    width: 8px;
    height: 8px;
  }
  .cmshtml .box-movie img,
.cmshtml .box-movie video {
    width: auto;
    max-width: auto;
    height: 100vh;
  }
  .cmshtml .main-img-top h2 img {
    height: 100px;
  }
  .cmshtml .main-img-top h3 {
    font-size: 16px;
    padding: 12px 0px 25px;
  }
  .cmshtml .main-img-top h4 {
    font-size: 24px;
    letter-spacing: 0.1em;
  }
  .cmshtml .contents-top p,
.cmshtml .contents-top .wc_textbox {
    line-height: 2;
  }
  .cmshtml .contents-top .link01 {
    padding-top: 35px;
  }
  .cmshtml .contents-top .link01 a {
    padding: 15px 0px;
    min-width: 220px;
  }
  .cmshtml .contents-top .link01 a::before {
    background-size: auto 8px;
    margin-right: -20px;
  }
  .cmshtml .contents-top .link01 a:hover::before {
    margin-right: -20px;
  }
  .cmshtml .contents-top .link02 {
    padding-top: 20px;
  }
  .cmshtml .contents-top .link02 a {
    padding-right: 60px;
    background-position: right 0px center;
    background-size: auto 8px;
  }
  .cmshtml .contents01 {
    padding-bottom: 200px;
    text-align: center;
  }
  .cmshtml .contents01 .box-inner {
    width: 88%;
    justify-content: center;
    padding-top: 70px;
    gap: 30px;
  }
  .cmshtml .contents01 .box-logo {
    width: 100%;
    max-width: 100%;
  }
  .cmshtml .contents01 .box-logo img {
    width: 130px;
  }
  .cmshtml .contents01 .box-detail {
    width: 100%;
  }
  .cmshtml .contents01 .box-text {
    text-align: left;
  }
  .cmshtml .box-text-animation {
    padding-top: 35px;
    bottom: -5px;
  }
  .cmshtml .scroll-infinity__item {
    padding-right: 60px;
  }
  .cmshtml .box-textanimation01 .scroll-infinity__item,
.cmshtml .box-textanimation01 img {
    height: 92px;
  }
  .cmshtml .box-textanimation02 .scroll-infinity__item,
.cmshtml .box-textanimation02 img {
    height: 50px;
  }
  .cmshtml .contents02 {
    padding: 60px 0px;
  }
  .cmshtml .contents02 .box-detail {
    width: 88%;
    max-width: 450px;
  }
  .cmshtml .contents02 .box-detail::after {
    width: 230px;
    margin-left: -22px;
    margin-top: -20px;
  }
  .cmshtml .service01 .box-detail::after {
    height: 140px;
  }
  .cmshtml .service02 .box-detail::after {
    height: 185px;
  }
  .cmshtml .service03 .box-detail::after {
    height: 185px;
  }
  .cmshtml .contents02 .box-detail .inner-wrap {
    height: auto;
    padding: 50px 10%;
  }
  .cmshtml .contents02 h2 {
    font-size: 22px;
    letter-spacing: 0.1em;
    margin-bottom: 30px;
  }
  .cmshtml .contents03 {
    padding-bottom: 15vh;
  }
  .cmshtml .contents03::before {
    top: 70px;
    width: 15%;
    height: 30%;
    background-position: right top;
    background-size: auto 100%;
  }
  .cmshtml .contents03 .box-inner {
    width: 88%;
    padding-top: 70px;
  }
  .cmshtml .contents03 .box-detail {
    padding-left: 18%;
  }
  .cmshtml .contents03 .box-slider01 .box {
    padding: 0px 4px;
  }
  .cmshtml .contents04 {
    padding: 70px 0px 150px;
  }
  .cmshtml .contents04 .box-inner {
    height: auto;
  }
  .cmshtml .contents04 .inner {
    width: 100%;
    max-width: 100%;
  }
  .cmshtml .contents04 .box-title-top {
    width: 100%;
    max-width: 100%;
    margin-bottom: 50px;
    text-align: center;
  }
  .cmshtml .contents04 .box-detail {
    width: 88%;
    padding-left: 0%;
  }
  .cmshtml .contents04 .box-detail::before {
    right: 5.5%;
    height: 130px;
    margin-top: -15px;
  }
  .cmshtml .contents04 .news_text {
    width: 80%;
    max-width: 80%;
  }
  .cmshtml .contents-top .rdplaneinfo .rdNewInfoList_ez-item,
.cmshtml .contents-top .news_text .rdnewArticle .rdnewArticle-item {
    padding: 18px 5px;
  }
  .cmshtml .contents-top .rdNewInfoList_ez .rdNewInfoList_ez-item {
    padding: 18px 5px;
  }
  .cmshtml .contents-top .rdplaneinfo .rdNewInfoList_ez-item::before,
.cmshtml .contents-top .news_text .rdnewArticle .rdnewArticle-item::before {
    display: none;
  }
  .cmshtml .contents-top .news_img .rdnewArticle .rdnewArticle-item {
    width: 48%;
    max-width: 48%;
    margin-right: 0px;
    padding: 8px;
    padding-bottom: 15px;
  }
  .cmshtml .contents-top .news_img .rdnewArticle .rdnewArticle-item:nth-child(4) {
    display: block;
  }
  .cmshtml .contents-top .news_img .rdnewArticle .rdnewArticle-item img {
    width: 100%;
    max-width: 400px;
  }
  .cmshtml .contents-top .news_img .rdnewArticle {
    gap: 20px 4%;
  }
  .cmshtml .contents-top .rdNewInfoList_ez-ContDate,
.cmshtml .contents-top .rdnewArticle .rdnewArticle-ContDate {
    width: 100%;
    max-width: 100%;
  }
  .cmshtml .contents-top .rdNewInfoList_ez-ContTitle,
.cmshtml .contents-top .news_text .rdnewArticle .rdnewArticle-ContTitle {
    padding-left: 0px;
  }
  .cmshtml .contents-top .rdNewInfoList_ez-ContDate::after,
.cmshtml .contents-top .rdnewArticle .rdnewArticle-ContDate::after {
    display: none;
  }
  .cmshtml .pc-view {
    display: none;
  }
  .cmshtml .sp-view {
    display: inline-block;
  }
}
