﻿/*--------link_font--------*/
@font-face {
    font-family: 'NotoSans';
    font-style: normal;
    font-weight: 400;
    src: url('./Dup/img/NotoSans_r.woff') format('woff'),
        url('./Dup/img/Notosans_r.eot')  format('eot');
    font-display: swap;
}
@font-face {
    font-family: 'NotoSans';
    font-style: normal;
    font-weight: 700;
    src: url('./Dup/img/Notosans_bold.woff') format('woff'),
        url('../Dup/img/Notosans_bold.eot')  format('eot');
    font-display: swap;
}

body{
    font-family: "NotoSans", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic,"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
body .font_14 {font-size: 1.05em;}
.linkStyle{color: #333333; text-decoration: underline;}


/*--------all_page--------*/
body{overflow:hidden;}
.fa-envelope:before {
    content: "\f095";
}
@media screen and (min-width: 769px){
header{
    height: 93%;
    margin-left: 1%;
    border-radius: 0 0 20px 20px;
}
}

.main_img_bg{
    background-image: url(./Dup/img/main_img.jpg);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: 0% 0%;
}

#main_img{
max-height: none;
min-height: auto;
height: 48vw;
}
/*--------------------------------
疑似要素にオブジェクト
--------------------------------*/
#main_img{position: relative;}
/*リピートなし*/
#main_img:before{
content: "";
display: block;
background-size: cover;
background-repeat: no-repeat;
position: absolute;
}

#main_img:before{
background-image: url(./Dup/img/catch.png);
background-size: 100%;
width: 8vw;
height: 40vw;
top:46%;
left: 50%;
-ms-transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
}
.scroll_bt{bottom: -30px;color: #1a1a1a;}
.scroll_bt span{border: 2px solid #1a1a1a;}
.scroll_bt span::before{background-color: #1a1a1a;}

.con_no{
  position: relative;
  display: inline-block;
  border: 2px solid #333;
  border-radius: 50px;
  padding: 16px;
  font-size: 1.5rem;
font-weight: bold;
letter-spacing: 1px;
}

.con_no{
  position: relative;
  display: inline-block;
  border: 2px solid #333;
  border-radius: 50px;
  padding: 6px 20px;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 1px;
  box-shadow: #d3d3d3 3px 3.5px 0;
}

.con_no:before {
  content: "";
  position: absolute;
  bottom: -24px;
  left: 50%;
  transform: translateX(-50%);
  border-width: 12px;
  border-style: solid;
  border-color: #fff transparent transparent transparent;
  z-index: 2;
}

.con_no:after {
  content: "";
  position: absolute;
  bottom: -29px;
  left: 50%;
  transform: translateX(-50%);
  border-width: 14px;
  border-style: solid;
  border-color: #333 transparent transparent transparent;
  z-index: 1;
}
#contents_box .item{
    width: 190px;
    position: absolute;
    top: -78px;
    left: -27px;
}

.img5,.img6{position:relative;}
.img5:before,.img6:before{
    content: "";
    position: absolute;
    display: inline-block;
    z-index: 1;
    width: 30%;
    height: 40%;
}
.img5:before{
    background: url(./Dup/img/item_04.png) no-repeat;
    background-size: contain;
    left: -21px;
    bottom: -8px;
}
.img6:before{
    background: url(./Dup/img/item_05.png) no-repeat;
    background-size: contain;
    left: -30px;
    bottom: -33px;
    width: 36%;
}
#contents1{
    text-align: center;
    background-image: url(./Dup/img/item_01.png);
    background-size: 60%;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

#contents2,#contents3{position:relative;margin-top: 50px;}
#contents2:before,#contents3:before {
    content: "";
    position: absolute;
    margin: -80px -500px;
    width: 130vw;
    height: 110%;
    background: #f9f4ed;
    z-index: -1;
}

.txt4,.txt5{
    background: linear-gradient(transparent 70%, rgba(255, 239, 100, .85) 0%);
    display: inline;
    padding: 0 0.2em 0.05em;
}

.cms_title p{
    position:relative;
    padding: 0 17px;
}
.cms_title p::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	display: inline-block;
	height: 95%;
	width: 2px;
	background: #333;
	-webkit-transform: rotate(-35deg);
	-ms-transform: rotate(-35deg);
	transform: rotate(-35deg);
}

