﻿#page8 span.sub_txt{
    margin-left: auto;
    margin-right: auto;
}
span.sub_txt {
    display: block;
    color: red;
    font-size: 14px;
    width: 100%;
    max-width: 300px;
    margin-top: 5px;
}
#sp_nav .sub_txt {
    font-size: 12px;
    margin-top: 10px;
    max-width: none;
}
#contents3 .box_txt p.con_no {
    margin-top: 0;
}
#contents3 .box_txt {
    background: #fffef7ed;
    margin-top: 20px;
    padding: 30px;
    box-sizing: border-box;
}

#contents3:before {
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    background: #fffceb40;
    top: 0;
    left: 0;
}
header .head_box .link_box li {
    max-width: 30px;
}
.border_color4 {
    border-color: #ed9153;
}
#cms_3-f .cate a:hover,.cms_3-f .cate a:hover {
    background: #2e1b0338;
}

#cms_3-f .cate a,.cms_3-f .cate a {
    display: block;
    background: #2e1b0366;
    width: 100%;
    height: 100%;
    color: white;
    transition: all 0.3s;
}
#cms_3-f .cate,.cms_3-f .cate {
    position: relative;
    height: 200px;
    background-size: cover;
    background-position: center;
}
#cms_3-f .cate,.cms_3-f .cate {
    position: relative;
    height: 200px;
}
#cms_3-f .cate h3,.cms_3-f .cate h3 {
    position: absolute;
    z-index: 2;
    text-align: center;
    width: 100%;
    top: calc(50% - 10px);
}
.border_color3 {
    border-color: #0e7601;
}
#cms_2-g .cate_title_wrap::before{
    display:none;
}
#cms_2-g .cate_title{
    border:0;
    position:relative;
}
#cms_2-g .cate_title:before {
    width: 2px;
    height: 50%;
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: #e20007;
}
#cms_2-g .cate_title:after {
    width: 2px;
    height: 50%;
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    background: #009d34;
}
footer h2.logo img {
    max-width: 300px;
}
.bg_color5 {
    background: #fff7f0;
}
.page_box p {
    font-family: 'Yellowtail', cursive;
    font-size: 1.5em;
    line-height: 1em;
    padding-bottom: 10px;
}
a.linkStyle {
    color: #0e7601;
    transition:all 0.3s;
}
a.linkStyle:hover {
    opacity: 0.6;
}
#main_menu ul li a::before {
    background-color: #ed9153; 
}
.bg_color2 {
    background-color: #fff7ca;
}

.border_color1 {
    border-color: #ed9153;
}
p.con_no {
    font-family: 'Yellowtail', cursive;
    font-size: 1.5em;
    margin-bottom: 20px;
}
.en_font{
    font-family: 'Yellowtail', cursive;
    font-size: 1.3em; 
}
.cms_title p {
    font-family: 'Yellowtail', cursive;
    font-size: 1.3em;
    line-height: 1em;
}
#contents1 .box_right {
    width: 50%;
}
#contents1 .box_left {
    width: 50%;
}
#contents1 {
    padding: 100px 10%;
    display: flex;
    align-items: center;
}
.hvr_bg_color1:hover {
    background-color: #ef5800;
}
.bg_color1 {
    background-color: #ed9153;
}
.button:hover::after {
    box-shadow: inset 0 0 0 15em #ef5800;
}
.bg_color4 {
    background-color: #FFF7CA;
}
.bg_color3 {
    background-color: #ED9153;
}
.txt_color1 {
    color: #ef5800;
}
.txt_color3 {
    color: #0e7601;
}
#video video {
    width: 100% !important;
    height: 100%;
    object-fit: cover;
}
div#main_b:before {
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    background: #14141440;
    z-index: -1;
}
div#main_b img {
    width: 650px;
}
div#main_b {
    position: absolute;
    z-index: 2;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
#contents3 {
    background-color: #fffefa;
    background-image: url(Dup/img/con_bg2.jpg);
    background-size: 500px;
    position: relative;
}
#contents3 div{
    position:relative;
}
footer{
    background-color: #fffefa;
    background-image: url(Dup/img/con_bg.png);
    border:0 !important;
}
#contents3 h3{
    color: #ef5800;
}

/*-------------------------------PC------------------------------------*/
@media screen and (min-width:769px){
    header {
    padding: 20px;
    box-sizing: border-box;
    background: white !important;
}
header:before {
    width: calc(100% - 20px);
    height: 100px;
    content: "";
    position: absolute;
    background: url(Dup/img/header_img.png) no-repeat;
    top: 10px;
    left: 10px;
    z-index: 2;
    background-size: contain;
}
header #logo {
    padding: 0px 20px;
}
.head_box {
    background-color: #FFF7CA;
    background-image: url(Dup/img/header_img2.png);
    background-repeat: no-repeat;
    padding-top: 100px;
    position: relative;
    background-position: right bottom;
    background-size: 90%;
    height: calc(100vh - 65px);
}
}
/*-------------------------------タブレット------------------------------------*/
@media screen and (max-width:768px){
    header #logo {
    padding: 10px 0 0;
    max-width: 230px;
}
div#main_b img {
    width: 450px;
}
#contents1 {
    flex-direction: column;
    padding-bottom: 30px;
}
#contents1 .box_left {
    width: 100%;
}
#contents1 .box_right {
    width: 100%;
}
}

/*-------------------------------スマホ------------------------------------*/
@media screen and (max-width:667px){
    div#main_b img {
    width: 70%;
}
#contents1 {
    padding: 50px 10%; 
}
header #logo {
    max-width: 150px;
}
#contents3 {
    background-size: 400px;
}
}