@charset "UTF-8";

body{
    margin: 0;
    font-family: sans-serif;
     background-image: url(img/bg.png);
     background-size: cover;
     background-repeat: no-repeat;
     background-position: center;
     background-attachment: fixed;
}

html {
    scroll-behavior: smooth;
}


h1{
    font-weight: normal;
    font-size: 2rem;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    margin:0 auto;
    margin-bottom:50px;
    letter-spacing: 0.3rem;
}

h1,h2,h3,.headA,.conA,nav{
   /* font-family: "Sawarabi Mincho"; */
}

body#etc h3{
        border-bottom:1px dashed #136235;
        margin-top:50px;
    }

p{
    font-size: 14px;
    opacity: 0.9;
}

.mini{
    font-size:70%;
}

a img:hover{
    opacity: 0.8;
}

/*ヒーローイメージ*/
.conA{
    height: 100vh;
    min-height: 450px;
    background-image: url(img/main01.jpg);
    background-position:top;
    background-size:cover;
    text-align: center;
    color:#ffffff;
}

.conA .container{
    padding-top:30px;
}

.conA a{
    color:inherit;
    text-decoration: none;
    border-bottom:1px dotted #eeeeee;
}

.conA img{
    width: 20%;
    padding:0;
    margin:0;
}

.conA p{
    padding:0;
    margin:0;
}
@media (min-width:1280px){
    .conA{
        background-attachment: fixed;
    }
}
@media (max-width:767px){
    .conA img{
        width:60%;
    }
    .conA h1 img{
        width:150px;
        padding:0;
        margin:0;
    }
}

/*ふるさと納税*/
.furusato,.furusatosp{
    margin-top:-7px;
    padding:50px;
    background-image: linear-gradient(rgba(0,0,0,0.1),rgba(0,0,0,0.5)), url(img/main01.jpg);
    background-size:cover;
    text-align: center;
    color:#ffffff;
    font-family: serif;
    font-size:1.2rem;
    font-weight: bold;
    letter-spacing: 3px;
    }
.furusato img{
        width:35%;
    }
.furusato div,.furusatosp p{
    writing-mode: vertical-rl;
    text-orientation: upright;
    font-feature-settings: initial;
    margin:50px;
}
.furusatosp p{
    margin:0 auto;
}
.furusato ul{
    list-style: none;
    padding-left:50px;
}
.furusatosp ul{
    list-style: none;
}
.furusato ul li img{
    width: 220px;
}
@media (min-width:1024px){
    .furusato{
        background-attachment: fixed;
    }
    .furusato .container{
        max-width: 1000px;
        margin:0 auto;
    }
    .furusato ul{
        display: flex;
        justify-content: space-between;
        margin:0 auto;
    }
    .furusato ul li{
        padding:10px;
    }
    .furusatosp{
        display: none;
    }
}
@media (max-width:1023px){
    .furusato{
        display: none;
    }
    .furusatosp{
        padding:0;
    }
    .furusatosp p{
       font-size:18px;
    }
    .furusatosp ul{
        margin:0;
        padding:30px;
    }
    .furusatosp img{
        width:250px;
    }
    .furusatosp ul li img{
        width: 200px;
    }
}


/*３つのポイント*/
.conB .container{
    padding-top:30px;
    padding-bottom:20px;
}

.conB .text{
    padding:0 5px 60px 5px;
    text-align: center;
}

.conB h2{
    margin-top:0;
    margin-bottom:10px;
    font-size: 20px;
}

.conB.news .container{
    display: block;
    text-align: center;
}

.conB p{
    margin-top:0;
    margin-bottom:20px;
    font-size:14px;
    line-height: 1.8;
    opacity: 0.8;
}

.conB a{
    color:#136235;
    text-decoration: none;
}

.conB a:hover{
    text-decoration: underline;
}