.cms_title p::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	display: inline-block;
	height: 95%;
	width: 2px;
	background: #333;
	-webkit-transform: rotate(35deg);
	-ms-transform: rotate(35deg);
	transform: rotate(35deg);
}

.cms_2-f .box_wrap {
    border: 2px solid #505050;
    box-shadow: #d3d3d3 3px 3.5px 0;
}

footer.border_so1-t {
    border-top: none;
}

/*--------subpage--------*/
#cms_2-f .cate{
    border: 2px solid #505050;
    box-shadow: #d3d3d3 3px 3.5px 0;
}

@media screen and (max-width: 1366px){
.scroll_bt {
bottom: -22px;
padding-top: 40px;
}
.scroll_bt span {
width: 25px;
height: 40px;
}
.scroll_bt span::before {
-webkit-animation: sdb2 2s infinite;
animation: sdb2 2s infinite;
}
}

@-webkit-keyframes sdb2{
	0% {
		-webkit-transform: translate(0, 0);
		opacity: 0;
	}
	40% {
		opacity: 1;
	}
	80% {
		-webkit-transform: translate(0, 15px);
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}
@keyframes sdb2{
	0% {
		transform: translate(0, 0);
		opacity: 0;
	}
	40% {
		opacity: 1;
	}
	80% {
    transform: translate(0, 15px);
    opacity: 0;
	}
	100% {
		opacity: 0;
	}
}

/*--------mobile_tb--------*/
@media screen and (max-width: 768px){
header #logo.width_200-max_tb {
    max-width: 130px;
}
.main_box{padding-top: 96px;}
#main_img{height: 60vw;}
#main_img:before{
width: 11vw;
height: 55vw;
top: 50%;
}
/*
#main_img::before{
    content: "";
    position: absolute;
    display: inline-block;
    background: url(./Dup/img/catch.png) no-repeat;
    background-size: contain;
    z-index: 1;
    width: 15%;
    height: 90%;
    left: 50%;
    top: 6%;
    transform: translateX(-50%);
}
*/
#contents1 {
    background-size: 82%;
}
#contents2, #contents3 {
    background: #f9f4ed;
}
.img5:before {
    left: auto;
    right: -52px;
    bottom: -21px;
    height: 35%;
}
#contents2:before,#contents3:before {
    display: none;
}
#contents3{
    margin-top: 0px;
    padding-top: 50px;
}
#contents3 .d_flex{
    flex-direction: column-reverse;
}
}

/*--------mobile_sp--------*/
@media screen and (max-width: 667px){
    /*
    #main_img img{
        object-position:50% 55%;
    }
    #main_img::before{
        display: none;
    }
    */
.main_img_bg{background-image: none;}
.main_box{padding-top: 75px;}
#main_img{height: 56vh;}
#main_img:before{
width: 16vw;
height: 80vw;
top: 47%;
}
    header #logo.width_200-max_tb {
    max-width: 98px;
}
#contents1 {
    background-size: 95%;
    background-position: 50% 31%;
}
#contents_box .item {
    width: 160px;
    top: -58px;
}
.img5:before {
    right: -23px;
    bottom: -39px;
    height: 43%;
    width: 37%;
}
.img6:before {
    left: -46px;
    bottom: -34px;
    width: 46%;
    height: 49%;
}
#cms_2-f .box_title1 {
    padding-left: 0px;
}
#cms_2-f .box_title1::after{display:none;}
}


/*--------------------------------------------
IE
--------------------------------------------*/
@media all and (-ms-high-contrast:none){
.cms_1-a figure img{width:100%!important;height:auto!important;}

}

/*2025-0924*/
#sikaku {
    margin: 220px auto -50px;
}

@media screen and (max-width: 768px){
#sikaku {
    margin: 80px auto -80px;
}
.grid_7 {
    width: 85% !important;
}
}


@media screen and (max-width: 667px){
#sikaku {
    margin: 20px auto -80px;
}    
}