﻿@import url('https://fonts.googleapis.com/css2?family=Hina+Mincho&display=swap');

body {
        background: #c0d9cd;
}
main {
    overflow: hidden;
}
.open_bg {
    background: #1f8362;
}
#pc_nav .line_bnr, #pc_nav_fix .line_bnr {
    vertical-align: middle;
    height: 102px;
    width: 304px;
    margin-top: 11px;
}
.line_bnr:hover {
    opacity: 0.7;
}
/* ----------------------------------------------------------------------------------------------------- */
.catch {
    position: absolute;
    top: 20%;
    z-index: 2;
    font-family: 'Hina Mincho', serif;
    font-size: 3vw;
    color: #fff;
    left: 0;
    margin: auto;
    width: 90%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-shadow: 2px 0px 14px rgba(0, 0, 0, 0.30), -1px 0px 9px rgba(0, 0, 0, 0.36);
}
/*.catch span {
    font-size: 17px;
    font-weight: 700;
    background: #fff;
    padding: 0 10px;
    line-height: 1.8;
    letter-spacing: 0.2em;
    display: inline-block;
    top: 0px;
    margin: 8px 0 0;
    opacity: 1;
    transform: scale(1, 1);
    transform-origin: left center;
}
.catch span {
    position: relative;
}
.catch span:nth-of-type(1) {
    opacity: 0;
    top: 30px;
    transform-origin: left bottom;
    -webkit-transition: 1.0s ease-in-out;
    -moz-transition: 1.0s ease-in-out;
    -o-transition: 1.0s ease-in-out;
    transition: 1.0s ease-in-out;
}
.catch span:nth-of-type(2) {
    opacity: 0;
    top: 30px;
    transform-origin: left bottom;
    -webkit-transition: 1.2s ease-in-out;
    -moz-transition: 1.2s ease-in-out;
    -o-transition: 1.2s ease-in-out;
    transition: 1.2s ease-in-out;
    transition-delay: 0.1s;
}
.catch span:nth-of-type(3) {
    opacity: 0;
    top: 30px;
    transform-origin: left bottom;
    -webkit-transition: 1.4s ease-in-out;
    -moz-transition: 1.4s ease-in-out;
    -o-transition: 1.4s ease-in-out;
    transition: 1.4s ease-in-out;
    transition-delay: 0.2s;
}
body.in3 .catch span {
    top: 0px;
    margin: 8px 0 0;
    opacity: 1;
    transform: scale(1, 1);
    transform-origin: left center;
}*/
/* --------------------------------------------------------------------------------------------------- */
.contents_no {
    text-shadow: 0 1px 2px rgba(255, 255, 255, 0.15);
}
#top_cms {
position: relative;    
}
#top_cms:before {
    content: "";
    display: block;
    width: 1100px;
    height: 1600px;
    background: url(Dup/img/moon2.png);
    background-size: contain;
    background-position: 0 0;
    position: absolute;
    right: -500px;
    top: 0;
    background-repeat: no-repeat;
    opacity: 0.2;    z-index: -1;
}
#top_cms:after {
    content: "";
    display: block;
    width: 1400px;
    height: 1600px;
    background: url(Dup/img/space.png);
    background-size: contain;
    background-position: 0 0;
    position: absolute;
    left: -500px;
    bottom: 0;
    background-repeat: no-repeat;
    opacity: 0.3;    z-index: -1;
}

.swiper-button-next, .swiper-button-prev {
    z-index: 4!important;/*★*/
}
.cms_title h3, .cms_title p, #pc_nav_fix li a {
    color: #fff;
}
#pc_nav_fix {
    background: transparent;
    background-color: rgba(0, 76, 58, 0.24);
}
#pc_nav_fix {
    background: transparent;
    background-color: rgba(0, 76, 58, 0.24);
    padding: 8px 0px!important;
}
#pc_nav_fix li a {
    font-weight: bold;
}
.cms_title h3 {
    font-size: 20px;
}
.cms_title p {
    font-size: 30px;
}
.cate_list li a {
        color: #fff;
    background: transparent;
    border: 1px solid;
}
#cms_2-a h3 {
    display: block;
    text-align: center;
    border: none;
    border-bottom: 1px solid #407564;
}
/* -------------------------------------------------------------------------------- */
html,body{
	height: 100%;/*高さを100%にして描画エリアをとる*/
}

#particles-js{ 
	position:fixed;/*描画固定*/
	z-index:-1;/*描画を一番下に*/
	width: 100%;
	height: 100%;
background: #c0d9cd;/*背景色*/
}

#wrapper{
	position: relative;/*描画を#particles-jsよりも上にするためposition:relative;を指定*/
	z-index: 1;/*z-indexの数字を大きくすることで描画を#particles-jsよりも上に*/
	width:100%;
	height: 100%;
}




.smoothText {
  overflow: hidden;
  display: block;
}

/* アニメーションで傾斜がついている文字列を水平に戻す*/
.smoothTextTrigger{
  transition: 0.8s ease-in-out;
  transform: translate3d(0,100%,0) skewY(2deg);
  transform-origin: left;
  display: block;
}
.smoothTextTrigger.smoothTextAppear{
    transform: translate3d(0,0,0) skewY(0);
}


@media(min-width: 769px) {
    footer .footer_img {
    height:612px;
}

}
@media (min-width: 668px) and (max-width: 768px) {
    #intro .intro_img {
    height: 60vw;
    top: auto;
    bottom: 0;
}
#intro {
    padding-bottom: calc(60vw - 20px);
    padding-top: 50px;
}
#header .menu_stick {
    width: 87px;

}
}
@media(max-width: 768px) {
    .catch {
    top: 32%;
    font-size: 4.5vw;
    width: 90%;
    text-align: center;
}
}
@media(min-width: 668px) {
     .footer_img {
        background-position: center 17%;
    }   
}
@media(max-width: 667px) { 
#logo {
    width: 79px;
}
.catch span {
    font-size: 15px;
    padding: 0 5px 0 7px;
}
}


@media all and (-ms-high-contrast: none) {
.catch span {
    padding: 7px 10px 0px;
}
.pager li a {
    padding-top: 8px!important;
}
.cate_list li a {
    padding-top: 15px;
}
}

/* ---2023/07/20--------------------------------- */
.line_bnr {
    display: none;
}