@charset "utf-8";
.main_page::after { background: rgba(169,137,75,0.3); }
#container { background: url(../imgs/bg.png) no-repeat left top / 38% auto; }
.w1030 { margin:0 auto; max-width:1030px; width: 100%; }
.gold { color: #a9894b; }
sup { font-size: 1rem; }
.img_full.shadow .pos_rel{
    box-shadow: 5px 5px 10px #bebebe;
    z-index: 1;
}
.photo_cap { color: #d2d2d2;}
@media screen and (max-width: 1024px) {
    #container { background-size: contain; }
}

.head_cont .head_topic {
    font-size: 1.8rem;
    line-height: 2.2;
    letter-spacing: 0.24em;
    margin-bottom: 40px;
}
.head_cont .head_intro {
    font-size: 2.4rem;
    line-height: 2.3;
    letter-spacing: 0.28em;
}
.head_direction .head_line {
    position: relative;
    text-align: left;
    margin-bottom: 50px;
}
.head_direction .head_line img {
    height: 75px;
}
.head_direction .head_line::before {
    background-color: #b89e77;
    content: "";
    display: block;
    position: absolute;
    bottom: 7px;
    left: 105px;
    height: 1px;
    transition: width 1.5s linear;
    width: 0;
}
.head_direction.on .head_line::before {
    width: 150%;
}
.head_direction.right .head_line {
    text-align: right;
}
.head_direction.right .head_line::before {
    right: 105px;
    left: auto;
}
@media screen and (max-width: 1000px) {
    .head_cont .head_txt {
        text-align: center;
    }
    .head_cont .head_topic {
        font-size: 1.6rem;
    }
}
@media screen and (max-width: 767px) {
    .head_direction .head_line img {
        height: 37px;
    }
    .head_cont .head_topic {
        font-size: 1.3rem;
        line-height: 2;
        margin-bottom: 20px;
    }
    .head_cont .head_intro {
        font-size: 1.6rem;
    }
    .head_direction .head_line {
        margin-bottom: 30px;
    }
    .head_direction .head_line::before {
        bottom: 2px;
        left: 70px;
    }
    .head_direction.right .head_line::before {
        right: 70px;
        left: auto;
    }
}
/* sec_head */
.sec_head {
    position: relative;
    overflow: hidden;
}
.sec_head .head_cont {
    padding: 75px 0 25px;
}
@media screen and (max-width: 767px) {
    .sec_head .photo_cap {
        position: absolute;
        top: 38%;
        left: -15px;
    }
    .sec_head .head_cont {
        padding: 75px 0 35px;
    }
}
/* sec_intro */
.sec_intro {
    overflow: hidden;
}
.sec_intro .block01 {
    color: #fff;
    position: relative;
}
.sec_intro .block01 .head_cont {
    color: #fff;
    position: relative;
}
.sec_intro .block01::before {
    background: -o-linear-gradient(
        315deg,
        rgba(230, 200, 80, 0.8) 0%,
        rgba(230, 200, 80, 0.81) 2%,
        rgba(193, 162, 77, 1) 49%,
        rgba(169, 137, 75, 1) 79%,
        rgba(169, 137, 75, 1) 100%
    );
    background: linear-gradient(
        135deg,
        rgba(230, 200, 80, 0.8) 0%,
        rgba(230, 200, 80, 0.81) 2%,
        rgba(193, 162, 77, 1) 49%,
        rgba(169, 137, 75, 1) 79%,
        rgba(169, 137, 75, 1) 100%
    );
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    height: 520px;
    width: 100%;
}
.sec_intro .block01 .head_cont {
    padding: 85px 0 75px;
}
.sec_intro .block01 .head_cont .head_txt {
    margin-bottom: 20px;
}
.sec_intro .block03 .head_cont,
.sec_intro .block02 .head_cont {
    color: #333333;
    position: relative;
}
.sec_intro .block02 .head_cont {
    padding: 85px 0 50px;
}
.sec_intro .block03 {
    position: relative;
}
.sec_intro .block03::before {
    background-color: #eee7db;
    content: "";
    display: block;
    position: absolute;
    top: 0;
    height: 300px;
    width: 100%;
}
.sec_intro .block03 .head_cont {
    padding: 75px 0 0;
}
.sec_intro .block03 .pos_rel {
    margin: auto;
    max-width: 655px;
}
.sec_intro .block03 .photo_shadow {
    padding-bottom: 30px;
}
.sec_intro .block03 .photo_shadow img {
    box-shadow: 0px -15px 10px -10px rgba(0, 0, 0, 0.2),
        15px 0px 10px -10px rgba(0, 0, 0, 0.2),
        0px 15px 10px -10px rgba(0, 0, 0, 0.2),
        -15px 0px 10px -10px rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 767px) {
    .sec_intro .block01::before {
        height: 260px;
    }
    .sec_intro .block01 .head_cont {
        padding: 15px 0 30px;
    }
    .sec_intro .block02 .head_cont {
        padding: 30px 0 30px;
    }
    .sec_intro .block03 .head_cont {
        padding: 30px 0 15px;
    }
    .sec_intro .block03::before {
        height: 175px;
    }
}

/* .sec_spring */
.sec_spring {
    background: url(../imgs/bg02.png) no-repeat right top 160px / 38% auto;
    position: relative;
    overflow: hidden;
    padding: 50px 0 0;
}
.sec_spring .head_cont {
    padding: 80px 0 40px;
}

@media screen and (max-width: 1024px) {
    .sec_spring {
        background-position: top 35px right;
        background-size: contain;
    }
}
@media screen and (max-width: 767px) {
    .sec_spring {
        padding: 0;
    }
    .sec_spring .head_cont {
        padding: 50px 0 35px;
    }
    .sec_spring .photo_cap {
        position: absolute;
        position: absolute;
        top: 19%;
        right: 0;
    }
}

/* */
.iframe_video_wrap{	
	margin-top: 90px;
	margin-left: auto;
	margin-right: auto;
	max-width: 770px;
	padding-left: 15px;
	padding-right: 15px;
	margin-bottom: 60px;
}
@media only screen and (max-width:767px){
	.iframe_video_wrap{	margin-bottom: 40px; margin-top: 30px;}
}
.iframe_video{
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	margin-top: 20px;
}
.iframe_video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.line_img_mov_ttl{
	color: #a9894a;
	font-size: 130%;
	line-height: 1.4;
	margin-bottom: 20px;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
.line_img_mov{
	max-width: 300px;
	width: 60%;
	margin-left: auto;
	margin-right: auto;
}
@media only screen and (max-width:767px){
	.line_img_mov_ttl{margin-bottom: 10px; font-size: 120%;}
	.iframe_video{margin-top: 15px;}
}
@media only screen and (max-width:470px){
	.line_img_mov_ttl{font-size: 4.0vw;}
}
div.vid_contents {
	width: 100%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	background: #e6e6e6;
	margin-top: 20px;
}
video.vid_main {
	width: 100%;
	max-width: 920px;
}
