﻿@import url('https://fonts.googleapis.com/css2?family=BIZ+UDGothic:wght@400;700&family=BIZ+UDMincho&family=Libre+Franklin:wght@300;400&family=STIX+Two+Text&display=swap');

body{
    font-family: 'Libre Franklin', "BIZ UDGothic", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic"!important;
    font-weight: bold;
}
.hannari{
    font-family: 'STIX Two Text', BIZ UDMincho, YuMincho, serif;
    font-weight: 600;
}

#fakeloader .fl{
    animation: none!important;
}
#loading {
    position: fixed;
    height: 100%;
    width: 100%;
    z-index: 999999;
    background-color: #9acb6b;
    top: 0;
}
.load_logo{
    width: 70%;
    max-width: 400px;
}
#wrap{opacity: 1!important}


/* ======================================================================================
　　color
======================================================================================== */
.overlay {
    background: linear-gradient(135deg, rgba(0,104,53,0.9) , #006835 )!important;
}
#wrap.top .back1:before {
    background-color: rgba(154,203,107,0.22)!important;
}
.txt_color5{
    color: #d87b00;
}
#footer_con .font_13 {
    color: #61b710;
}
#contents3_wrap:after {
    background-color: rgba(154,203,107,0.1)!important;
}


/* ======================================================================================
　　all
======================================================================================== */
#fakeloader:before{
	background-color: #9acb6b;
}
#fakeloader .fl{
    max-width: 359px;
}
.min_title{
    font-weight: 600;
    color: #165047;
}

/* ---------- fix_con ---------- */
.fix_con, .fix_con2{
    z-index: 5;
    width: 57px;
    position: fixed;
    right: 13px;
    top: 120px;
    box-shadow: 0 0 1vw rgb(9 57 49 / 20%);
    border-radius: 5px;
}
.fix_con2 {
    top: 293px;
}

/* ---------- header ---------- */
header.scr_header {
    background-color: rgba(0,104,53,0.72)!important;
}
#pc_nav li, #top_pc_nav li, #footer_nav li {
    max-width: 100%;
    margin-right: 20px;
    word-break: break-all;
}
.top header {
    z-index: 9;
    background-color: rgba(0,104,53,0.72)!important;
    opacity: 1;
}
#logo {
    max-width: 200px;
}
#pc_nav{
    display: block!important;
}
#nav_menu{
    display: none!important;
}


/* ---------- footer ---------- */



/* ======================================================================================
　　top
======================================================================================== */

/* ---------- main_img ---------- */
#main_img .menu{top: 54%;}
#top_pc_nav{display: none;}
#main_img .catch {
    text-align: center;
    margin-top: 42px;
}
#main_img .catch span {
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    display: inline-block;
    padding: 10px;
    font-size: 24px;
    font-family: 'STIX Two Text', BIZ UDMincho, YuMincho, serif;
    font-weight: 500;
    padding-bottom: 6px;
}

/* ---------- intro ---------- */
#intro_wrap::before {
    position: absolute;
    content: "";
    border: 2px solid #e4e4e4;
    width: calc(100% - 64px);
    height: calc(100% - 64px);
    top: 50%;
    left: 0;
    right: 0;
    margin: auto;
    transform: translateY(-50%);
    pointer-events: none;
}
#intro_wrap {
    box-shadow: 0 0 1vw rgb(9 57 49 / 20%);
}
.intro_txt_top{
    margin-bottom: 25px;
    padding: 20px;
    line-height: 2.2;
}
.intro_btn_box .btn {
    width: 40%;
    max-width: 289px;
    padding: 20px 25px;
}
.intro_btn_box .btn a:hover{
    transform: translateY(-3px);
}

/* ---------- contents ---------- */
.portrait_img {
    height: 619px!important;
}
#contents1 .con_box {
    margin-top: 9%;
}
#contents1{
    padding-bottom: 74px;
}
#contents2 .con_box {
    margin-top: 7%;
}
#contents3 .con_box {
    padding-left: 3%;
    padding-right: 3%;
    box-shadow: 0 0 1vw rgb(9 57 49 / 20%);
}

/* ---------- other ---------- */
#top_cms.back1:before {
    height: 100%;
    z-index: -1;
}
.cms_title h3{
    margin-top: 10px;
}
#info_contact .con_img {
    max-height: 350px;
}
#info_contact .con_box a {
    border-radius: 5px;
    overflow: hidden;
    border: solid 2px #006835;
}
#info_contact .con_box .txt_white{
    color: #006835;
}
#info_contact .con_img:before {
    background-color: rgba(255,255,255,0.70)!important;
    border-radius: 5px;
}

/* ======================================================================================
　　under
======================================================================================== */

/* ---------- cms2 ---------- */
.cms_2-a .swiper-slide{opacity: 1!important;}

/* ---------- cms3 ---------- */
#cms_4-a .cate_box{
    padding: 14px;
    background-color: #f7f7f7;
    margin: 0.6%;
    width: 18.66667%!important;
}

