﻿
/* color */
body,.txt_color_nomal{color: #4d4d4d;}
.txt_white{color: white;}
.txt_red{color: red;}
.txt_color1{color: #2f418b} /* メインカラー */
.txt_color2{color: #B6D6CA} /* サブカラー */
.txt_color3{color: #2579f7} /* アクセントカラー1 */
.txt_color4{color: #05af21} /* アクセントカラー2 */

/* background-color */
.bg_white{background-color: white} /* 白背景 */
.bg_black{background-color: black} /* 黒背景 */
.bg_color1{background-color: #2f418b} /* メインカラー */
.bg_color2{background-color: #B6D6CA} /* サブカラー */
.bg_color3{background-color: #2579f7} /* アクセントカラー1 */
.bg_color4{background-color: #05af21} /* アクセントカラー2 */
.bg_color_clear{background-color: transparent!important}


/* border-color ※!important */
.border_color1{border-color: #2f418b}
.border_color2{border-color: #B6D6CA}
.border_color3{border-color: #2579f7}
.border_color4{border-color: #05af21}


/* hover ---------------------------------------------------------------------------------------------*/
/* color */
.hvr_txt_color_nomal:hover{color: #4d4d4d;}
.hvr_txt_white:hover{color: white;}
.hvr_txt_red:hover{color: red;}
.hvr_txt_color1:hover{color: #2f418b} /* メインカラー */
.hvr_txt_color2:hover{color: #B6D6CA} /* サブカラー */
.hvr_txt_color3:hover{color: #2579f7} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #05af21} /* アクセントカラー2 */

/* background-color */
.hvr_bg_white:hover{background-color: white} /* 白背景 */
.hvr_bg_black:hover{background-color: black} /* 黒背景 */
.hvr_bg_color1:hover{background-color: #2f418b} /* メインカラー */
.hvr_bg_color2:hover{background-color: #B6D6CA} /* サブカラー */
.hvr_bg_color3:hover{background-color: #2579f7} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #05af21} /* アクセントカラー2 */
.hvr_bg_color_clear:hover{background-color: transparent!important}

/* border-color ※!important */
.hvr_border_color1:hover{border-color: #2f418b}
.hvr_border_color2:hover{border-color: #B6D6CA}
.hvr_border_color3:hover{border-color: #2579f7}
.hvr_border_color4:hover{border-color: #05af21}

h2,h3 {
    font-weight: bold;
}
.linkStyle, a {
    color: #05af21;
}
#fakeloader img {
    width: 30%;
    opacity: 0;
    animation: slide-up 4s ease-out forwards;
}
@keyframes slide-up {
  20% {
    opacity: 0;
  }
  25% {
    opacity: 0.25;
    /*transform: translateY(0%);*/
  }
  50% {
    opacity: 1;
    /*transform: translateY(0%);*/
  }
  75% {
    opacity: 0.25;
    /*transform: translateY(0%);*/
  }
  100% {
    opacity: 0;
    /*transform: translateY(0%);*/
  }
}
.catch {
    font-family: 'Shippori Mincho B1', serif !important;
    font-weight: 400;
    position: relative;
  color: #fff;
  line-height: 1.4;
  -webkit-box-reflect: below -10px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 10%,rgba(0, 0, 0, 0.6));
  opacity: 0;
  animation: slide-in-anim 5s ease-out forwards;
  animation-delay: 3s;
}
@keyframes slide-in-anim {
  20% {
    opacity: 0;
  }
  60% {
    transform: translateX(-50%);
  }
  75% {
    transform: translateX(-50%);
  }
  100% {
    opacity: 1;
    transform: translateX(-50%);
  }
}
#main_img:after {
    position: absolute;
    content: "";
    background-color: rgba(0,0,0,0.2);
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
    top: 0;
    z-index: 1;
}
.svg_box path, .svg_box2 {
    display: none;
}
#fakeloader img {
    width: 30%;
}
.fl {
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%);
    text-align: center;
}
.mail:hover {
    background-color: #fff;
    color: #2f418b;
}
.catch_box {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    font-size: 50px;
}
.ue, .sita {
    z-index: 1;
}
header {
    padding-bottom: 15px;
}
#logo {
    padding-top: 15px;
}
#header .logo {
    text-align: left;
    width: 200px;
    margin-left: 0;
}
#intro_txt {
    background-image: url(./Dup/img/keep.png);
    background-position: bottom right;
    background-size: 40%;
    background-repeat: no-repeat;
    background-position-x: 90%;
    background-position-y: 102%;
}

#contents h3 {
    /* padding: 1rem 3rem; */
    color: #fff;
    background-image: -webkit-gradient(linear, left top, right top, from(#209cff), to(#68e0cf));
    background-image: -webkit-linear-gradient(left, #209cff 0%, #68e0cf 100%);
    background-image: linear-gradient(to right, #209cff 0%, #2f418b 100%);
    padding: 20px 5px;
    text-align: center;
    font-size: 19px;
}
#cms_2-a .box_title1 {
    /* padding: 1rem 3rem; */
    color: #fff;
    background-image: -webkit-gradient(linear, left top, right top, from(#209cff), to(#68e0cf));
    background-image: -webkit-linear-gradient(left, #209cff 0%, #68e0cf 100%);
    background-image: linear-gradient(to right, #209cff 0%, #2f418b 100%);
    padding: 10px 5px;
    text-align: center;
    font-size: 19px;
    margin-bottom: 20px;
}
#page_title .bg_color3 {
    position: relative;
    padding: 1rem 2rem calc(1rem + 10px);
    background: rgba(47,65,139,0.7);
}
#page_title .bg_color3:before {
    position: absolute;
    top: -9px;
    left: -9px;
    width: 100%;
    height: 100%;
    content: '';
    border: 3px solid #fff;
}

.fadein {
  opacity : 0;
  transform : translate(100px, 0);
  transition : all 1s;
}
 
.fadein.active{
  opacity : 1;
  transform : translate(0, 0);
}
.fadeIn {
  opacity : 0;
  transform : translate(-100px, 0);
  transition : all 1s;
}
 
.fadeIn.active{
  opacity : 1;
  transform : translate(0, 0);
}
.offset-1r {
    box-shadow: 4px 4px 7px rgb(150, 150, 150, 0.1);
    padding: 0 10px 20px;
}
.offset-1 {
    box-shadow: -4px 4px 7px rgb(150 150 150 / 10%);
    padding: 10px 10px 20px;
    background-color: #fff;
}
.second {
    background-color: #ffffff;
background-image: url("https://www.transparenttextures.com/patterns/worn-dots.png");
/* This is mostly intended for prototyping; please download the pattern and re-host for production environments. Thank you! */
    padding-top: 30px;
    padding-bottom: 30px;
}
footer .bg-mask {
    height: 100%;
    background: rgba(255,255,255,1);
}
#bottom_menu {
    background-color: #2579f7;
}
#bottom_menu ul li a {
    color: #fff;
}
#bottom_menu ul li a:hover {
    background-color: #fff;
    color: #2579f7;
}
.hvr_border_color3:hover {
    border-color: #2579f7;
}
.Text-Span {
  position: relative;
  z-index: 1;
}
.Text-Span:after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -14px;
  width: 0%;
  height: 4px;
  background: #2f418b;
  z-index: -1;
  transition: all 0.8s;
}
.Text-Span.isActive:after {
  width: 100%;
}

/*******  cate_list  ***************/
.cate_list1 {
    padding: 10px 15px;
    background-color: #2f418b;
    color: #fff;
    border: 1px solid #2f418b;
}
.cate_list1:hover {
    background-color: #ffffff;
    color: #2f418b;
    border: 1px solid #ffffff;
}
/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
    #intro_txt {
    background-size: 75%;
}
#contents h3 {
    padding: 20px 15px;
    text-align: left;
    font-size: 18px;
}
#fakeloader img {
    width: 80%;
}
.catch_box {
    top: 82%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    font-size: 28px;
}
#logo {
    width: 100%!important;
    margin-bottom: 0px;
    padding-top: 10px;
}
.box_title1 {
    padding: 10px 5px;
    font-size: 17px;
}
#header .logo {
    text-align: center;
    width: 170px;
    margin: 0px auto;
}
#intro #intro_txt {
    padding-bottom: 120px;
    padding-top: 80px;
}
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
    #intro_txt {
    background-size: 96%;
    background-position-y: 100.5%;
}
.ue {
    z-index: 1;
    top: -8px;
}
.sita {
    bottom: -15px;
}

#logo {
    width: 40%!important;
    padding-top: 11px;
}
#logo img {
    width: 70%;
    height: auto;
}
header {
    padding-bottom: 10px;
    padding-right: 5px!important;
    padding-left: 5px!important;
}
.catch_box {
    top: 81%;
    left: 50%;
    transform: translate(0%, -50%);
    z-index: 2;
    font-size: 24px;
    width: 350px !important;
}
#intro_txt h2 {
    font-size: 25px;
}
.Text-Span:after {
    display: none;
}
footer .bg-mask {
    background: rgba(255,255,255,0.8);
}
#logo2 img {
    width: 100% !important;
    height: auto;
}
#cms_6-a .cate_box .rectangle_img {
    width: 80% !important;
}
#header .logo {
    text-align: left;
    width: 120px;
    margin-left: 0;
}
}
/************  IE  **********************/
@media all and (-ms-high-contrast: none){
#page_title .bg_color3 {
    padding: 1rem 2rem 0.8rem calc(1rem + 10px) !important;
}
#cms_2-a .box_title1 {
    padding: 10px 5px 5px !important;
}
#bottom_menu ul {
    padding-top: 4px !important;
}
.cate_list li a {
    display: block;
    padding: 10px 10px 5px !important;
}
#contents h3 {
    padding: 20px 5px 15px !important;
}

}