.conB .icon{
    display: inline-block;
    margin-bottom:20px;
    font-size: 40px;
    width:2em;
    line-height: 2em;
    border-radius: 50%;
    text-align: center;
    background-color:#dddddd;
    color:#ffffff;
}

@media (min-width:768px){
    .conB .container{
        display: flex;
        max-width:1200px;
        margin:0 auto;
    }
    .conB .text{
        flex:1;
    }
    .conB.news h2{
        font-size: 1.5em;
        letter-spacing: 7px;
    }
}

/*左右横画像展開*/
.conC .text{
    padding:20px;
}

.conC h2{
    margin-top:0;
    margin-bottom:10px;
    font-size:20px;
}

.conC p{
    margin-top:0;
    margin-bottom:20px;
    font-size: 14px;
    line-height: 1.8;
    opacity: 0.8;
}

.conC a{
    display: inline-block;
    margin-top:20px;
    padding:5px 10px;
    border:solid 3px currentColor;
    border-radius:6px;
    background-color:#136235;
    color:#ffffff;
    font-size:14px;
    text-decoration:none;
}

.conC a:hover{
    background-image:linear-gradient(rgba(255,255,255,0.2),rgba(255,255,255,0.2));
}

.conC .photo{
    min-height: 200px;
    background-image:url(img/image_history.jpg);
    background-position:center;
    background-size:cover;
}

.conC .photo.syukaku{
    background-image:url(img/image_syukaku.jpg);
}

.conC .photo.kurozu{
    background-image:url(img/image_kurozu.jpg);
}

.conC .photo.tahinsyu{
    background-image:url(img/image_tahinsyu_prize.jpg);
}

.conC .photo.tinori{
    background-image:url(img/image_autumn_uosuka.jpg);
}

.conC .photo.yugurena{
    background-image:url(img/image_yugurena.jpg);
}


.conC.reverse .container{
    padding-top:10px;
}

@media (min-width:768px){
    .conC .container{
        display: flex;
        max-width:1200px;
        margin:0 auto;
    }
    .conC .photo{
        flex:1;
    }
    .conC .text{
        flex:1;
        padding:50px;
    }
    .conC.reverse .container{
        display: flex;
        flex-direction: row-reverse;
    }
}

@media (max-width:768px){
    .conC .text img{
        margin-top:-50px;
    }
}

/* フッター */
footer {
	color: #fff;
	background-color: #136235;
}

footer .container {
	padding: 40px 20px;
}


@media (min-width: 768px) {
	footer .container {
		display: flex;
		flex-wrap: wrap;
		max-width: 1200px;
		margin-left: auto;
		margin-right: auto;
	}

	.footA {
		flex: 0 0 40%;
	}

	.footB {
		flex: 0 0 60%;
	}

	.footC {
		flex: 0 0 100%;
	}
}


/* フッターA： サイト情報 */
.footA {
	margin-bottom: 30px;
}

.footA h2 {
	margin-top: 0;
	margin-bottom: 10px;
}

.footA p {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 14px;
}

.footA a {
	color: inherit;
	text-decoration: none;
}


/* フッターB： フッターメニュー */
.footB div {
	margin-bottom: 20px;
}

.footB h3 {
	margin-top: 0;
	margin-bottom: 10px;
	border-bottom: solid 1px currentColor;
	font-size: 14px;
}

.footB ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.footB a {
	display: block;
	padding: 5px;
	color: inherit;
	font-size: 12px;
	text-decoration: none;
}

.footB a:hover {
	background-color: rgba(0,0,0,0.3);
}


@media (min-width: 768px) {
	.footB {
		display: flex;
	}

	.footB div {
		flex: 1;
	}

	.footB div:not(:first-child) {
		margin-left: 40px;
	}
}


/* フッターC： コピーライト */
.footC {
	font-size: 12px;
	text-align: center;
}


/* フッターD： SNSメニュー */
.footD {
	margin-top: 20px;
}

