﻿@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@500&display=swap');

:root{--font_zenkaku: 'Zen Kaku Gothic New', "Yu Gothic Medium", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, "MS PGothic", sans-serif !important;}
    　
.con1_title,.intro_title, #contents .con_title,h3,h2,h4,h5,h6,body, .font_sans-serif,.font_serif{font-family:var(--font_zenkaku) }

.font_15 {font-size: 17px;}

/* color ---------------------------------------------------------------------------------------------*/
:root{
    --color1:#ffde58;
    --color2:#fbf8ea;
    --color3:#374f63;
    --color4:#f7c434;
    --color5:#fcefd9;    
    --white:#FFFFFF;
    --black:#293e4f;
    --gray:#758694;
}

body,.txt_color_nomal,.hvr_txt_color_nomal:hover{color: var(--black);}
.txt_white,.hvr_txt_white:hover{color: var(--white);}
.txt_color1,.hvr_txt_color1:hover{color: var(--color4);} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: var(--color2);} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: var(--color3);} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: var(--color1);} /* アクセントカラー2 */
.txt_color5,.hvr_txt_color5:hover{color: var(--color5);} /* アクセントカラー2 */
/* background-color */
.bg_white,.hvr_bg_white:hover{background-color: var(--white)} /* 白背景 */
.bg_black,.hvr_bg_black:hover{background-color: var(--black);} /* 黒背景 */
.bg_color1,.hvr_bg_color1:hover{background-color: var(--color1);} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: var(--color2);} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: var(--color3);} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: var(--color4);} /* アクセントカラー2 */
.bg_color5,.hvr_bg_color5:hover{background-color: var(--color5);} /* アクセントカラー2 */
.bg_color_clear,.hvr_bg_color_clear:hover{background-color: transparent!important;}
/* border-color ※!important */
.border_white,.hvr_border_white:hover{border-color: var(--white);}
.hvr_border_black:hover{border-color: var(--black);}
.border_black{border-color: var(--gray);}
.border_color1,.hvr_border_color1:hover{border-color: var(--color1);}
.border_color2,.hvr_border_color2:hover{border-color: var(--color2);}
.border_color3,.hvr_border_color3:hover{border-color: var(--color3);}
.border_color4,.hvr_border_color4:hover{border-color: var(--color4);}
.border_color5,.hvr_border_color5:hover{border-color: var(--color5);}

.linkStyle{color: var(--color3);
          border-bottom:solid 1px;
}
/* color ---------------------------------------------------------------------------------------------*/
/*装飾に便利なposi_rel*/
#contents_box,#contents1,#contents2,#contents3,#contents,.con1_outer, .con2_outer, .con3_outer,.img5, .img6, .img7,div#left,div#right,div#intro_wrap,#contents2_wrap,#main_img{position: relative;}
/*装飾に便利なposi_rel*/
/*装飾に便利な疑似クラス設定*/
#main_img::before, #main_img::after, #contents_box::before, .con1_outer::after, #attach::before, .con2_outer::before,.con2_outer::after,.con3_outer::before,.con3_outer::after,#page_title .title_img::after,article .width_1280-max::before,div#contents1::before,div#contents1::after,div#contents3::before,#contents2::before,div#contents2::after,#page_title .title_img::after,#contents::before,.img5::before, .img6::before, .img7::before,div#left::before,div#right::before,div#intro_wrap::before,div#intro_wrap::after,#contents2_wrap::before{
    content: '';
    position: absolute;
    display: block;
    background-repeat: no-repeat;
    z-index: 1;
}
/*装飾に便利な疑似クラス設定*/

/*border-radius 丸み→控え目に*/
.con1_squ span {border-radius: 2px;}
.header-in{border-radius: 5px;}
#sp_nav .sp_nav_inner .menu__header{border-radius: 5px 5px 0px 0px;}
#sp_nav .sp_nav_inner .l-menu{    border-radius: 0px 0px 5px 5px;}
.contact_b {
    border-radius: 2px;}
.f_contact_box {border-radius: 5px;}
.f_contact_btn a { border-radius: 5px;}
#con3 .box .img {border-radius: 5px !important;}
#con2 .topimg2 img, #con2 .topimg3 img { border-radius: 5px;}
.more a {
    border-radius: 5px;}
.all_contents .content {border-radius: 5px;}
.cate_list li a {border-radius: 5px;}
#page8 .contact_mail a, #page8 .contact_tel a { border-radius: 5px;}
/*border-radius 丸み→控え目に*/

/*フェードイン*/
.fadein{
	transform: translateY(20px);
	transition: transform 1.5s ease, opacity 2s;
	transition-property: opacity,transform;
	opacity: 0;
}
.fadein.start{transform: translateY(0);opacity: 1;}

