﻿
/* ======================================================================================
　　color
======================================================================================== */
.linkStyle{color: #160a0a;transition: opacity .3s;text-decoration: underline;}
.linkStyle:hover{opacity: 0.7}

/* color */
body,.txt_color_nomal{color: #333;}
.txt_white{color: white;}
.txt_red{color: red;}
.txt_color1{color: #8ECB84;} /* メインカラー */
.txt_color2{color: #E3F0E1;} /* サブカラー */
.txt_color3{color: #FFBA73;} /* アクセントカラー1 */
.txt_color4{color: #FFF3E1;} /* アクセントカラー2 */

/* background-color */
.bg_white{background-color: white;} /* 白背景 */
.bg_black{background-color: black;} /* 黒背景 */
.bg_color1{background-color: #8ECB84;} /* メインカラー */
.bg_color2{background-color: #E3F0E1;} /* サブカラー */
.bg_color3{background-color: #FFBA73;} /* アクセントカラー1 */
.bg_color4{background-color: #FFF3E1;} /* アクセントカラー2 */
.bg_color_clear{background-color: transparent!important;}


/* border-color ※!important */
.border_color1{border-color: #8ECB84;}
.border_color2{border-color: #E3F0E1;}
.border_color3{border-color: #FFBA73;}
.border_color4{border-color: #FFF3E1;}


/* hover ---------------------------------------------------------------------------------------------*/
/* color */
.hvr_txt_color_nomal:hover{color: #000;}
.hvr_txt_white:hover{color: white;}
.hvr_txt_red:hover{color: red;}
.hvr_txt_color1:hover{color: #8ECB84;} /* メインカラー */
.hvr_txt_color2:hover{color: #E3F0E1;} /* サブカラー */
.hvr_txt_color3:hover{color: #FFBA73;} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #FFF3E1;} /* アクセントカラー2 */

/* background-color */
.hvr_bg_white:hover{background-color: white;} /* 白背景 */
.hvr_bg_black:hover{background-color: black;} /* 黒背景 */
.hvr_bg_color1:hover{background-color: #8ECB84;} /* メインカラー */
.hvr_bg_color2:hover{background-color: #E3F0E1;} /* サブカラー */
.hvr_bg_color3:hover{background-color: #FFBA73;} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #FFF3E1;} /* アクセントカラー2 */
.hvr_bg_color_clear:hover{background-color: transparent!important;}

/* border-color ※!important */
.hvr_border_color1:hover{border-color: #8ECB84;}
.hvr_border_color2:hover{border-color: #E3F0E1;}
.hvr_border_color3:hover{border-color: #FFBA73;}
.hvr_border_color4:hover{border-color: #FFF3E1;}



/* ======================================================================================
　　all
======================================================================================== */
.loader_txt, .cms_title h2, #catch h2, #question h2, #contents h2, #contents .box h3, #top_cms .cms_title h2, #page_title h2 {
    font-family: 'M PLUS Rounded 1c', sans-serif;
}
.square_img, .rectangle_img, .normal_img img {
    border-radius: 15px;
}
.top_loader .logo {
    max-width: 300px;
}
.top_loader .loader_txt:not(.index) span, .loader_txt:not(.index) .scroll_anime span {
    display: none;
}

/* ---------- header ---------- */
header.clone-nav {
    transform: translateY(0);
    background-color: rgb(255 255 255 / 70%);
}
header .logo {
    max-width: 313px;
    padding-bottom: 6px;
}
header .txt_white {
    color: #303030;
}
.menu{
    display: none;
}
.cms_link div a {
    padding: 15px 10px;
    padding-right: 50px;
    background-color: #42ba9e;
    margin: 3px 0;
}
.cms_link div a:hover{
    color: #4c4c4c;
}
.cms_link .bg_color1{
    background-color: #ffb86f;
}


/* ---------- footer ---------- */



/* ======================================================================================
　　top
======================================================================================== */
.marker {
    background: -webkit-linear-gradient(transparent 60%, #ffff9f 60%);
    background: -o-linear-gradient(transparent 60%, #ff6 60%);
    background: linear-gradient(transparent 60%, #ffff9f 60%);
}

/* ---------- main_img ---------- */
.main_img_wrap {
    background: url(Dup/img/main_img.jpg);
    background-size: cover;
    background-position: center top;
    overflow: hidden;
}
.main_txt {
    z-index: 3;
    bottom: 169px;
    right: 55px;
    max-width: 574px;
    width: 40%;
}

.main_txt {
    z-index: 3;
    top: 53%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 616px;
    width: 51%;
    filter: drop-shadow(5px 5px 32px #a9a9a9);
}

/* ---------- contents ---------- */
#question .box .box_item {
    box-shadow: -5px 5px 40px #ffeed6;
}
#question .txt:nth-child(even) {
    margin-right: 0%;
    width: 86%;
}
#question .txt {
    width: 86%;
    margin-right: 0;
}

#contents .box .box_item {
	border-radius: 15px;
}
#contents .box .box_item:before {
    border-radius: 9px;
}

#catch, #page_title {
    background-image: url(./dup/img/bg1.jpg)!important;
}
#catch .box {
    margin-right: 0;
    margin-left: 5%;
    border-radius: 15px;
    background-color: #fff;
}
.item1 {
    max-width: 600px;
}
#question .box .box_item {
    background: #f4f4f4;
    padding: 80px;
}
section#question {
    background: white;
    padding-top: 58px;
    padding-bottom: 0;
}
#question .box {
    margin-bottom: 100px;
}
#question .box .box_item {
    box-shadow: -5px 5px 40px hwb(0deg 100% 0% / 0%);
}
.title_dec .txt_color1 {
    color: #333;
}
#question .txt:before {
    background-color: rgb(255 255 255)!important;
    border: 2px solid #4e4e4e;
}
#question h2 {
    background-image: url(../dup/img/item2.png);
    background-position: center top;
    background-size: 107px;
    background-repeat: no-repeat;
    padding-top: 112px;
}
#contents h2 {
   color: #333; 
}
#contents {
    padding-bottom: 200px;
}
.box.con2 {
    margin-top: 150px;
}
#question::after {
    content: '';
    display: inline-block;
    width: 35vw;
    height: 29vw;
    background-image: url(../dup/img/item3.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    right: -81px;
    bottom: -36px;
    z-index: 2;
}
#question: .sub_txt {
    font-size: 18px;
    /* display: inline-block; */
    /* background-color: #8ecb84; */
    color: rgb(142 203 132);
    padding: 20px;
    border-radius: 10px;
    font-weight: bold;
}

/* ======================================================================================
　　under
======================================================================================== */
#page_title {
    margin-top: 86px;
}
#page_title .title {
    border-radius: 20px 20px 0 0;
}

/* ---------- cms3 ---------- */
.link_type2 .cate_box a {
    color: #fff;
    border-radius: 15px;
}
.link_type2 .cate_box a:before, .link_type2 .cate_box a:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(70,70,70,0.5);
    z-index: 1;
    border-radius: 15px;
}
.link_type2 .cate_box a:after {
    top: 100%;
    background-color: #8ecb84;
    transition: 0.5s;
	z-index: 3;
}
.link_type2 .cate_box a:hover:after {
    top: 0;
}
.link_type2 .cate_box .txt_wrap {
    z-index: 2;
}
.link_type2 .more {
	letter-spacing: 3px;
    box-sizing: border-box;
	opacity: 0;
	transition: opacity .8s;
	z-index: 4;
}
.link_type2 .cate_box a:hover .more {
    opacity: 1;
}




/* ======================================================================================
　　window size
======================================================================================== */

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
.main_img_wrap {
    margin-top: 87px;
}
.button_container span {
    background-color: #2e2e2e;
}
.main_txt {
    top: 50%;
}
#catch {
    padding-top: 39px;
}
.item1 {
    margin-bottom: 50px;
}
#catch .box {
    margin-left: 0;
}
#question{
    overflow: hidden;
}
#question .title span {
    font-size: -webkit-calc(1rem + 10px);
    font-size: calc(1rem + 10px);
}
#question h2 {
    background-size: 102px;
}
#question .box .box_item {
    padding: 44px;
}
#question .txt:nth-child(even),#question .txt {
    width: 100%;
    font-size: 18px;
}
#question::after {
    bottom: -4px;
}
#contents {
    padding-bottom: 100px;
}
.box.con2 {
    margin-top: 95px;
}
#page_title {
    height: 219px;
}
.sub_txt {
    margin-top: 13px;
}
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
.top_loader .logo {
    max-width: 80%;
    width: 80%!important;
}
.main_img_wrap {
    margin-top: 70px;
}
.main_txt {
    top: 39%;
    width: 73%;
}
.item1 {
    margin-bottom: 27px;
    width: 62.66667%!important;
}
#question .title span {
    font-size: -webkit-calc(1rem + 4px);
    font-size: calc(1rem + 4px);
}
#question h2 {
    background-size: 89px;
    padding-top: 100px;
}
section#question {
    padding-top: 34px;
}
#question .box .box_item {
    padding: 30px;
}
#question .txt:nth-child(even), #question .txt {
    font-size: 14px;
    letter-spacing: 0;
    padding-left: 34px;
}
#question .txt:before {
    width: 20px;
    height: 20px;
}
#question .txt .check {
    width: 29px;
    height: 23px;
    padding-right: 5px;
    position: absolute;
    left: 0;
    top: -1px;
}
#question .box .box_item {
    padding: 30px 9px 13px;
}
#question::after {
    bottom: -4px;
    width: 42vw;
    height: 40vw;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
}
#question .box {
    margin-bottom: 143px;
}
.cms_link div a {
    margin: 0;
}
.cms_link div a {
    padding-right: 15px;
    box-sizing: border-box;
}
.f_logo .logo {
    width: 84%!important;
    max-width: 250px;
}
#page_title {
    height: 149px;
    margin-top: 65px;
}
.sub_txt {
    font-size: 16px;
    padding: 10px;
}
.t_banner_box .banner:hover {
    margin-top: 20px;
}
footer .footer_con_box a:hover{
	    letter-spacing: 4px;
}
}


/* 2023.07.07 */
header .logo {
    max-width: 219px;
    padding-bottom: 6px;
}
.all_page header .logo img {
    height: 87px!important;
}
#page_title {
    margin-top: 113px;
}

/* ---------- タブレット ---------- */
@media screen and (max-width: 768px){
header .logo img {
    height: 78px!important;
}
.main_img_wrap {
    margin-top: 104px;
}
}
/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
header .logo img {
    height: 69px!important;
}
header .logo {
    transform: translateY(-13px);
}
.main_img_wrap {
    margin-top: 65px;
}
.all_page header .logo img {
    height: 67px!important;
}
#page_title {
    margin-top: 64px;
}
}