.footD ul {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.footD a {
	display: block;
	margin-right: 8px;
	padding: 0;
	color: inherit;
	font-size: 16px;
	text-decoration: none;
	border: solid 1px currentColor;
	width: 2em;
	line-height: 2em;
	border-radius: 50%;
	text-align: center;
}

.footD a:hover {
	background-color: rgba(0,0,0,0.3);
}


/*ヘッダー*/
header{
    position:absolute;
    top: 0;
    left:0;
    z-index: 100;
    width:100%;
}
.headA{
    display: inline-block;
    line-height: 70px;
    padding-left:20px;
    padding-right:20px;
    font-size:18px;
    text-decoration:none;
    color:inherit;
}

@media (min-width:768px){
    .headA{
        font-size:24px;
    }
}

.headB ul{
    margin:0;
    padding:0;
    padding-left:20px;
    list-style: none;
}

.headB a{
    padding:5px;
    color:inherit;
    font-size:12px;
    text-decoration:none;
    border-bottom:1px dotted #eeeeee;
}

.headB a:hover{
    border-bottom:1px dotted #000000;
}

@media (max-width:767px){
    header .container-small{
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .headC{
        margin-right: 10px;
        padding:0;
        border:none;
        outline:none;
        background:none;
        font-size:24px;
        color:#000000;
        cursor:pointer;
    }
    .headC:hover{
        opacity: 0.7;
    }
    .headB a{
        font-size:16px;
    }
    .headB ul{
        background-color:rgba(255,255,255,0.8);
        text-align: center;
        padding:20px;
    }
    .headB ul li{
        padding:10px;
    }
    .headB{
        display: none;
    }
}

@media (min-width:768px){
    .headC{
        display: none;
    }
    .headB{
        display: block!important;
    }
}

/*ナビゲーション　トップ以外*/
#etc header{
    position: static;
}
@media (min-width:1024px){
    #etc header .container{
        display: flex;
        align-items:center;
        justify-content: space-between;
    }
    #etc .headB ul{
        display: flex;
    }
}



/*プロフィール*/
.profile{
    background-color:#eeeeee;
}

.profile .text{
    padding:20px;
}

.profile h2{
    margin-top:0;
    margin-bottom:10px;
    font-size:1.5rem;
}

.profile h2.jusyou{
    margin-top:30px;
}

.profile .photo{
    min-height: 400px;
    background-image: url(img/image_family.jpg);
    background-position: center;
    background-size:cover;
}

.profile table{
    border-collapse: collapse;
    border-top:solid 1px #ffffff;
    font-size: 0.875rem;
}

.profile th,
.profile td{
    padding-top:1rem;
    padding-bottom:1rem;
    border-bottom:1px solid #ffffff;
}
.profile th{
    padding-right:1rem;
    text-align: left;
    word-break:keep-all;
}

@media (min-width:1024px){
    .profile .container{
        display: flex;
        max-width: 1200px;
        margin:0 auto;
    }
    .profile .photo{
        flex:1.2;
    }
    .profile .text{
        flex:2;
        padding:50px;
    }
}

/*地図*/
.location iframe{
    width:100%;
    height: 400px;
    vertical-align: bottom;
}

/* スライダ―のCSS */
.scroll-infinity{
    margin: 0;
}
.scroll-infinity ul{
    margin:0;
    padding:0;
}
.scroll-infinity__item a:hover{
    opacity: 0.7;
}
@keyframes infinity-scroll-left {
    from {
      transform: translateX(0);
    }
      to {
      transform: translateX(-100%);
    }
    }
    .scroll-infinity__wrap {
      display: flex;
      overflow: hidden;
    }
    .scroll-infinity__list {
      display: flex;
      list-style: none;
      padding: 0
    }
    .scroll-infinity__list--left {
      animation: infinity-scroll-left 30s infinite linear 0.5s both;
    }
    .scroll-infinity__item a{
      width: calc(100vw / 7);
    }
    .scroll-infinity__item>img a{
      width: 100%;
    }

