@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500&display=swap');
.pc { display: inherit; }
.sp { display: none; }
body {
  margin:0;
  padding:0;
  font-size: 16px;
  font-family:Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
}
/*曜日メニュー非表示*/
.menuNavi nav .secondMenu {
    display: none;
}
body.workation_renewal{
    margin:0;
    padding:0;
    position: relative;
}
/*背景変更*/
body.workation_renewal .background{
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: -1;
}
body.workation_renewal .background div {
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 100%;
}
body.workation_renewal .model_course_footer {
/*    position: absolute;
    bottom: 0; */
}
    
/*メニュー*/

.navi_menu {
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: 999;
    /*ナビのスタート位置と形状*/
    top:0;
    left: -12%;
      width: 20%;
    height: 100vh;/*ナビの高さ*/
    background-image: url(img/header_back.png);
    background-size: 100px auto;
    background-position: right;
    /*動き*/
    transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
.navi_menu.panelactive{
    left: 0%;
}
.navi_menu.panelactive ul {
    left: 0%;
    
}
/*ナビゲーションの縦スクロール*/
.navi_menu.panelactive .navi_list{
    z-index: 999; 
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
.navi_menu ul {
    width: 100%;
    box-sizing: border-box;
    padding: 5px;
    position: absolute;
    z-index: 999;
    top:50%;
    left:-50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transition: all 0.6s;
}

/*リストのレイアウト設定*/

.navi_menu li{
    margin: 0;
  list-style: none;
    text-align: center;
}

.navi_menu li a{
  color: #373737;
  text-decoration: none;
  padding:10px;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: bold;
}

/*========= ボタンのためのCSS ===============*/
.open_btn {
  position:fixed;
    z-index: 9999;/*ボタンを最前面に*/
  top:10px;
  left: 2%;
  cursor: pointer;
    width: 40px;
    height:50px;
}
  
/*×に変化*/  
.open_btn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 0;
    height: 3px;
    border-radius: 2px;
  background-color: #373737;
    width: 100%;
  }

.open_btn span:nth-of-type(1) {
  top:0px; 
}

.open_btn span:nth-of-type(2) {
   top:10px;
}

.open_btn span:nth-of-type(3) {
  top:20px;
}
.open_btn div {
    white-space: nowrap;
    position: absolute;
    top:30px;
    font-size: 0.8rem;
    left:-5px;
}

.open_btn.active span:nth-of-type(1) {
    top: 8px;
    left: 0px;
    transform: translateY(6px) rotate(-45deg);
/*    width: 40%;*/
}

.open_btn.active span:nth-of-type(2) {
  opacity: 0;
}

.open_btn.active span:nth-of-type(3){
    top: 20px;
    left: 0px;
    transform: translateY(-6px) rotate(45deg);
/*    width: 40%;*/
}

/*フッター*/
/*.workation_footter {
    padding: 10px 10px 10px 9%;
    font-size: 0.7rem;
    bottom: 0;
    background: rgba(181,212,56,0.9);
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-image: url(img/footer_back.png),url(img/footer_back.png);
    background-repeat: no-repeat,no-repeat;
    background-position: bottom left 9%,bottom right;
    background-size: auto 100%;
}
.workation_footter ul {
    display: flex;
}
.workation_footter ul > li {
   position: relative; 
   margin: 0;
   margin-right: 1.5rem;
}
.workation_footter ul > li:after {
    position: absolute;
    content: ">";
    right: -1rem;
    
}*/
/*メインコンテンツ*/
.workation_base_contents {
    display: flex;
    justify-content: space-between;
    min-height: calc(100% - 50px);
    padding: 10px;
    box-sizing: border-box;
    min-height: calc(100vh - 60px);
}
.workation_base_block{
  width: 50%;  
  margin-right: 10px;
}
.workation_base_block:last-child {
    margin: 0;
}
/*予約・アクセスリンク*/
.reserve_access_contents {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
}
.reserve_block {
    margin-bottom: 30px;
}
.circle_link {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #ff6d41;
  position: relative;
  color: #fff;
  background-image: url(img/reserve.png);
  background-repeat: no-repeat;
  background-size: 40% auto;
  background-position: 50% 32%;
  
}
.access_block .circle_link {
    background-image: url(img/access.png);
}
.circle_link > div {
    text-align: center;
    width: 100%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    bottom: 10px;
    font-size: 0.8rem;
}
.circle_link:hover {
    
    filter: brightness(80%);
}
/*ワーケーションTOPメインタイトル*/
.workation_main_title {
    margin-top: 30px;
    width: 80%;
    position: relative;
    text-align: center;
}
/*.workation_main_title img {
    width: 80%;
    max-width: 500px;
    margin-bottom: 10px;
    display: block;
    margin: 0 auto 10px auto;
}*/
.workation_main_title img.workation_title,
.workation_main_title img.workation_title_map,
.workation_main_title img.workation_title_button {
    left: 47%;
    position: absolute;
    top: 38%;
    width: auto;
}
.workation_main_title img.workation_title {
    max-width: 437px;
    transform: translateX(-50%) translateY(-50%);
    width: 80%;
}
.workation_main_title img.workation_title_map {
    max-width: 271px;
    transform: translateX(10%) translateY(-80px);
    width: 50%;
}
.workation_main_title img.workation_title_button {
    max-width: 411px;
    transform: translateX(-50%) translateY(160px);
    max-width: 70%;
}
/*ワーケーションについて*/
/*モーダル*/
.about_modal{
    color: #644700;
/*    display: none;*/
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 100;
}
.about_modal .modal__content {
    /*width: 70%;*/
    background-image: url('../img/illust_modal.png');
    background-repeat: no-repeat;
    background-position: right bottom;
    box-sizing: border-box;
    max-height: 90vh;
    padding: 50px 40px 40px 40px;
    position: relative;
}
.about_modal .modal__content > div {
    max-width: 800px;
    margin: 0 auto;
    
}
.about_modal .modal__content .modal_close {
    position: absolute;
    top: 0px;
    font-size: 1.8rem;
    right: 10px;
    font-weight: bold;
}
.about_modal .modal__content h3 {
    font-family: 'Noto Serif JP', serif;
    font-size: 1.5em;
    margin-bottom: 20px;
}
.about_modal .modal__content .about_text {
/*    font-family: 'Noto Serif JP', serif;*/
    text-align: left;
}
    
    

.workation_main_title .cp_banner {
    bottom: 10px;
    display: flex;
    opacity: 0.9;
    right: 0;
    position: absolute;
}
.workation_main_title .cp_banner a {
    display: inline-block;
}
.workation_main_title .cp_banner a:first-child {
    margin-right: 10px;
}
.workation_main_title .cp_banner a:hover {
    opacity: 1;
}
.workation_main_title .cp_banner img {
    max-height: calc(40vh - 80px);
    /*min-height: 220px;*/
}
.workation_main_title .cp_banner img.sp {
    display: none;
}


/*検索・リンク一覧*/
.workation_link_contents {
    width: 43%;
    min-width: 444px;
/*    max-width:  500px;*/
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.workation_link_block {
    box-sizing: border-box;
    flex-grow: 0;
    flex-shrink: 0;
    height: 20%;
    margin-bottom: 10px;
}
.workation_link_block:last-of-type {
    flex-grow: 1;
    flex-shrink: 1;
    height: 40%;
}
/*検索*/
.search_list {
    display: flex;
    justify-content: space-between;
}
.area_img {
    width: 55%;
    margin-right: 5px;
}
/*各エリア選択*/
.search_block {
   width: 45%; 
}
.search_button {
    text-align: center;
/*    width: 80%;
    margin: 0 auto;*/
}
.search_button div {
    
    margin-bottom: 10px;
    
}
.search_button a {
    text-decoration: none;
    border-radius: 30px;
    background: #fff;
    padding: 5px;
    display: block;
    width: 100%;
}
/*検索ボックス*/
.search_word {
    display: flex;
    align-items: center;
}
.search_word input {
    margin: 0;
    border: none;
    width: 85%;
}
.search_word a {
    width: 15%;
    height: 1.9rem;
    background: #009fe8;
    background-image: url(img/search.png);
    background-repeat: no-repeat;
    background-size: 65% auto;
    background-position: center;
}
/*ボタン用*/
.workation_button {
    background: #fff;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    outline: 1px solid #644700;
    outline-offset: -5px;
    padding: 10px;
    text-align: center;
}
.workation_button:hover,
.search_button a:hover  {
    text-decoration: none;
    filter: brightness(90%);
}
.workation_button div {
    height: 3rem;
    width: 3rem;
    margin: 10px auto;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}
/*ワークスポットを探す*/
.workation_button.workation_search div {
    background-image: url(img/workation_search.png);
}
/*モデルプラン*/
.workation_button.woekation_model_plan div {
    background-image: url(img/woekation_model_plan.png);
}
/*特集記事・イベント情報*/
.workation_button.workation_event div {
    background-image: url(img/workation_event.png);
}
/*ワーケーションプランの予約*/
.workation_button.workation_reserve div {
    background-image: url(img/workation_reserve.png);
}
/*助成金制度*/
.workation_button.workation_support div {
    background-image: url(img/workation_support.png);
}
/*相談窓口*/
.workation_button.workation_inquiry div {
    background-image: url(img/workation_inquiry.png);
}
.workation_button h5 {
    font-weight: 600;
}
.workation_button h5 span {
    display: block;
    font-size: 0.7rem;
}

/*.workation_button > div {
    height: 100%;
    box-sizing: border-box;
    position: relative;
    font-size: 1.2rem;
    padding: 20px;
    border: 1px solid #644700;
}*/
/*.workation_button > div:after {
    position: absolute;
    content: "";
    background-image: url(img/decoration.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 0.8rem;
    height: 0.8rem;
    right: 5px;
    bottom: 5px;
}*/
/*.workation_button div > span {
    position: relative;
}
.workation_button div > span:before {
    position: absolute;
    width: 2rem;
    height: 2rem;
    content: "";
    
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    top: 50%;
    left: -2.5rem;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.workation_button.model_course div > span:before {
    background-image: url(img/model_course.png);
    top: 38%;
}
.workation_button.special_edition div > span:before {
    background-image: url(img/special.png);
    top: 38%;
}*/
.link_flex {
    display: flex;
    justify-content: space-between;
}
.link_flex a {
    width: calc(100%/2 - 4px);
}
.link_flex.link_flex_three a {
    width: calc(100%/3 - 4px);
}
/*お知らせ一覧*/
.news_list {
    background: #fff;
    padding: 10px;
    box-sizing: border-box;
    outline: 1px solid #644700;
    outline-offset: -5px;
}
.news_list h3 span {
    font-weight: normal;
    font-size: 0.9em;
}
.news_list ul {
    overflow-y: scroll;
    height: calc(100%-1em);
}
.news_list ul > li {
    font-size: 0.8em;
    line-height: 1.25;
    margin: 5px 0 0 0;
}
.news_list ul > li:last-of-type {
    margin: 5px 0;
}
.news_list ul > li div:nth-child(1) {
/*    color: #bfbfbf;*/
    font-weight: bold;
}
.news_list ul > li div:nth-child(2) a {
/*    color: #009fe8;*/
}
.news_list a:hover {
    text-decoration: underline;
}

/*お知らせ一覧へ*/
.news_all {
    margin-top: 10px;
    text-align: right;
}
.news_all a {
    display: block;
    font-size: 0.8em;
    position: relative;
    margin-right: 2rem;
}
.news_all a:after {
    position: absolute;
    content: "▶";
    right: -1.5rem;
/*    color: #016c49;*/
}
.news_all a:hover {
    text-decoration: underline;
}



/*助成制度*/
.support-content {
    min-height: calc(100vh - 235px);
    width: 100%;
}
.support-content h3
{
/*    font-family: 'Noto Serif JP', serif;*/
    font-size: 3em;
    margin-bottom: 50px;
    text-align: center;
}
.support-content .buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
}
.support-content .buttons > a {
    align-items: center;
    background-position: center;
    background-size: cover;
    border-radius: 10px;
    box-sizing: border-box;
    color: #fff;
    font-size: 2em;
    font-weight: bolder;
    display: flex;
    height: 300px;
    justify-content: center;
    position: relative;
    text-align: center;
    text-decoration: none;
    width: 48%;
}
.support-content .buttons > a:first-of-type {
    background-image: url('../css/img/background_11r.jpg');
}
.support-content .buttons > a:nth-of-type(2) {
    background-image: url('../css/img/background_02r.jpg');
}
.support-content .buttons > a:before {
    background: url('../img/pattern/pattern-02.png');
    border-radius: 10px;
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    width: 100%;
}
.support-content .buttons > a:hover:before {
    display: none;
}
.support-content .buttons > a span {
    -moz-text-shadow: 0px 0px 7px rgba(0, 0, 0, 0.61);
    -webkit-text-shadow: 0px 0px 7px rgba(0, 0, 0, 0.61);
    -ms-text-shadow: 0px 0px 7px rgba(0, 0, 0, 0.61);
    text-shadow: 0px 0px 7px rgba(0, 0, 0, 0.61);
    position: absolute;
}
.support-content .buttons > a:nth-of-type(2) div {
    align-items: center;
    background: rgba(128,128,128,0.8);
    border-radius: 10px;
    color: #fff;
    display: none;
    height: 100%;
    justify-content: center;
    position: absolute;
    width: 100%;
}
.support-content .buttons > a:nth-of-type(2):hover div {
    display: flex;
}





/* 問い合わせ */
.inquiry-content {
/*    padding: 50px 0;*/
width: 100%;
}
.inquiry-content > h3
{
/*    font-family: 'Noto Serif JP', serif;*/
    font-size: 3em;
    margin-bottom: 50px;
    text-align: center;
}
.inquiry-tag {
    text-align: center;
}
.inquiry-content .tag0{
    display: inline-block;
    font-family: initial;
/*    font-size: 18px;*/
/*    color: #000;*/
}
.inquiry-content .tag1{
    margin-top: 20px;
    font-family: initial;
/*    font-size: 14px;*/
/*    color: #000;*/
}
.inquiry-content .tag2{
    margin: 40px auto 20px;
    display: inline-block;
/*    font-size: 18px;*/
}
.inquiry-content .tag2 > div {
    text-align: left;
}
.inquiry-content .tag2 > div:first-child {
    margin-top: 15px;
}

.inquiry-content form {
    margin: 0 auto;
    padding: 0px 0 50px 0;
    max-width: 450px;
}
form,
.inquiry-content form input[type=text],
.inquiry-content form input[type=submit],
.inquiry-content form select,
.inquiry-content form textarea,
.inquiry-content form button.cancel {
/*    font-size: 20px;*/
    line-height: 1.5;
    padding: 2px 5px;
    box-sizing: border-box;
}
.inquiry-content form input[type=text],
.inquiry-content form textarea {
    width: 100%;
     margin-right: 5px;
     
}
.inquiry-content form textarea {
    min-height: 200px;
   
}
.inquiry-content form .label {
    margin: 30px 0 10px 0;
    font-weight: bold;
}
.inquiry-content form .label span {
    margin: 0 0 0 10px;
    padding: 1px 10px;
    background: #f00;
    color: #fff;
}
.inquiry-content form .flex {
    display: flex;
    justify-content: center;
    align-items: center;
}
.inquiry-content form .form-element {
    margin: 0 0 10px 0;
}
.inquiry-content form .form-element .conf_comment {
    margin: 0 auto;
    display: inline-block;
    text-align: left;
}
.inquiry-content form .buttons {
    margin: 30px 0 10px 0;
}
.inquiry-content form button.cancel,
.inquiry-content form input[type=submit] {
    display: block;
    margin: 0 auto;
    padding: 10px 50px;
    border: 1px solid #b2ac9b;
    border-radius: 5px;
    box-shadow: 0 5px 5px #eee;
    background: #644700;
    color: #fff;
}
.inquiry-content form button.cancel {
    background: #fff;
    color: #644700;
    border: 2px solid #644700;
}

.inquiry-content form button.cancel:hover,
.inquiry-content form input[type=submit]:hover {
    filter: brightness(80%);
}
.inquiry-content h2.notice {
    color: #f00;
}
.inquiry-content form em {
    font-size: 0.8em;
    color: #f00;
}
.inquiry-content h2 {
    text-align: center;
}
/*確認画面*/
.inquiry-confirm {
    text-align: center;
}






/*ワーケーションプランの予約　*/
.plan_contents
{
    width: 100%;
}
.plan_contents > h3
{
/*    font-family: 'Noto Serif JP', serif;*/
    font-size: 3em;
    margin-bottom: 50px;
    text-align: center;
}
.plan_contents .block-result
{
    display: flex;
    flex-wrap: wrap;
}
.plan_contents .block-result > *
{
    border: 1px solid #ccc;
    box-sizing: border-box;
    display: block;
    margin: 0 2% 25px 0;
    padding: 10px;
    position: relative;
    text-decoration: none;
    width: 32%;
}
.plan_contents .block-result > *:nth-of-type(3n)
{
    margin: 0 0 20px 0;
}
.plan_contents .block-result > * h5
{
    line-height: 1.2;
    overflow: hidden;
    margin-bottom: 5px;
    text-overflow: ellipsis;
    white-space: pre;
    word-break: keep-all;
}
.plan_contents .block-result > * .img
{
    background-position: center;
    background-size: cover;
    height: 160px;
    width: 100%;
}
.plan_contents .block-result > * .button
{
    margin-top: 10px;
    text-align: center;
}
.plan_contents .block-result > * .button a
{
    background: #f4ab01;
    border: 2px solid #f4ab01;
    border-radius: 15px;
    box-sizing: border-box;
    color: #fff;
    font-size: 0.8em;
    font-weight: bolder;
    display: inline-block;
    padding: 2px 10px;
}
.plan_contents .block-result > * .button a:hover
{
    background: #fff;
    border: 2px solid #f4ab01;
    color: #f4ab01;
}
.plan_contents .with-coupon
{
    background: #eee;
    border: 3px solid #f4ab01;
}
.plan_contents .with-coupon > h4
{
    background: #f4ab01;
    color: #fff;
    padding: 5px 0;
    text-align: center;
}
.plan_contents .with-coupon > div
{
    padding: 20px 20px 0 20px;
}
.plan_contents .with-coupon .list
{
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 10px 0 0 0;
}
.plan_contents .with-coupon .list li
{
    background: #fff;
    border: 1px #999 solid;
    box-sizing: border-box;
    display: block;
    padding: 10px;
    margin: 0 2% 20px 0;
    width: 32%;
}
.plan_contents .with-coupon .list li:nth-child(3n)
{
    margin: 0 0 20px 0;
}
.plan_contents .with-coupon .list li .photo
{
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    height: 180px;
    margin-bottom: 5px;
    position: relative;
    width: 100%;
}
.plan_contents .with-coupon .list li .title
{
    font-weight: bold;
}
.plan_contents .with-coupon .list li .address,
.plan_contents .with-coupon .list li .phone
{
    font-size: 0.9em;
    line-height: 1.2;
    margin-bottom: 5px;
}
.plan_contents .with-coupon .list li .buttons
{
    display: flex;
    justify-content: space-around;
}
.plan_contents .with-coupon .list li .buttons a
{
    align-items: center;
    border-radius: 5px;
    box-sizing: border-box;
    color: #fff;
    display: flex;
    justify-content: center;
    padding: 2px 5px;
    width: 40%;
}
.plan_contents .with-coupon .list li .buttons a.btn-spot
{
    background: #6fab63;
}
.plan_contents .with-coupon .list li .buttons a.btn-plan
{
    background: #009fe8;
}


/*お知らせ*/
.info_contents {
    width: 100%;
}
.title_hr {
    margin: 10px 0;
}
.info_list_block dl div {
    display: flex;
    justify-content: space-between;
    margin-bottom: 5px;
}
.info_list_block dt {
    width: 10%;
    min-width: 98px;
    font-weight: bold;
}
.info_list_block dd {
    width: 95%;
}
/*お知らせ詳細*/
.info_block {
    margin-bottom: 30px;
} 
.info_block:last-child {
    margin: 0;
}
/*ニュース一覧*/
.info_list {
    border: 1px solid #644700;
    padding: 10px;
}
.info_list ul {
    height: 150px;
    overflow-y: scroll;
}
.info_list ul li div:first-child {
    color: #9d8b5e;
}
