﻿@import url('https://fonts.googleapis.com/css2?family=Ephesis&display=swap');

.con_banner_wrap {
    display: flex;
    padding: 50px;
    background: #f1faf9;
    justify-content: space-around;
}
.con_banner_wrap a {
    width: 45%;
}
.modal_wrap .close_bt{
    z-index :2;
}
.more_btn .more_line {

    border-radius: 50px;
}
.more_box {
    overflow: hidden;
}
.fig_wrap{
    position: relative;
    z-index: 2;
    padding:10px;
}
.fig_wrap:before {
    background: #c0ebe3;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    z-index: -1;
    bottom: -10%;
    left: -5%;
    border-radius: 66% 34% 71% 29% / 46% 61% 39% 54%;
}
section.scrollpage_box {
    padding-top: 80px !important;
}
li.sf_contact_mail a {
    border-radius: 50px;
}
.more_btn a {
    border-radius: 50px;
}
.sf_contact_box h3 {
    color: #136268;
    letter-spacing: 2px;
}
.sf_access h3 {
    color: #136268;
    letter-spacing: 2px;
}
.s_footer_info_r {
    background: #fffffc;
}
.cms_1-a .cate_box figure {
    box-shadow: 5px 5px 15px #00000017;
}
.pager li a {
    border-radius: 5px;
}

a.linkStyle {
    color: #136268;
    text-decoration: underline;
}

.flow_type1 .cate_box{border-left:none;background-color: rgba(0,0,0,0);}
.flow_type1 .box_txt1,
.flow_type1 .box_txt1, .flow_type1 .box_txt2 {
    padding-left: 50px;
}

.flow_type1 .box_wrap{
    position: relative;
    padding-left: 30px;
}
.flow_type1 .box_wrap:before{
    content: "";
    display: inline-block;
    height: calc(100% - 0px);
    border-left: 14px solid #b1dbd366;
    position: absolute;
    top: -5px;
    left: 27px
}
.flow_type1 .box_txt1{position:relative;}
.flow_type1 .box_txt1::before,
.flow_type1 .box_txt1::after {
	content: "";
	display: block;
	position: absolute;
	top: 18px;
}
.flow_type1 .box_txt1::before {
    width: 7px;
    height: 7px;
    margin-top: -3px;
    background: #136268;
    border-radius: 50%;
    left: -18.5px;
}
.flow_type1 .box_txt1::after {
	width: 50px;
	border-bottom: 1px dashed #999;
	position: absolute;
	left: -13px;
}
.flow_type1 .box_description2{
    position: relative;
    border-left: none;
    background-color: rgba(255, 255, 255, 0);
}
.flow_type1 .box_description2 span{
position: absolute;
    display: inline-block;
    width: 90px;
    top: -23px;
    left: -50px;
}
/*--------タブレット--------*/
@media screen and (max-width: 768px){
.flow_type1 .flex_order2_tb{
    width: 78%!important;
    margin-left: auto;
}
}
/*--------スマートフォン--------*/
@media screen and (max-width: 667px){
.flow_type1 .box_description2 span {
    width: 70px;
}
.flow_type1 .box_wrap{
    padding-left: 23px;
}
.flow_type1 .box_wrap:before {
    left: 22px;
}
.flow_type1 .box_txt1::before, .flow_type1 .box_txt1::after {
    top: 58px;
}
.flow_type1 .box_txt1::before {
    margin-top: -3px;
    left: -17.5px;
}
.flow_type1 .box_txt1::after {
    width: 30px;
    left: -8px;
}
.flow_type1 .box_txt1, .flow_type1 .box_txt2 {
    padding-left: 30px;
}
.flow_type1 .box_txt1{
    padding-top: 46px;
}
.flow_type1 .flex_order2_tb {
    width: 87%!important;
}
}


#page_title .title_box {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
h3.cate_title {
    border-color: #3dad97;
}