.main_fadein{
	transform: translateY(0px);
	transition: transform 1.5s ease, opacity 2s;
	transition-property: opacity,transform;
	opacity: 0;
}
.main_fadein.start{transform: translateY(0);opacity: 1;}
/*フェードイン*/


.v_type3 .cate_box {border: 2px solid var(--color4);}

.BA_type1 .box_item, .BA_type1 .box_img1, .BA_type1 .box_img2 {position: relative;}
.BA_type1 .box_item::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50.3%;
    transform: translate(-50%,-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 17px 0 17px 40px;
    border-color: transparent transparent transparent #ff9e03;
}
.BA_type1 .box_img1 {margin-right: 40px;}
.BA_type1 .box_img2 {margin-left: 40px;}
.BA_type1 .box_img1::after, .BA_type1 .box_img2::after {
    position: absolute;
    height: 33px;
    width: 87px;
    background-color: #fff;
    color: #434343;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
}
.BA_type1 .box_img1::after {content: "before";}
.BA_type1 .box_img2::after {content: "after";}

@media screen and (max-width: 667px){
.BA_type1 .box_img1 {margin-right: 5%;margin-bottom: 50px;}
.BA_type1 .box_img2 {margin-left: 5%;}
.BA_type1 .box_img1::after, .BA_type1 .box_img2::after {height: 30px;font-size: 15px;}
.BA_type1 .box_item::after {transform: translate(-50%,-60%) rotate( 90deg);border-width: 20px 0 20px 23px;}
}

/*top■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

section#con1 {background: var(--white);}

img.catch {
    position: absolute;
    top: calc(11% + 100px);
    left: 4%;
    width: 38vw;}

div#main_img {background: var(--white);}

section#con2 .font_22 {
    margin-bottom: 5px;
    color: #407cad;
    font-size: 30px;}
    
section#con3 {background: var(--color2);}
.sl {display: none;}
#con3 .title .en {
    font-size: 45px;
    color: var(--color4);}
h4.con3_sub {
    font-size: 20px;
    font-weight: bold;
    color: #e5a606;
    margin-top: 25px;}
.header-in a .en {display: none;}
.header-in li {padding-top: 0px;}
#con3 .box .icon {
    position: relative;
    z-index: 1;
    background: var(--white);
    width: 100px;
    margin: -50px auto 0;
    border-radius: 10px;
}
.cmstitle span {color: var(--color1);}

/*top■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

/*all■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
#fakeloader:before {background-color: var(--color1);}
#fakeloader .fl {width: 80% !important;
                 max-width: 300px;}
.footer {background: var(--color1);}
.f_contact_box h4 {
    font-size: 33px;
    padding-bottom: 10px;}
.menu_btn.stick_trans span:last-child { margin-top: -3px;}
ul.f_sitemap_inner li i,ul.f_sitemap_inner li a {color:var(--black);}
.fa-envelope:before {content: "\f086";}
.menu_btn span {background: var(--color4);}
#sp_nav .sp_nav_inner .menu__header .logo3 img {max-width: 250px;}

.footer p {
    max-width: 900px;
    text-align: center;
    color: var(--color3);}
/*all■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

/*sub■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
main.all_contents {
    background: var(--whitw);
    padding: 0;}
.pagetitle {background: var(--color2);}
.pagetitle_img {
    opacity: 0.2;
    mix-blend-mode: normal;}
.pagetitle span {color: var(--color4);}
.cate_list li a:hover {background: var(--color1);}
.content {padding: 5% 0;}
section#cms_2-f .cate {border: solid 2px var(--color1);}
#cms_2-f .box_title1::after {
        height: 2px;
        top: 20px;}
.pagetitle .jp {display:none;}
.pagetitle h2 {
    border-bottom: solid 3px var(--color4);
    display: inline;}
/*.pagetitle {*/
/*    padding-top: 190px;*/
/*    padding-bottom: 80px;}*/
    
#page9 .privacy .box {
    background: transparent;
    padding: 40px 0;}
div#page10 .all_contents {padding: 100px 0;}
div#page8 .all_contents {padding: 20px 0 50px;}


@media screen and (max-width: 768px){
.logo1 {max-width: 180px;}
.pagetitle {
    padding-top: 160px;
    padding-bottom: 75px;}
/*div#page8 .all_contents {padding: 30px 0 60px;}*/
.content {padding: 10% 0;}  
.privacy {padding: 10% 0;}
.cate_list li a {
    display: block;
    padding: 10px;
    overflow: hidden;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;}
#cms_2-f .box_title1::after {
    height: 2px;
    top: 19px;}
img.topimg01 {
    width: 100%;
    height: 40vh;
    object-fit: cover;}