/* ---------- cms4 ---------- */
.flow_type2 .cate_title {
    border-bottom: solid 3px #ccc;
    position: relative;
}
.flow_type2 .cate_title::after {
    content: '';
    display: block;
    background: #fe9c05;
    width: 30%;
    height: 3px;
    position: absolute;
    left: 0;
    bottom: -3px;
}
.flow_type2 .box_wrap {
	border: 3px solid #d75602;
}
.flow_type2 .cate_box {
	padding: 30px;
	width: 100%!important;
}
.flow_type2 .box_txt1 {
    background-color: #f7f7f7;
    color: #d75602;
    text-align: center;
}
.flow_type2 .cate_box:not(:last-child) {
	border-bottom: 3px solid #d75602;
	position: relative;
}
.flow_type2 .cate_box:not(:last-child)::before,
.flow_type2 .cate_box:not(:last-child)::after {
	content: "";
	border: solid transparent;
	position: absolute;
	top: 100%;
	left: 17%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.flow_type2 .cate_box:not(:last-child)::before {
	border-width: 22px;
	border-top-color: #d75602;
}
.flow_type2 .cate_box:not(:last-child)::after {
	border-width: 18px;
	border-top-color: #fff;
}

.flow_type2{counter-reset: number 0;}

.flow_type2 .box_txt1::before {
    counter-increment: number 1;
    content: "step." counter(number);
    background-color: #d75602;
    padding: 5px 10px;
    font-weight: 700;
    color: #ffffff;
    display: block;
    margin: 0px auto 10px;
    width: 50%;
}

/* ---------- under ---------- */
#page8 .tel_box{
    margin-bottom: 30px;
}
.page_title_box .hannari{
    font-weight: normal;
    margin-top: 5px;
}

.tizu iframe{
    width: 70%;
    height: 408px;
}



/* ======================================================================================
　　window size
======================================================================================== */

/* ---------- 1300px ---------- */
@media screen and (max-width: 1300px){
.width1300_br{display: block;}
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
#pc_nav,.nav_menu_more:first-of-type a .icon:before{display: none!important;}
#nav_menu{display: block!important;}
#nav_menu .bg_color1 {background-color: #9acb6b;}
#overlay .left li {max-width: 230px;}
.page_title_box h2 {font-size: 28px;}

#main_img #left, #main_img #right {
    height: 56vh!important;
}
#main_img .menu {
    top: 55%;
}
#intro_wrap::before {
    width: calc(100% - 36px);
    height: calc(100% - 36px);
}
#contents1 .con_box {
    margin-top: 1%;
}
#contents2 .con_box {
    margin-top: 1%;
}
#contents3 .con3_img_box .grid_3{
    width: 45%!important;
}
#contents3 .con_txt span {
    letter-spacing: 2px;
}

#cms_4-a .cate_box {
    padding: 14px;
    background-color: #f7f7f7;
    margin: 0.8%;
    width: 47.66667%!important;
}

#footer_con h2 {
    font-size: 20px;
}
.tizu iframe{
    width: 100%;
}
}

/*-------- スマートフォン --------*/
@media screen and (max-width: 667px){
#fakeloader .fl{width: 65%!important;}
#overlay .left li {max-width: 100%;}
.page_title_box {
    width: 78%!important;
    padding: 20px;
    padding-bottom: 24px!important;
    box-sizing: border-box;
}
.page_title_box h2 {font-size: 18px;}

.fix_con_sp {
    z-index: 5;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
.fix_con_sp .grid_6 {
    border-radius: 5px 5px 0 0;
    width: 44%!important;
    padding: 2% 1% 0;
}
.fix_con_sp .grid_6  img{
    box-shadow: 0 0 1vw rgb(9 57 49 / 20%);
}

#main_img .menu {
    top: 49%;
}
#main_img .menu .bg_white {
    max-width: 207px;
}
#main_img .menu .bg_white a {
    max-width: 173px;
}
#main_img .catch span{
    padding: 5px 10px 3px;
    font-size: 16px;
}
#intro_wrap::before {
    width: calc(100% - 25px);
    height: calc(100% - 25px);
}
#intro_wrap {
    padding-left: 28px;
    padding-right: 28px;
    padding-bottom: 30px;
}
.intro_txt_top{
    font-size: 14px;
}
.intro_btn_box .btn {
    padding: 10px 23px;
}
#contents3 .con_box {
    background-color: rgb(255 255 255);
    padding-left: 25px;
    padding-right: 25px;
}
.con3_img_box .grid_10_sp {
    width: 88.33333%!important;
    margin-top: 20px;
}
#contents3 .con_txt span{
    font-size: 14px;
    letter-spacing: 2px;
}
#contents3 .con3_img_box .grid_3 {
    width: 84%!important;
}

#copyright{
    padding-bottom: 65px;
}
.page8 #copyright{
    padding-bottom: 10px;
}
#footer_con h2{
    font-size: 20px;
}
    
#cms_4-a .cate_box {
    padding: 14px;
    margin: 0 0 18px;
    width: 100%!important;
}
.top_cms_box #cms_4-a .cate_box{
    margin: 0.8%;
    width: 47.66667%!important;
}
.flow_type2 .cate_box:first-child {
    padding: 20px 20px 30px 20px;
}
.flow_type2 .cate_box:not(:first-child) {
    padding: 40px 20px 20px 20px;
}
.flow_type2 .cate_box:not(:last-child)::before, .flow_type2 .cate_box:not(:last-child)::after {
    left: 50%;
}
.flow_type2 .cate_box:not(:last-child)::after {
    border-top-color: #fff7ea;
}

#page8 .tel_box {
    padding: 10px;
}
.tizu iframe {
    width: 100%;
    height: 335px;
}
}


/*-------- FireFox --------*/
@-moz-document url-prefix() {
.flow_type2 .cate_box:not(:last-child)::before, .flow_type2 .cate_box:not(:last-child)::after {top: 98% !important;}
}


/* 2022.05.23 修正 ------------------------------------------------------ */
.manga{
    width: 90%;
    max-width: 690px;
    margin: auto;
    margin-bottom: 70px;
    position: relative;
}