.box_description .box_txt1 {
    background: whitesmoke;
    padding: 15px !important;
    box-sizing: border-box;
    border-radius: 5px;
}
.cate_list a {
    border-radius: 5px;
}
#page_title::before{
    background:transparent;
}
.border_color3 {
    border-color: #dddddd;
}
figure {
    border-radius: 10px;
}
.cate_list a {
    font-size: 14px;
}
#page_title .title_box h2 {
    color: #136268;
}
.hvr_txt_color3:hover {
    color: #136268;
}
.modal_wrap .modal_scroll {
    overflow-y: auto;
    background: #fffff9;
}
.modal_txt_wrap p.holla {
    font-size: 28px;
    color: #136268;
    opacity: 0.5;
    letter-spacing: 3px;
}
.modal_txt_wrap h2 {
    color: #136268;
    font-size: 26px;
}

.modal_wrap figure{
    border-radius: 56% 44% 70% 30% / 49% 58% 42% 51%;
    overflow: hidden;
}

.modal_scroll .width_1280-1000.width_max_tb.pd_t-100px.pd_b-100px.pd_l-100px.pd_r-100px.pd_l-20px_tb.pd_r-20px_tb.txt_white.d_flex.flex_top-left{
    align-items: center;
   max-width: 1480px;
    width: 100%;
    height: 100%;
      background: #fffff9;
}
.modal_txt_wrap h2 {
    color: #136268;
}
.modal_txt_wrap p {
    color: black;
    font-size: 16px;
}
span.modal_bg{
    background: white;
}
.hvr_border_color3:hover {
    border-color: #136268;
}

.hvr_border_color3:hover {
    border-color: #136268;
}
.hvr_bg_color3:hover {
    background-color: #136268;
}
.cms_box .cms_box_bg {
    top: 70%;
    height: 30%; 
}
.cms_box .cms_box_bg:before {
    width: 100%;
    height: 50px;
    content: "";
    position: absolute;
    background: url(Dup/img/wave.png) repeat-x;
    top: -50px;
    background-size: contain;
    background-position: bottom;
}
.top_cms_title p {
    font-family: "Ephesis", serif;
    color: rgb(19 98 104 / 60%);
    font-size: 24px;
    margin-top: 10px;
}
.top_cms_title h2 {
    color: #136268;
    line-height: 1em;
}
.cms_box .cms_box_bg {
    background: #edf9f7;
    border-radius: 0;
}
.contents_no {
    display: none;
}
.more_btn > span {
    cursor: pointer;
    border-radius: 40px;
}
.more_btn .more_line{
        transform: translateX(-100%);
}
#page_title .title_box p {
    font-family: "Ephesis", serif;
    font-size: 18px;
    color: rgb(19 98 104 / 60%);
    margin-bottom: 5px;
}