@media (max-width:767px){
    .scroll-infinity__item a{
        width: calc(100vw / 3);
      } 
}

.conD h2,
.conD p{
    text-align: center;
}

/*トップコンテンツバナー*/
.conE .container{
    padding:50px 0;
    margin:0 auto;
}
.conE .container ul{
    margin: 0;
    padding:0;
}
.conE h2,
.conE p,
.conE ul li{
    text-align: center;
}
.conE ul{
    list-style: none;
}
.conE ul li img{
    width:80%;
}
@media (min-width:768px){
    .conE .container{
        max-width: 1200px;
    }
    .conE ul{
        display: flex;
        flex-wrap: wrap;
    }
    .conE ul li{
    }
    .conE ul li img{
        width:380px;
        padding:10px;
    }
}

/*トップ以外*/
#etc .post .container{
    max-width: 800px;
    margin:0 auto;
    padding:30px 10px;
}


/*押したくなるボタン*/
a.btn-radius-solid {
    display: inline-block;
    margin-top:20px;
    padding:10px 30px;
    border-radius:6px;
    color:inherit;
    font-weight: bold;;
    text-decoration:none;
    background: #f1e767;
    background: -webkit-gradient(linear, left top, left bottom, from(#f1e767), to(#feb645));
    background: -webkit-linear-gradient(top, #f1e767 0%, #feb645 100%);
    background: linear-gradient(to bottom, #f1e767 0%, #feb645 100%);
  }
  
  a.btn-radius-solid:hover {
    background: -webkit-gradient(linear, left bottom, left top, from(#f1e767), to(#feb645));
    background: -webkit-linear-gradient(bottom, #f1e767 0%, #feb645 100%);
    background: linear-gradient(to top, #f1e767 0%, #feb645 100%);
  }

/*目次デザイン*/
.toc-001 {
    margin-bottom: 30px;
    padding: 1em 1em 1em 2em;
    border: 1px solid #999;
    background-color: #edf9f2;
    color: #333333;
}

.toc-001 div {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 5px 0;
}

.toc-001 div::before {
    display: inline-block;
    width: 1em;
    height: 1em;
    margin-right: 5px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 4H21V6H8V4ZM3 3.5H6V6.5H3V3.5ZM3 10.5H6V13.5H3V10.5ZM3 17.5H6V20.5H3V17.5ZM8 11H21V13H8V11ZM8 18H21V20H8V18Z' fill='%23333'%3E%3C/path%3E%3C/svg%3E");
    content: '';
}

.toc-001 ol {
    list-style-type: disc;
    margin: 0;
    padding: 0 1.2em;
    overflow: hidden;
}

.toc-001 ol ol {
    margin-top: 5px;
}

.toc-001 li {
    padding: 5px 0;
}

.toc-001 a {
    color: #166c9d;
}

/*ボックスデザイン*/
.boxdesign {
    margin: 2em 0;
    background: #eeeeee;
}
.boxdesign .box-title {
    font-size: 1.2em;
    background: #666666;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.boxdesign p {
    padding: 15px 20px;
    margin: 0;
}

/*トップへ戻る*/
.pagetop {
    height: 50px;
    width: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
    background: #fff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
    box-shadow: 0 4px 6px rgb(0 0 0 / 30%);
}

.pagetop__arrow {
    height: 10px;
    width: 10px;
    border-top: 3px solid #136235;
    border-right: 3px solid #136235;
    transform: translateY(20%) rotate(-45deg);
}

/*ベーグルページ*/
ul.bagelfurusato{
    list-style-type:none;
    margin:0;
    padding:0;
}

@media (min-width:768px){
    ul.bagelfurusato{
        display: flex;
        flex-wrap: wrap;
    }
    ul.bagelfurusato li{
        width:45%;
        padding:10px;
    } 
}

/*スマホと表示分け*/
@media (min-width:768px){
.sp{
display:none;
}
}

@media (max-width:767px){
.pc{
display:none;
}
}
