@charset "utf-8";
/* CSS Document */

/*
Theme Name: AMATERASU
Description: Easy,SimpleDesign
Version: simple 1.1
Base Color: red
Author: AMATERASU
Author URI: http://www.seo-amaterasu.com/
*/

@media screen and (max-width: 768px){

/* layout */
body {
  margin: 0; 
  padding: 0;
}

.home #header {
  width: 100%;
  height: calc(30px + 3.0vw);
  margin: 0;
  padding-top: 2.0vw;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  background-color: #ffffff;
  position: relative;
  display: table;
  z-index: 3;
  position: relative;
}

#header {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  background-color: #ffffff;
  z-index: 3;
  position: relative;
}

.home #header_in {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  display: table;
}

#header_in {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 10px;
  display: table;
}

#main_visual {
  width: 100%;
  height: auto;
  margin: 0;
  padding-top: 7.8125%;
  background-image: url("../../uploads/2025/02/main_visual_bg.png");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  display: table;
}

#main_visual_in {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  position: relative;
  display: table;
  margin-top: 11.33%;
}

#main_visual_in .img_box {
  height: 50vh;
  position: relative;
  margin-left: auto;
  width: 100%;
}

#main_visual_in .img_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 30% 0;
}

#main_visual_in .txt_box {
  position: absolute;
  left: 5%;
  bottom: -33%;
  white-space: nowrap;
}

h2#main_h2 span{
  font-size: 9.2vw;
  color: #4A4438;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  background-color: #fff;
  padding: 10px;
  margin: 0 0 10px;
  display: inline-block;
  line-height: 1;
}

p#main_p{
  display: inline-block;
  font-size: 3.7vw;
  background-color: #fff;
  color: #4A4438;
  padding: 15px;
  line-height: 1;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
}

#under_main{
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  display: table;
}

#under_main .under_main_in{
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  position: relative;
  display: table;
}

#under_main .under_main_in .img_box{
  height: 50vh;
  position: relative;
  margin-left: auto;
  width: 100%;
}

#under_main .under_main_in .img_box img{
  width: 100%;
  height: 50vh;
  object-fit: cover;
  object-position: 50% 20%;
}

#under_main .under_main_in .txt_box{
  position: relative;
  margin: 7vw 0 0;
}

#under_main .under_main_in .txt_box h1#h1_under_main{
  font-size: 7.8vw;
  text-align: left;
  font-weight: 700;
  letter-spacing: 3px;
  margin: 0 5%;
  line-height: 1.7;
}

#under_main .under_main_in .txt_box h1#h1_under_main span{
  font-size: 5.4vw;
  color: #0036ac;
  letter-spacing: 1px;
  font-weight: 700;
}

#under_main .under_main_in h2#h2_under_main{
  background: none;
  color: #f1f1f1;
  font-weight: 700;
  font-size: 13vw;
  padding: 0;
  margin: 0;
  position: absolute;
  left: 7.5%;
  top: 45vh;
}

.home #wrapper {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  display: table;
}

.page-template-full_page #wrapper {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 70px 0 0;
  display: table;
}

#wrapper {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 5.208333333% 3.90625% 7.8125% 3.90625%;
  display: table;
}

#content {
  width: 100%;
  height: auto;
  margin-bottom: 5.208333333%;
  padding: 0;
}

.home #content{
  margin-bottom: 0;
}

.page-template-full_page #content{
  margin-bottom: 0;
}

.page-template-full_page #content .post{
  padding-bottom: 0;
}

.home  #sidebar,
.page-template-full_page #sidebar,
.page-id-212 #sidebar {
  display: none;
}

#sidebar {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
}

#footer {
  width: 100%;
  height: auto;
  margin: 0;
  padding-bottom: 13.20833333%;
  background-color: #1b5597;
  display: table;
}

#footer_in {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 6.510416666% 3.90625% 3.90625% 3.90625%;
  display: table;
}

/* アニメーション */
.scroll_item,
.scroll_list_item {
  transform: translateY(50px);
}

.scroll_item,
.scroll_list_item {
  opacity: 0;
  transition: all ease-in-out 1s;
}

.leftAnim,
.rightAnim {
  position: relative;
  transform: translate(0);
}

.leftAnim.scrollActive,
.rightAnim.scrollActive {
  transform: scaleX(0);
}

.leftAnim::after,
.rightAnim::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #fff;
  transition: all ease-in-out 1s;
  transform-origin: center right;
}

.leftAnim.scrollActive::after,
.rightAnim.scrollActive::after {
  transform: scaleX(0);
}

.rightAnim::after {
  transform-origin: center left;
}

.scroll_item.scrollActive,
.scroll_list_item.scrollActive {
  opacity: 1;
  transform: translate(0) scale(1);
}

/* スライダー */
.slideType01 {
  position: relative;
  margin: 70px 0 70px;
}

.slideType01__wrapper {
  display: flex;
  align-items: flex-start;
  transition: all ease-in-out 1.5s;
  width: 100vw;
  overflow: hidden;
}

.slideType01__content {
  display: flex;
  align-items: flex-start;
  flex-shrink: 0;
  overflow: hidden;
}

.slideType01__content:first-child {
  animation: slide1 60s -30s linear infinite;
}

.slideType01__content:last-child {
  animation: slide2 60s linear infinite;
}

.slideType01__wrapper.invert .slideType01__content:first-child {
  animation: slide3 60s -30s linear infinite;
}

.slideType01__wrapper.invert .slideType01__content:last-child {
  animation: slide4 60s linear infinite;
}

.slideType01__content figure {
  width: 77vw;
  margin: 0 3.7vw 3.7vw 0;
}

.slideType01__content figure img{
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.page-template-full_page #content .slideType01__title {
  position: absolute;
  right: 0;
  bottom: -5rem;
  left: 0;
  margin: auto;
  color: #0036ac;
  font-size: 13.2vw;
  line-height: 1.2;
  text-align: center;
  z-index: 2;
  font-weight: bold;
}

@keyframes slide1 {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes slide2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
@keyframes slide3 {
  0% {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(100%);
  }
}
@keyframes slide4 {
  0% {
    transform: translateX(-200%);
  }
  to {
    transform: translateX(0%);
  }
}

/* フッター　コンタクト */
.fixed_contact{
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  z-index: 99;
  transition: all .4s;
}

.fixed_contact ul{
  display: flex;
}

.fixed_contact ul li{
  background: #06C654;
  width: 100%;
}

.fixed_contact ul li.li01{
  background: #06C654;
}

.fixed_contact ul li.li02{
  background: #e19400;
}

.fixed_contact ul li a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  font-weight: 600;
  position: relative;
  color: #FFF;
  padding: 15px 10px 15px 20px;
  transition: all .4s;
  text-decoration: none;
  display: flex;
  align-items: center;
}

.fixed_contact ul li a img{
  margin-right: 10px;
  width: 20px;
}

.fixed_contact ul li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 3%;
  transform: translate(-50%, -50%);
  width: 13px;
  height: 13px;
  background-image: url(images/fixed_contact_arrow.svg);
  background-repeat: no-repeat;
  transition: all .4s;
}

.fixed_contact ul li a:hover::after{
  right: 7%;
}

}