﻿@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@500&display=swap');

/* ----------　all　---------- */
/* color */
body,.txt_color_nomal{color: #333333;}
.txt_white{color: white;}
.txt_red{color: red;}
.txt_color1{color: #2838A9;} /* メインカラー */
.txt_color2{color: #dbd6cf;} /* サブカラー */
.txt_color3{color: #2838A9;} /* アクセントカラー1 */
.txt_color4{color: #edeae6;} /* アクセントカラー2 */

/* background-color */
.bg_white{background-color: white;} /* 白背景 */
.bg_black{background-color: #333333;} /* 黒背景 */
.bg_color1{background-color: #2838A9;} /* メインカラー */
.bg_color2{background-color: #dbd6cf;} /* サブカラー */
.bg_color3{background-color: #2838A9;} /* アクセントカラー1 */
.bg_color4{background-color: #edeae6;} /* アクセントカラー2 */
.bg_color_clear{background-color: transparent!important;}


/* border-color ※!important */
.border_color1{border-color: #2838A9;}
.border_color2{border-color: #dbd6cf;}
.border_color3{border-color: #302D2A;}
.border_color4{border-color: #edeae6;}


/* hover ---------------------------------------------------------------------------------------------*/
/* color */
.hvr_txt_color_nomal:hover{color: #333333;}
.hvr_txt_white:hover{color: white;}
.hvr_txt_red:hover{color: red;}
.hvr_txt_color1:hover{color: #2838A9;} /* メインカラー */
.hvr_txt_color2:hover{color: #dbd6cf;} /* サブカラー */
.hvr_txt_color3:hover{color: #302D2A;} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #edeae6;} /* アクセントカラー2 */

/* background-color */
.hvr_bg_white:hover{background-color: white} /* 白背景 */
.hvr_bg_black:hover{background-color: #333333;} /* 黒背景 */
.hvr_bg_color1:hover{background-color: #64a1eb;} /* メインカラー */
.hvr_bg_color2:hover{background-color: #dbd6cf;} /* サブカラー */
.hvr_bg_color3:hover{background-color: #64a1eb;} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #e1dcd3;} /* アクセントカラー2 */
.hvr_bg_color_clear:hover{background-color: transparent!important;}

/* border-color ※!important */
.hvr_border_color1:hover{border-color: #974a76;}
.hvr_border_color2:hover{border-color: #dbd6cf;}
.hvr_border_color3:hover{border-color: #302D2A;}
.hvr_border_color4:hover{border-color: #edeae6;}

.linkStyle{
	color:#333;
	border-bottom: 1px solid;
}
.linkStyle:hover{
	opacity: 0.7;
	transition: all 0.5s;
}


/* ----------　TOP　---------- */
.overlay.open .menu_list li:nth-of-type(12) {
    -webkit-animation-delay: .90s;
    animation-delay: .90s;
}
.footer_telmail {
    flex-direction: column;
    align-items: flex-start;
}
.footer_telmail a {
    padding-left: 0;
}
.footer_telmail .tel_bt {
    font-size: 17px;
}
#logo {
    width: 285px;
    height: 128px;
    top: 0;
    left: 0;
    z-index: 998;
}
.catch_txt {
    position: relative;
}
#main_img .box_img {
    width: 1320px;
    height: 906.5px;
}
.background {
  width: 22%;
  height: 65vh;
  background: url(Dup/img/catch.png) no-repeat center / contain;
}
#top_contents1 p {
    font-size: 18px;
}

.container {
  animation: fadein-top 3s ease-out forwards;
    position: absolute;
    z-index: 2;
    top: 11%;
    right: -33%;
    width: 51%;
}
@keyframes fadein-top {
  0% {
    opacity: 0;
    transform: translateY(-100px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.emblem {
  position: absolute;
  left: 0;
  right: -50%;
  top: 0;
  margin: 0 auto;
  width: 24vh;
  height: 24vh;
  border-radius: 50%;
  color:  #2838A9;
  animation: spinZ 40s linear infinite;
  text-align: center;
  z-index: 1;
}
.emblem span {
    position: absolute;
    display: inline-block;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    text-transform: uppercase;
    font-size: 2vh;
    transition: all .5s cubic-bezier(0,0,0,1);
  }

  @keyframes spinZ {
    0% {
      transform: rotateZ(360deg);
    }
    100% {
      transform: rotateZ(0deg);
    }
  }
.border_img {
    position: absolute;
    top: 1%;
    left: 37%;
    width: 26%;
}
.catch_txt h2,#top_contents2 h2,#top_cms h2,#top_info h2{
    font-family: 'Shippori Mincho', serif;
}
.more a {
    background-color: #2838A9;
    color: white;
}
#top_contents2 {
    position: relative;
}
.flower01 {
    position: absolute;
    right: 31px;
    top: -192px;
    width: 14%;
}
.flower02 {
    position: absolute;
    bottom: 0;
    z-index: 2;
    width: 14%;
    left: 81px;
}
#top_contents2 .con_box02 .text_box {
	left: 0;
}
#top_contents2 .con_box02 .text_box .before{
    left: 0;
}
#top_contents2 .con_box02 .img_box{
    margin-left: auto;
}
#top_contact_box .bottom .box {
    background-color: #e1dcd3;
}
.cms_3-a h3 {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.btn_box p {
    color: #5f5f5f;
    font-weight: bold;
}
.inner .tel_bt,.inner .con_bt {
    background-color: #2838A9!important;
    border: none;
}
.inner .tel_bt:hover,.inner .con_bt:hover {
    background-color: #e1dcd3!important;
}
.hvr_txt_color3:hover {
    color: #64a1eb;
}
#top_contact_box .con_bt a {
    padding-left: 1px;
    padding-top: 0;
}
#top_contact_box .con_bt a span i {
    display: none;
}
.footer_box p,#copyright a{
    color: #5f5f5f;
}
#footer::before {
    background: rgb(187 187 187 / 30%);
}
/* ----------　下層ページ　---------- */
.title_box h2,#page6 h3,#page5 h3{
    font-family: 'Shippori Mincho', serif;
}
.blog_logo {
    position: absolute;
    right: 17%;
    bottom: -49%;
    width: 24%;
}
#event_other a {
    background-color: #2838A9;
    color: white;
}
#event_other a:hover{
    background-color: #e1dcd3;
    color: black;
}
#page5 .cate_box img {
    box-shadow: 0 5px 10px rgb(0,0,0,0.5);
}
#page5 .cate_box figure {
    box-shadow: none;
}
/* 会社情報 */
/* お問い合わせ */
#page8 h3 {
    color: #2838A9;
}
#cms_2-g .cate_img1 {
    max-height: inherit;
}
#event_other {
    display: none;
}
/* プライバシーポリシー */
/* サイトマップ */
/*-------------------------------------------------------
	 1536px
-------------------------------------------------------*/
@media screen and (max-width: 1536px){
.emblem {
    position: absolute;
    left: 0;
    right: -86%;
    top: 0;
    margin: 0 auto;
    width: 24vh;
    height: 24vh;
    border-radius: 50%;
    color: #2838A9;
    animation: spinZ 40s linear infinite;
    text-align: center;
    z-index: 1;
}
}
/*-------------------------------------------------------
	 1366px
-------------------------------------------------------*/
@media screen and (max-width: 1366px){
.emblem {
    position: absolute;
    left: 0;
    right: -86%;
    top: 0;
    margin: 0 auto;
    width: 24vh;
    height: 24vh;
    border-radius: 50%;
    color: #2838A9;
    animation: spinZ 40s linear infinite;
    text-align: center;
    z-index: 1;
}
}
/*-------------------------------------------------------
	 タブレット(768px以下になった時にcssが付きます)
-------------------------------------------------------*/
@media screen and (max-width: 768px){
/* ----------　all　---------- */
#logo {
    width: 329px;
    height: 100px;
    top: 0;
    left: 0;
    z-index: 998;
}
.emblem {
    display: none;
}
#main_img .box_img {
    height: 50vh;
    width: 100%;
}
#main_img .box_img img{
    object-fit:cover;
    height:100% !important;
    width:auto !important;
}
.overlay nav {
    height: 84%;
}
.container {
    animation: fadein-top 3s ease-out forwards;
    position: absolute;
    z-index: 2;
    top: 27%;
    right: -33%;
    width: 54%;
}
.background {
    width: 32%;
    height: 39vh;
}
.border_img {
    position: absolute;
    top: 1%;
    left: 25%;
    width: 49%;
}
#cms_2-g .cate_title {
    font-size: 2.2em;
}
.flower01 {
    position: absolute;
    right: 31px;
    top: -110px;
    width: 21%;
}
.flower02 {
    position: absolute;
    bottom: 0;
    z-index: 2;
    width: 22%;
    left: -5px;
}
#top_contents2 .con_box02 .img_box{
	margin: auto;
}
/* ----------　TOP　---------- */

/* ----------　下層ページ　---------- */
.blog_logo {
    position: absolute;
    right: 9%;
    bottom: -2%;
    width: 33%;
}
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */

}



/*-------------------------------------------------------
	スマホ(667px以下になった時にcssが付きます)
-------------------------------------------------------*/
@media screen and (max-width: 667px){
/* ----------　all　---------- */
.overlay {
    top: 37px;
    overflow: scroll;
}
#logo {
    width: 41px;
    height: 80px;
    top: 0;
    left: 0;
    z-index: 998;
}
#logo h1.logo {
    left: 15px;
    max-width: 96px;
}
#main_img .box_img {
    height: 45vh;
}
#top_contents2 .text_box h2 {
    font-size: 15px;
}
.border_img {
    position: absolute;
    top: 1%;
    left: 8%;
    width: 85%;
}
#cms_2-g .cate_title {
    font-size: 1.8em;
    line-height: 1.2;
}
.flower01 {
    position: absolute;
    right: 12px;
    top: -55px;
    width: 34%;
}
.flower02 {
    position: absolute;
    bottom: 0;
    z-index: 2;
    width: 27%;
    left: -5px;
}
.overlay .menu-box .menu_list li a {
    padding-bottom: 7px;
}
/* ----------　TOP　---------- */
.blog_logo {
    position: absolute;
    right: 6%;
    bottom: 42%;
    width: 36%;
}
/* ----------　下層ページ　---------- */
#contact_mail a {
    font-size: 14px;
}
/* 会社情報 */
/* お問い合わせ */
/* プライバシーポリシー */
/* サイトマップ */
}
/*-------------------------------------------------------
	スマホ(333px以下になった時にcssが付きます)
-------------------------------------------------------*/
@media screen and (max-width: 333px){
#contact_mail a {
    font-size: 14px;
    padding: 30px 10px;
}
}