.holla{
    font-family: "Ephesis", serif;
}
.intro_item p.holla {
    font-size: 28px;
    letter-spacing: 4px;
    color: #7fb1b5;
}
.c2_box_txt p.holla {
    text-align: center;
    font-size: 28px;
    color: rgb(19 98 104 / 60%);
    margin-bottom: 10px;
}
.bg_color1 {
    background-color: #b6f1e6;
}
.c2_box_txt h2 {
    font-size: 28px;
    color: #136268;
    letter-spacing: 4px;
}
.c2_box_txt div {
    border-radius: 20px;
    background: #fffff9;
}
section#s_content1 {
    padding-top: 0 !important;
}
.hvr_border_color3:hover {
    border-color: #136268;
}
.c2_box_txt{
    background:transparent !important;
}
section#s_content2 {
    background: #c0ebe3;
    box-sizing: border-box;
    padding: 10px !important;
}
.c2_box_bg div {
    border-radius: 20px;
}
.c2_box_bg::before{
    display:none;
}
.c2_box_bg {
    padding: 10px;
    background: #b1dbd3;
    background: transparent !important;
}
.c2_box_bg {
    padding: 10px;
    background: #b1dbd3;
    background: transparent !important;
}
.txt_color3 {
    color: #136268;
}
.bg_color3 {
    background-color: #136268;
}
.bg_color2 {
    background-color: #f1faf9;
}
.intro_item h2 {
    font-size: 34px;
    line-height: 1.5em;
    margin-bottom: 30px;
    position: relative;
    left: -5px;
}
section#s_content1 {
    background: #fffff9;
}
section#s_content1 {
    background: #ffffff;
}
p{
    font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.txt_color1 {
    color: #136268;
}
.intro_item u {
    border-bottom: 0;
    text-decoration: none;
    background: linear-gradient(transparent 60%, #efef9e 60%);
    font-weight: bold;
}
div#main_b {
    display: flex;
    align-items: center;
    justify-content: center;
}
header {
    background: transparent !important;
    padding: 20px;
}
.h_tel_btn {
    color: #136268;
}
li.h_box_mail a {
    color: #ffffff;
    border-color: #136268;
    background: #136268;
    border-radius:30px;
}
.button_container span {
    background: #136268; 
}
.main_b1 {
    transform: translateX(10%);
}
.main_b2 {
    transform: translateX(-5%) translateY(-3%);
    z-index: -1;
}
li.h_box_mail a:hover {
    background: #61aa9c;
    color: white;
}
.intro_box {
    max-width: 1600px;
}
figure.intro_img {
    padding: 0;
}
.intro_item {
    padding-left: 5%;
}
.bg_color1 {
    background-color: #6acdba;
}
.border_color1 {
    border-color: #6acdba;
}


/*---------------------------タブレット-----------------------------------*/
@media screen and (max-width:768px){
div#main_b {
    flex-direction: column;
    width: 90%;
    margin: auto;
}
.main_b1 {
    transform: translateX(0%);
    order:2;
}
#main_img{
    height:100vh !important;
}
.main_b2 {
    transform: none;
    z-index: -1;
    order: 1;
    width: 90%;
}
.c2_box_txt h2 {
    font-size: 20px;
    color: #136268;
    letter-spacing: 1px;
}
.modal_scroll .width_1280-1000.width_max_tb.pd_t-100px.pd_b-100px.pd_l-100px.pd_r-100px.pd_l-20px_tb.pd_r-20px_tb.txt_white.d_flex.flex_top-left {
    justify-content: center;
}
.fig_wrap {
    position: relative;
    z-index: 2;
    padding: 10px;
    width: 80% !important;
}
.modal_txt_wrap.grid_5.pd_l-50px.grid_12_sp.pd_clear_sp {
    width: 80% !important;
    z-index: 2;
    padding-left: 0;
}
.cms_box .cms_box_bg {
    top: 30px;
    height: 110px;
}
#page8 .box.d_flex.flex_top-left {
    flex-wrap: nowrap;
}
.con_banner_wrap {
    padding: 30px;
}
}

/*---------------------------スマホ-----------------------------------*/
@media screen and (max-width:667px){
    .intro_item h2 {
    font-size: 22px;
    white-space: nowrap;
}
.intro_item {
    padding-left: 0;
}
    .main_b2 {
    width: 100%;
}
    .main_b1 {
    width: 90%;
}
#main_b{
        margin-top: 20px;
}
header {
    background: white !important;
    padding: 0;
}
#main_img {
    height: auto !important;
}
.c2_box_txt div {
    border-radius: 10px; 
}
.c2_box_bg div {
    border-radius: 10px;
}
.modal_txt_wrap h2 {
    font-size: 20px;
}
.fig_wrap {
    position: relative;
    z-index: 2;
    padding: 0;
    width: 90% !important;
}
.modal_txt_wrap.grid_5.pd_l-50px.grid_12_sp.pd_clear_sp {
    width: 90% !important;
}
.top_cms_title p{
        font-size: 20px;
}
.cms_box .cms_box_bg {
    top: 20px; 
}
h1#logo {
    max-width: 120px;
}
.button_container.active .top {
    background: #136268;
}
.button_container.active .bottom {
    background: #136268;
}
ul.menu_list li a {
    color: #136268;
}
.intro_item p.holla {
    font-size: 20px; 
}
.intro_box {
    padding-left: 8%;
    padding-right: 8%;
}
section.scrollpage_box {
    padding-top: 0px !important;
}
#page8 .box.d_flex.flex_top-left {
    flex-wrap: wrap;
}
.box_description .box_txt1{
    margin-top:10px;
}
.con_banner_wrap {
    flex-direction: column;
    align-items: center;
        padding: 20px;
}
.con_banner_wrap a {
    width: 100%;
    margin: 10px 0;
}
}