@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;300;400;500;600;700&display=swap');


html * { 
box-sizing: border-box;
}

body {
margin: 0;
padding: 0;
font-family: 'Noto Serif JP', serif;
font-size: 100%;
width: 100%;
font-weight:300;
line-height:1.8;
color:#0B0D13;
background: #FFFAF0;
text-size-adjust: none;
-webkit-text-size-adjust: none;
}
@media screen and (max-width: 768px){
body {
font-size: 95%;
}
}
a:link {color:#000; text-decoration:none;}
a:visited {color:#000; text-decoration:none;}
a:hover {color:#891D18; text-decoration:none;}

a { transition:0.3s; }
a:hover { opacity: 0.8; }

img a:hover { opacity: 0.8; }

.pc { display: block !important; }
.sp { display: none !important; }

@media only screen and (max-width: 768px) {
.pc { display: none !important; }
.sp { display: block !important; }
}
/* Base ul li  */
ul.base {
list-style-type: none;
margin: 0;
padding: 0;
}
ul.base li {
margin: 0;
padding-left: 1em;
text-indent: -1em;
}
h2.wave{
width: 100%;
margin:0 auto 50px;
padding: 50px 0 0;
font-size: 32px;
font-weight: 400;
text-align: center;
line-height: 1.4;
background: url(../img/h2_ttl.svg) center top no-repeat;
display: block;
}
@media screen and (max-width: 768px){
h2.wave{
margin: 0 auto 35px auto;
font-size: 22px;
}

}

/* トップページ
----------------------------------------------------*/
header{
width: 1100px;
margin: 0 auto;
padding: 30px 0 40px 0;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic","ヒラギノ角ゴ Pro W3","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ";
font-size: 12px;
display: flex;
align-items: center;
flex-direction: row-reverse;
}
header a:link{
color: #000;
display: inline-block;
margin: 0 10px;
}
header a:hover{
color: #941F1A;
}
header nav{
display: flex;
font-size: 16px;
}
header nav a:link{
margin: 0 40px 0 0;
font-family: 'Noto Serif JP', serif;
color: #000;
display: inline-block;
}
@media screen and (max-width: 768px){
header{
width: 90%;
margin: 0 auto;
padding: 10px 0 40px 0;
}

}
.topFv {
padding: 0 0 50px;
background: url(../img/fv_bg.svg) left top;
}
@media screen and (max-width: 768px){
.topFv {
margin: 0;
}
}
.topFv .fvBox{
position: relative;
width: 1100px;
margin: 0 auto;
display: flex;
justify-content: center;
align-items: flex-start;
}
@media screen and (max-width: 768px){
.topFv .fvBox{
width: 90%;
margin: 0 auto;
}
}
.topFv .fvBox .main_img{
width: 90%;
margin: 0 auto;
}
.topFv .fvBox h1{
position: absolute;
width: 250px;
top:-100px;
left:0;
}
@media screen and (max-width: 768px){
.topFv .fvBox .main_img{
width: 100%;
margin: 70% auto 0;
}
.topFv .fvBox h1{
position: absolute;
width: 80%;
top:-60px;
left:50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
}
}
.topFv .fvBox h1 img{
width: 100%;
}
.topFv .fvBox h2{
position: absolute;
bottom:-130px;
right:30px;
color: #98783E;
font-size: 26px;
font-weight: 400;
writing-mode: vertical-rl;
line-height: 2.5;
}
.topFv .fvBox h2 span:first-child{
display: block;
margin: 30px 0 0;
}
.topFv .fvBox h2 span{
display: block;
margin: 60px 0 0;
}
@media screen and (max-width: 768px){
.topFv .fvBox h2{
width: 100%;
bottom:-180px;
left:0;
font-size: 20px;
writing-mode: horizontal-tb;
line-height: 1.5;
display: block;
text-align: center;
}
.topFv .fvBox h2 span:first-child{
margin: 0 0 0;
}
.topFv .fvBox h2 span{
margin: 0 0 0;
}
}
.top_pickup_wrp{
width: 100%;
background: #FFF;
}
.top_pickup_box{
width: 1100px;
margin: 0 auto;
padding: 100px 0;
display:flex;
justify-content:space-between;
flex-wrap: wrap;
}
@media screen and (max-width: 768px){
.top_pickup_box{
width: 90%;
margin: 0 auto;
padding: 150px 0 40px;
}
}
.top_pickup_wrp .item{
width: 260px;
margin: 0 0 30px 0;
text-align: center;
}
@media screen and (max-width: 768px){
.top_pickup_wrp .item{
width: 48.5%;
}
}
.top_pickup_wrp .item figure{
position: relative;
width: 100%;
margin: 0;
}
.top_pickup_wrp .item figure .photo{
width: 100%;
}
.top_pickup_wrp figure figcaption{
width: 100%;
margin: -50px 0 0 0;
padding: 8px 0 22px;
color: #FFF;
font-size: 14px;
line-height: 1.0;
background: url(../img/h3_ttl_ougi.svg) center top no-repeat;
position: absolute;
bottom:-15px;
left:50%;
transform: translate(-50%,0);
}
.top_pickup_wrp .item p{
margin: 20px 0 0 0;
font-weight: 400;
}
@media screen and (max-width: 768px){
.top_pickup_wrp figure figcaption{
width: 100%;
padding: 5px 0 22px;
font-size:12px;
font-weight: 600;
line-height: 1.0;
background-size: 70px;
bottom:-18px;
}
.top_pickup_wrp .item p{
margin: 15px 0 0 0;
font-size: 13px;
}
}
.top_under_wrp{
width: 1100px;
margin: 100px auto;
}
.top_under_wrp .sec{
width: 100%;
margin: 0 auto 80px;
display:flex;
justify-content:space-between;
}
@media screen and (max-width: 768px){
.top_under_wrp{
width: 90%;
margin: 50px auto;
}
.top_under_wrp .sec{
width: 100%;
display:block;
}
}
.top_under_wrp .sec:nth-child(5){
flex-direction:row-reverse;
}
.top_under_wrp .sec img{
width: 50%;
}
.top_under_wrp .sec .txtBox{
width: 50%;
padding: 20px 40px;
background: #FFF;
display:flex;
justify-content:space-between;
flex-flow: column;
}
@media screen and (max-width: 768px){
.top_under_wrp .sec img{
width: 100%;
margin: 0;
vertical-align: bottom;
}
.top_under_wrp .sec .txtBox{
width: 100%;
padding: 20px;
display:block;
}
}
.top_under_wrp .sec .txtBox h3{
margin: 0 0 30px;
color: #891D18;
font-size: 26px;
font-weight: 400;
line-height: 1.5;
}
@media screen and (max-width: 768px){
.top_under_wrp .sec .txtBox h3{
margin: 0 0 20px;
font-size: 20px;
}
}
.top_under_wrp .sec .txtBox p{
display: flex;
flex-direction:row-reverse;
}
.top_under_wrp .sec .txtBox a{
position:relative;
padding-left:17px;
color: #000;
}
.top_under_wrp .sec .txtBox a:hover{
color: #891D18;
}
.top_under_wrp .sec .txtBox a:before{
content:'';
display:inline-block;
position:absolute;
left:0px;
top:11px;
width:7px;
height:7px;
border-bottom:1px solid #888;
border-right:1px solid #888;
transform:rotateZ(-45deg);
}

/*フッター
----------------------------------------------------*/
footer{
width:100%;
margin:0;
padding:5px 0;
background:#ECD8B5;
}
footer > small {
width:100%;
font-style: normal;
color: #FFFFFF;
text-align: center;
padding:0;
display:block;
}