img.catch {
    top: calc(10% + 100px);
    left: 4%;
    width: 55vw;}
.font_15 {font-size: 16px;}
section#con2 .font_22 {font-size: 25px;}
.icon img {width: 80px;}
#con3 .box .icon {
    width: 80px;
    margin: -45px auto 0;}
h4.con3_sub {
    font-size: 18px;
    font-weight: bold;
    color: #e5a606;
    margin-top: 18px;
    text-align: left;
    line-height: 1.8;}
section#con3 p.txt {line-height: 1.8;}
}

@media screen and (max-width: 667px){
img.topimg01 {height: 35vh;}
img.catch{
    top: calc(9% + 80px);
    left: 4%;
    width: 60vw;}
div#main_img {padding-top: 80px;}
.con1_inner {width: 100% !important;}
body#body {overflow: hidden;}
.con1_squ span {
    width: 10px;
    height: 10px;}
.font_15 {font-size: 15px;}
section#con2 .font_22 {font-size: 22px;}
#con3 .title .en {font-size: 35px;}
h4.con3_sub {text-align: center;}
.logo1 {max-width: 140px;}
#sp_nav .sp_nav_inner .menu__header .logo3 img {max-width: 180px;}
#fakeloader .fl {width: 60% !important;}
.pagetitle {
    padding-top: 115px;
    padding-bottom: 60px;}
#cms_2-f .cate_title {
    line-height: 1.2;
    letter-spacing: 1px;
    font-size: -webkit-calc(1rem + 2px);
    font-size: calc(1rem + 2px);}
#cms_2-f .box_title1::after {
    height: 2px;
    top: 16px;}
section#cms_2-f .box_item {padding: 5px;}
div#page10 .all_contents {padding: 50px 0;}
}



/*20221222---------------------------------------------------------------*/
.map iframe {
    margin: 60px auto;
    max-width: 1280px;
    width: 100%;
    height: 60vh !important;
    display: block;
}


@media screen and (max-width: 768px){
    .map iframe {
    margin: 60px auto;
    max-width: 1280px;
    width: calc(100% - 120px);
    height: 40vh !important;
    display: block;
}
}

@media screen and (max-width: 667px){
.map iframe {
    margin: 30px auto;
    max-width: 1280px;
    width: calc(100% - 60px);
    height: 40vh !important;
    display: block;
}
}



/*20230921---------------------------------------------------------------*/


.map iframe {
    height: 50vh !important;
    display: block;
}


@media screen and (max-width: 768px){
.map iframe {
    height: 30vh !important;
    margin: 0;
    display: block;
    width: 100%;
}
}

@media screen and (max-width: 667px){
.map iframe {
    height: 40vh !important;
    margin: 0;
    display: block;
    width: 100%;
    min-height: 200px;
    max-height: 400px;
}
}


/*entry*/
.fixed_img {
    /* display: block !important; */
    position: fixed;
    bottom: 13px;
    right: 100px;
    z-index: 99;
    width: 100%;
    max-width: 250px;
    transition: 0.5s;
    border-radius: 50px;
}
.fixed_img:hover{
    opacity: 0.8;
    transition: 0.5s;
}
.is-hidden{
        transition: 0.5s;
}

/*--------タブレット--------*/
@media screen and (max-width: 768px){
.fixed_img {
    max-width: 250px;}
    
}
    
/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
.fixed_img {
    max-width: inherit;
    width: 60%;
    left: 50%;
    transform: translate(-60%, 0px);
}
}


/*20240216*/
.map {
    display: none;
}

.footer_sns {
    width: 100% !important;
    margin-top: 50px;
    margin-bottom: 100px;
}

/*--------タブレット--------*/
@media screen and (max-width: 768px){
.footer_sns {
    margin-bottom: 50px;
}
}


/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
.footer_sns {
    width: 100% !important;
    margin-top: 0px;
    margin-bottom: 0px;
}
}

/*20250523---------------------------------------------------------------*/
.pagetitle{
    padding-top: 230px;
    padding-bottom: 120px;
}
/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
    .pagetitle{
        padding-top: 133px;
        padding-bottom: 60px;
    }
    .pagetitle_img{background-size: cover;}
}

/*20250909---------------------------------------------------------------*/
.youtube_box{
  position: relative;
  width: 90%;
  padding-top: 56%;
}
.youtube_box iframe{
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
.youtube_box:empty {
    display: none;
}
.topCms .youtube_box{
    width: 70%;
}
/*--------タブレット--------*/
@media screen and (max-width: 768px){
.topCms .youtube_box{
    width: 90%;
}
}

/* ----------　スマホ　---------- */
@media screen and (max-width: 667px){
.youtube_box{
  width: 100%;
  padding-top: 56%;
}
}