@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 (min-width: 769px){

/* layout */
body {
  min-width: 1440px;
  margin: 0;
  padding: 0;
}

.home #header {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  background-color: #ffffff;
  display: table;
  box-shadow: none;
}

#header {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  background-color: #ffffff;
  display: table;
}

#main_visual {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  display: table;
  background-image: url("../../uploads/2025/02/main_visual_bg.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

#main_visual_in {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  position: relative;
  display: table;
}

#main_visual_in .img_box {
  height: 48.69231rem;
  position: relative;
  margin-left: auto;
  width: 75%;
}

#main_visual_in .img_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0%;
  font-family: "object-fit:cover; object-position:50% 0%; ";
  border-top-left-radius: 3.07692rem;
}

#main_visual_in .txt_box {
  position: absolute;
  left: 10%;
  bottom: 11%;
  white-space: nowrap;
}

h2#main_h2 span{
  font-size: 73px;
  color: #4A4438;
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  background-color: #fff;
  padding: 10px;
  margin: 0 0 20px;
  display: inline-block;
  line-height: 1;
}

p#main_p{
  display: inline-block;
  font-size: 23px;
  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: 640px;
  position: relative;
  margin-left: auto;
  width: 75%;
}

#under_main .under_main_in .img_box img{
  width: 100%;
  height: 640px;
  object-fit: cover;
  object-position: 50% 20%;
  border-top-left-radius: 3.07692rem;
}

#under_main .under_main_in .txt_box{
  position: absolute;
  left: 5%;
  bottom: 33%;
  white-space: nowrap;
}

#under_main .under_main_in .txt_box h1#h1_under_main{
  font-size: 50px;
  text-align: left;
  font-weight: 700;
  letter-spacing: 3px;
}

#under_main .under_main_in .txt_box h1#h1_under_main span{
  font-size: 27px;
  color: #0036ac;
  letter-spacing: 1px;
  font-weight: 700;
}

#under_main .under_main_in h2#h2_under_main{
  position: absolute;
  bottom: 10%;
  left: 11%;
  background: none;
  color: #f1f1f1;
  font-weight: 700;
  font-size: 90px;
  padding: 0;
  margin: 0;
}

.home #wrapper,
.page-template-full_page #wrapper {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  display: table;
}

.home #wrapper{
  padding: 0;
}

#wrapper {
  width: 1200px;
  height: auto;
  margin: 0 auto;
  padding: 40px 0 80px 0;
  display: table;
}

.home #content,
.page-template-full_page #content{
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
}

#content {
  width: 860px;
  height: auto;
  margin: 0;
  padding: 0;
  float: right;
}

.page-template-full_page #content .post{
  padding: 0;
}

.home  #sidebar,
.page-template-full_page #sidebar,
.page-id-212 #sidebar {
  display: none;
}

#sidebar {
  width: 300px;
  height: auto;
  margin: 0;
  padding: 0;
  float: left;
}

#footer {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  background-color: #1b5597;
  display: table;
}

#footer_in {
  width: 1280px;
  height: auto;
  margin: 0 auto;
  padding: 40px 20px 20px 20px;
  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: 100px 0 100px;
}

.slideType01__wrapper {
  display: flex;
  align-items: flex-start;
  transition: all ease-in-out 1.5s;
  width: 99.1vw;
  overflow: hidden;
}


.slideType01__content {
  display: flex;
  align-items: flex-start;
  width: 126vw;
  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: 30vw;
  margin: 0 1.7vw 1.7vw 0;
}

.slideType01__content figure img{
  object-fit: cover;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 768px) and (max-width: 1280px) {
  .slideType01__wrapper{
    min-width: 1440px;
  }
  .slideType01__content{
    min-width: 1440px;
  }
}

.page-template-full_page #content .slideType01__title {
  position: absolute;
  right: 0;
  bottom: -3rem;
  left: 0;
  margin: auto;
  color: #0036ac;
  font-size: 5.5rem;
  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: 560px;
  z-index: 99;
  transition: all .4s;
}

.fixed_contact ul{
  display: flex;
}

.fixed_contact ul li{
  background: #06C654;
  width: 280px;
}

.fixed_contact ul li.li01{
  background: #06C654;
  border-top-left-radius: 20px;
}

.fixed_contact ul li.li02{
  background: #e19400;
  border-top-right-radius: 20px;
}

.fixed_contact ul li a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  font-weight: 600;
  position: relative;
  color: #FFF;
  padding: 14px 32px;
  transition: all .4s;
  text-decoration: none;
  display: flex;
  align-items: center;
}

.fixed_contact ul li a img{
  margin-right: 20px;
  width: 20px;
}

.fixed_contact ul li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 4%;
  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: 10%;
}

}


