@charset "UTF-8";

/*
 Theme Name: しまね関係人口マッチング・交流サイトしまっちテンプレート
 Version: 1.0
*/

/*==========================================================================
  Common
==========================================================================*/

@font-face {
  font-family: boku2-bold;
  src: url("./assets/fonts/boku2_b.woff") format("woff"),
    url("./assets/fonts/boku2_b.woff2") format("woff2");
}
@font-face {
  font-family: boku2-regular;
  src: url("./assets/fonts/boku2_r.woff2") format("woff2"),
    url("./assets/fonts/boku2_r.woff") format("woff");
}

.f_b {
  font-family: boku2-bold, 游ゴシック, YuGothic, メイリオ, Meiryo, sans-serif,
    Roboto, "Droid Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
  font-weight: bold;
}
.f_r {
  font-family: boku2-regular, 游ゴシック, YuGothic, メイリオ, Meiryo, sans-serif,
    Roboto, "Droid Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
}
.f_montserrat {
  font-family: "Montserrat", 游ゴシック, YuGothic, メイリオ, Meiryo, sans-serif,
    Roboto, "Droid Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
}

body {
  font-family: 游ゴシック, YuGothic, メイリオ, Meiryo, sans-serif, Roboto,
    "Droid Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
  font-size: 16px;
  font-weight: 500;
  color: #000;
}
.clear:after {
  content: "";
  display: block;
  clear: both;
}
a {
  text-decoration: none;
}
a:hover {
  opacity: 0.8;
}
.txt_center {
  text-align: center;
}
.txt_right {
  text-align: right;
}
.page_top {
  position: fixed;
  right: 20px;
  bottom: 30px;
  z-index: 80;
}
.bg_block {
  background: #000;
  color: #fff;
  font-weight: bold;
  padding: 2px 5px;
}
.bold {
  font-weight: bold;
}

*:focus {
  outline: none;
}
/*島根モーダル関連*/
.hide_area {
  display: none;
}
.modaal-close:after,
.modaal-close:before {
  background: #ccc;
}
.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before {
  background: #666;
}
/*モーダル装飾*/
.modaal-content-container {
  border-radius: 10px;
}
.modaal-container {
  border-radius: 10px;
}
.modaal-close {
  position: absolute;
  right: 0px;
  top: -50px;
}
.shimane_info_popup h2 {
  font-size: 24px;
  border-bottom: 5px solid #ff4800;
  padding: 0 5px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  position: relative;
  padding-left: 120px;
}
.shimane_info_ttl {
  display: block;
  margin-right: 3%;
}
.shimane_info_popup h2 .shimane_info_sav_ttl {
  font-size: 18px;
  font-weight: normal;
}
.seibu_box h2 {
  min-height: 85px;
}
.seibu_box h2::before {
  content: "";
  background: url(assets/img/top/shimane_info_seibu-2.png) 0 0 no-repeat;
  background-size: 110px 68px;
  height: 68px;
  width: 110px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -34px;
}
.toubu_box h2 {
  min-height: 105px;
}
.toubu_box h2::before {
  content: "";
  background: url(assets/img/top/shimane_info_toubu-2.png) 0 0 no-repeat;
  background-size: 110px 90px;
  height: 90px;
  width: 110px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -45px;
}
.oki_box h2 {
  min-height: 105px;
}
.oki_box h2::before {
  content: "";
  background: url(assets/img/top/shimane_info_oki-3.png) 0 0 no-repeat;
  background-size: 110px 92px;
  height: 92px;
  width: 110px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -46px;
}
.shimane_info_img {
  display: flex;
  flex-wrap: wrap;
  margin: 0 10px 20px;
}
.shimane_info_main {
  width: 66%;
  margin-right: 2%;
}
.shimane_info_sav {
  width: 31%;
}
.shimane_info_sav figure {
  margin-bottom: 21px;
}
.shimane_info_sav figure:last-child {
  margin-bottom: 0;
}
.shimane_info_desc {
  margin: 0 10px;
}
.shimane_info_desc p:last-child {
  margin-bottom: 0;
}
.shimane_area_more {
  display: flex;
  flex-wrap: wrap;
  max-width: 920px;
  width: 100%;
  margin: 30px auto 0;
}

.shimane_area_btn {
  margin-right: 4%;
  width: 48%;
  border: 1px solid #ddd;
}

.shimane_area_btn:last-child {
  margin-right: 0;
}

.shimane_area_btn a {
  display: block;
}

/** コンテンツ **/
.page_inner {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.section1 {
  background: url(./assets/img/common2/block1_bg.png) 0 0 repeat;
  background-size: auto;
  padding: 50px 0;
}
.section2 {
  background: url(./assets/img/common2/block2_bg.png) 0 0 repeat;
  background-size: auto;
  padding: 50px 0;
  position: relative;
  overflow: hidden;
}
.section2::after {
  content: "";
  background: url(./assets/img/common2/block2_icon3.png) 0 0 no-repeat;
  background-size: 94px 165px;
  height: 165px;
  width: 94px;
  position: absolute;
  right: 70px;
  bottom: 310px;
}
.section3 {
  background: url(./assets/img/common2/block3_bg.png) 0 0 no-repeat;
  background-size: 100%;
  padding: 50px 0;
}
.section4 {
  background: url(./assets/img/common2/block4_bg.png) 0 0 no-repeat;
  background-size: cover;
  padding: 50px 0;
}

/** リンクボタン **/
.btn_link {
  max-width: 420px;
  width: 100%;
  margin: 30px auto 0;
}
.btn_link a {
  display: block;
  text-align: center;
  color: #fff;
  padding: 18px 15px;
  border-radius: 50px;
  font-weight: bold;
  position: relative;
}
.btn_link a::after {
  content: "";
  background: url(./assets/img/common/icon_arrow_white.png) 0 0 no-repeat;
  background-size: 14px 6px;
  height: 6px;
  width: 14px;
  /*display: inline-block;
  vertical-align: middle;
  margin-left: 15px;*/
  margin-top: -3px;
  position: absolute;
  right: 25px;
  top: 50%;
}
.btn_green {
  background: #33dda3;
  border: 1px solid #33dda3;
  transition: all .5s;
}
.btn_green:hover {
  text-decoration: none;
  background: #fff;
  color: #33dda3;
}
.btn_orange {
  background: #ff4900;
  border: 1px solid #ff4900;
  transition: all .5s;
}
.btn_orange:hover {
  text-decoration: none;
  background: #fff;
  color: #ff4900;
}

/** フォームリセット **/
input,
button,
textarea,
select,
submit {
  border: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/**
 * トップページ - ヘッダー
 */
header#header {
  /*background: #f8ceab;*/
  box-shadow: 0 3px 6px rgba(187,187,187, .4);
}
.header_inner > .pc_only > nav {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  padding: 13px 0;
}

.g_navi {
  margin-bottom: 0;
  display: flex;
  justify-content: center;
}

.g_navi > li:not(:last-child) {
  margin-right: 3%;
}

.g_navi a {
  color: #000;
  font-size: 15px;
  font-weight: bold;
  transition: all .5s;
}
.g_navi a:hover {
  color: #f84400;
  text-decoration: none;
}

.g_navi > li > span{
  color: #000;
  font-size: 15px;
  font-weight: bold;
}

.parent_navi{
  position: relative;
}
.parent_navi > ul{
  position: absolute;
  z-index: 30;
  width: 250px;
  left: 50%;
  top: 21px;
  margin-left: -125px;
}
.parent_navi li {
  height: 0;
  overflow: hidden;
  transition: 0.5s;
  margin-right: 0;
}
.parent_navi li a {
  background: #fff;
  display: block;
  text-align: center;
  padding: 10px;
  border: 1px solid #ff5400;
  border-bottom: none;
  color: #ff5400;
  font-weight: bold;
  position: relative;
}
.parent_navi li:last-child a{
  border-bottom: 1px solid #ff5400;
}
.parent_navi:hover > ul::before {
  content: "";
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 15px solid #fff;
  position: relative;
  top: -12px;
  left: 50%;
  margin-left: -15px;
  z-index: 21;
}
.parent_navi:hover > ul::after {
  content: "";
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 15px solid #ff5400;
  position: absolute;
  top: 9px;
  left: 50%;
  margin-left: -15px;
}
.parent_navi:hover > ul > li {
  height: auto;
  overflow: visible;
}
.parent_navi li a:hover {
  opacity: 1;
  text-decoration: none;
  background: #ff5400;
  color: #fff;
}

/** メインビジュアル **/
.main_visual {
  position: relative;
  margin-bottom: 60px;
}

.main_visual::before {
  content: "";
  background: url(./assets/img/common2/bg_icon1.png) left top no-repeat;
  background-size: 127px 369px;
  height: 369px;
  width: 127px;
  position: absolute;
  left: 0;
  top: 0;
}

.main_inner {
  max-width: 1600px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}

.main_head {
  width: 24.4%;
  position: relative;
  margin-right: 3%;
  display: flex;
  flex-wrap: wrap;
  flex-flow: column;
  justify-content: space-between;
}
.logo {
  margin-bottom: 0;
  width: 100%;
  text-align: right;
  margin-top: 20px;
  position: relative;
  z-index: 2;
}
.logo img {
  max-width: 280px;
  width: 100%;
}
.user_nav {
  position: relative;
  z-index: 2;
  width: 16.3%;
}
.main_slide {
  position: relative;
  z-index: 2;
  width: 56.2%;
  display: none;
}
.main_slide.slick-initialized{
  display: block; /*slick-initializedが付与されたら表示*/
}
.slick-slide img {
  width: 100%;
}
.nav_login a {
  background: #ff5400;
  border: 1px solid #ff5400;
  display: block;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.3vw;
  padding: 20px 10px;
  transition: all .5s;
}

.nav_login a:hover{
  background: #fff;
  color: #ff5400;
  text-decoration: none;
}

.nav_register {
  margin: -10px 0 0 -40px;
}

.registration_num_box {
  background: rgba(255, 72, 0, 0.8);
  padding: 18px;
  height: 140px;
  width: 180px;
  margin-right: -12.3%;
  margin-bottom: -40px;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
}

.registration_num_box p {
  color: #fff;
  font-size: 23px;
  text-align: center;
  margin: 0;
  font-weight: bold;
  line-height: 1;
}

.ttl_num {
  font-size: 17px;
  display: block;
  margin-bottom: 10px;
}

.num_count {
  font-size: 44px;
  padding-right: 5px;
  line-height: 1;
}

.main_head::after {
  content: "";
  background: url(./assets/img/common2/bg_icon2.png) 0 0 no-repeat;
  background-size: 553px 275px;
  height: 275px;
  width: 553px;
  position: absolute;
  bottom: -20px;
  right: -240px;
}

/**
 * トップページ - コンテンツ
 */

/** トップページ - しまっちについて **/

.top_about {
  padding-bottom: 60px;
  background: url(./assets/img/common2/block3-2_bg.png) 0 0 no-repeat;
  background-size: 100%;
}

.about_ttl {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  margin-bottom: 50px;
}

.about_ttl h2 {
  margin-bottom: 0;
  font-size: 35px;
  text-align: right;
}

.about_ttl h2 .emphasis::after,
.about_ttl h2 .emphasis::before {
  content: '"';
  font-size: 1.1em;
}

.top_about figure {
  margin: 0 0 50px;
  position: relative;
  text-align: center;
}

/** トップページ - プログラム **/
.ttl_img_h2 {
  text-align: center;
}
.ttl_img_h2 h2 {
  margin-bottom: 0;
  display: inline-block;
  position: relative;
}
.ttl_img_h2 h2::before {
  content: "";
  background: url(./assets/img/common/icon_ttl_decoration.png) 0 0 no-repeat;
  background-size: 39px 23px;
  height: 23px;
  width: 39px;
  position: absolute;
  left: -20px;
  top: 0;
}
.top_program .ttl_img_h2 h2::after {
  content: "";
  background: url(./assets/img/common2/block1_bg_ttl.png) 0 0 no-repeat;
  background-size: 410px 360px;
  height: 360px;
  width: 410px;
  position: absolute;
  left: 0;
  right: 0;
  top: -50px;
  margin: 0 auto;
}

.ttl_img_h2 img {
  position: relative;
  z-index: 2;
}
.top_cnt_head {
  margin-bottom: 40px;
  position: relative;
}

.page_head_txt {
  position: relative;
  z-index: 2;
}

.top_program .top_cnt_head::before {
  content: "";
  background: url(./assets/img/common/block1_icon1.png) 0 0 no-repeat;
  background-size: 286px 92px;
  height: 92px;
  width: 286px;
  position: absolute;
  left: -10px;
  top: 0;
}

.top_program .top_cnt_head::after {
  content: "";
  background: url(./assets/img/common/block1_icon2.png) 0 0 no-repeat;
  background-size: 60px 55px;
  height: 55px;
  width: 60px;
  position: absolute;
  right: 200px;
  bottom: 100px;
}
.top_cnt_head_txt {
  text-align: center;
  position: relative;
  z-index: 2;
  line-height: 1.7;
  font-size: 17px;
  margin: 20px 0 40px;
}
.top_cnt_head_txt p {
  margin: 0;
}

.top_cnt_head_txt p {
  text-align: left;
  display: inline-block;
}

.row_wrap {
  display: flex;
  flex-wrap: wrap;
}

.archive_box {
  width: 30.5%;
  margin-right: 3%;
  position: relative;
  margin-bottom: 50px;
}

.archive_box:nth-child(3n) {
  margin-right: 0;
}

.archive_box a {
  color: #000;
  display: block;
  transition: all .5s;
}
.archive_box a:hover figure {
  overflow: hidden;
}

.archive_box a:hover figure img {
  transform: scale(1.2);
  transition: all .5s;
}


.archive_img_box {
  position: relative;
  margin-bottom: 10px;
}
.tag {
  margin-bottom: 0;
  position: absolute;
  top: -15px;
  left: 20px;
  font-weight: bold;
  font-size: 15px;
  text-shadow: #fff 1px 1px 0px, #fff -1px 1px 0px, #fff 1px -1px 0px,
    #fff -1px -1px 0px;
  padding: 0 5px;
  transform: rotate(-5deg);
  -webkit-transform: rotate(-5deg);
  z-index: 2;
}
.tag_program {
  background: linear-gradient(transparent 55%, rgba(252, 255, 55, 0.8) 55%);
}
.tag_community {
  background: linear-gradient(transparent 55%, rgba(20, 243, 255, 0.8) 55%);
}

.archive_img_box img,
.archive_img_box figure {
  border-radius: 10px 0 10px 0;
}

.archive_cnt .date {
  font-weight: bold;
  font-size: 15px;
  margin-bottom: 0;
  position: relative;
  padding-left: 15px;
}
.archive_cnt .date::before {
  content: "";
  background: url(./assets/img/common/icon_date.png) 0 0 no-repeat;
  background-size: 11px 12px;
  height: 12px;
  width: 11px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -7px;
}

.archive_cnt .area {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0;
  position: relative;
  padding-left: 15px;
}
.archive_cnt .area::before {
  content: "";
  background: url(./assets/img/common/icon_area.png) 0 0 no-repeat;
  background-size: 10px 12px;
  height: 12px;
  width: 10px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -7px;
}
.archive_cnt .area span {
  color: #28926e;
  font-weight: bold;
  font-size: 14px;
}

.archive_cnt .area span:not(:last-child)::after {
  content: "、";
  color: #000;
}

.archive_cnt .area span.tag_online {
  color: #ff4900;
}

.archive_cnt h3 {
  font-size: 17px;
  margin-bottom: 0;
}

.tag_lists {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0;
}

.tag_lists li {
  font-size: 13px;
  color: #666;
  text-decoration: none;
}
.tag_lists li:not(:last-child)::after {
  content: ",";
  padding-right: 5px;
}

/** トップページ - コミュニティ **/
.top_community .top_cnt_head::before {
  content: "";
  background: url(./assets/img/common/block2_icon1.png) 0 0 no-repeat;
  background-size: 157px 82px;
  height: 82px;
  width: 157px;
  position: absolute;
  left: -110px;
  top: 0;
}

.top_community .top_cnt_head::after {
  content: "";
  background: url(./assets/img/common/block2_icon2.png) 0 0 no-repeat;
  background-size: 50px;
  height: 50px;
  width: 50px;
  position: absolute;
  right: 280px;
  top: 30px;
}

/** トップページ - 活動レポート **/
.top_report .top_cnt_head::after {
  content: "";
  background: url(./assets/img/common/block3_icon1.png) 0 0 no-repeat;
  background-size: 100px 33px;
  height: 33px;
  width: 100px;
  position: absolute;
  right: 200px;
  top: 45px;
}
.top_report .ttl_img_h2 {
  margin-bottom: 10px;
}
.top_report .ttl_img_h2 h2::before {
  left: -70px;
  top: 30px;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
}
.report_list_box {
  width: 49%;
  margin-right: 2%;
  margin-bottom: 40px;
  position: relative;
}

.report_list_box:nth-child(2n) {
  margin-right: 0;
}

.report_list_box a{
  transition: all .5s;
}

.report_list_box a:hover .img_scale{
  overflow: hidden;
  display: block;
}

.report_list_box a:hover .img_scale img {
  transform: scale(1.2);
  transition: all .5s;
}


.report_list_img {
  margin: 0;
  position: relative;
}

.report_list_img .date {
  position: absolute;
  left: 10px;
  top: 10px;
  color: #fff;
  font-size: 27px;
  font-weight: 900;
  margin: 0;
  letter-spacing: 1px;
  z-index: 10;
  text-shadow: 0 0 10px #000;
}
.report_list_wrap .report_list_img .date {
  font-size: 22px;
}
.report_list_img figcaption {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(255, 255, 255, 0.8);
  display: block;
  padding: 15px;
  color: #000;
  font-size: 15px;
}

.report_list_img img{
  width: 100%;
}

/** トップページ - お知らせ **/
.top_info .top_cnt_head {
  margin-bottom: 25px;
}
.top_info .top_cnt_head::before {
  content: "";
  background: url(./assets/img/common/block4_icon1.png) 0 0 no-repeat;
  background-size: 66px 51px;
  height: 51px;
  width: 66px;
  position: absolute;
  left: 410px;
  top: 20px;
}
.top_info .top_cnt_head::after {
  content: "";
  background: url(./assets/img/common/block4_icon2.png) 0 0 no-repeat;
  background-size: 38px 41px;
  height: 41px;
  width: 38px;
  position: absolute;
  right: 465px;
  top: 30px;
}
.top_info .ttl_img_h2 h2::before {
  left: -70px;
  top: 30px;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
}
.top_info .page_inner {
  max-width: 1460px;
}
.info_lists {
  padding: 0 30px;
  justify-content: center;
}
.info_list_box {
  width: 30.6%;
  margin-right: 4%;
}

.info_list_box:last-child {
  margin-right: 0;
}

.info_list_box a {
  color: #000;
}

.news_img_box {
  margin: 0;
  text-align: center;
}

.info_list_box a{
  transition: all .5s;
}

.info_list_box a:hover .news_img_box{
  overflow: hidden;
}

.info_list_box a:hover .news_img_box img {
  transform: scale(1.2);
  transition: all .5s;
}

.news_archive_text {
  margin-top: 10px;
}

.news_archive_text > time {
  font-size: 15px;
  font-weight: bold;
}

.news_archive_ttl {
  margin-top: 0;
  font-size: 15px;
  color: #000;
  text-align: left;
}
.top_info .btn_link {
  margin-bottom: 0;
}

/** トップページ - 島根について **/
.top_shimanemap {
  margin: 70px 0;
}
.shimane_map_wrap {
  background: url(./assets/img/common/bg_shimane_map.png) 0 0 no-repeat;
  background-size: 100%;
  position: relative;
}
.shimane_desc {
  position: absolute;
  left: 100px;
  top: 110px;
}
.shimane_desc h2 {
  font-size: 35px;
  color: #ff4800;
  margin-bottom: 5px;
  letter-spacing: 2px;
}
.shimane_desc p {
  margin-bottom: 0;
  line-height: 1.8;
  font-size: 15px;
}
.img_shimane_map {
  text-align: center;
  padding-top: 40px;
  padding-left: 70px;
}

/** トップページ - キャッチコピー **/
.top_catchcopy {
  background: url(./assets/img/top/f_bg.jpg) center bottom no-repeat;
  background-size: auto 430px;
}
.top_catchcopy_text {
  max-width: 1080px;
  margin: 0 auto;
  text-align: center;
  min-height: 340px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.top_catchcopy_text h2 {
  font-size: 25px;
  color: #fff;
  margin: 0;
  padding: 30px 10px;
}

/** トップページ - バナー掲載 **/
.top_bnr_area {
  margin: 50px 0 30px;
}
.top_bnr_lists {
  margin: 0 auto;
  max-width: 1080px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  row-gap: 20px;
}

.link1 img {
  width: 240px;
}
.link2 img {
  width: 190px;
}
.link3 img {
  width: 220px;
}
.link4 img {
  width: 210px;
}
.link5 img {
  width: 155px;
}
.link6 img,
.link9 img {
  width: 95px;
}
.link7 img {
  width: 230px;
}

.top_bnr_lists li:not(:last-child) {
  margin-right: 6%;
}
.bnr_link_text {
  margin-bottom: 0;
  text-align: center;
  margin-top: 20px;
}

.bnr_link_text a {
  font-size: 15px;
  color: #777676;
  text-decoration: underline;
}
.bnr_link_text a:hover{
  text-decoration: none;
}

/**
* フッター
*/
footer#footer {
  padding-top: 30px;
  background: url(./assets/img/common/block3_bg.png) 0 0 no-repeat;
  background-size: 100%;
  padding-bottom: 50px;
}
.footer_inner {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
.f_logo {
  max-width: 300px;
  margin: 0 auto 40px;
  width: 100%;
}
.f_nav {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 20px;
}
.f_nav > li {
  font-size: 14px;
  margin-right: 3%;
}
.f_nav > li:last-child {
  margin-right: 0;
}
.f_nav > li > a {
  color: #000;
}
.f_nav .parent_navi:hover > ul::before{
  left: 0;
  margin-left: 0;
}
.f_nav .parent_navi:hover > ul::after{
  top: 6px;
  margin-left: -15px;
}

.copyright {
  margin: 0;
  color: #666;
}
.powered-logo {
  max-width: 500px;
  width: 100%;
  margin: 0 auto;
}

.footer-address > div {
  display: flex;
  flex-wrap: wrap;
}

.footer-address > div > ul {
  width: 33%;
  border-right: 1px solid #bbb;
  padding: 0 10px;
}

.footer-address > div > ul:last-child {
  border-right: none;
}

.footer-address > div > ul li:first-child {
  text-align: center;
  font-weight: bold;
}

.footer-address {
  margin-top: 40px;
}

/**
* 下層ページ
*/
.page_header {
  position: relative;
  z-index: 3;
}
.page_header .header_inner > div.pc_only {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.h_logo {
  width: 16%;
  margin-right: 2%;
  padding: 10px 0 13px 30px;
}
.h_logo .logo {
  margin: 0;
}
.page_header .pc_only nav {
  max-width: none;
  padding: 23px 0;
  width: 67%;
}
.h_login_btn_list {
  margin-bottom: 0;
  width: 15%;
}
.btn_login a {
  display: block;
  background: #f84400;
  border: 3px solid #f84400;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 10px 0;
  font-size: 20px;
  transition: all .5s;
}
.not_login_btn a{
  padding: 23px 0;
}

.btn_login a:hover {
  background: #fff;
  color: #f84400;
  text-decoration: none;
}

.mypage_link_text {
  margin-bottom: 0;
  font-size: 22px;
  position: relative;
}

.login_tab {
  font-size: 16px;
  display: block;
}

.mypage_link_text::before{
  content: '';
  background: url(assets/img/common/icon_mypage.png) 0 0 no-repeat;
  background-size: 25px;
  height: 25px;
  width: 25px;
  display: inline-block;
  vertical-align: middle;
  margin-top: -5px;
  margin-right: 10px;
}

.btn_login a:hover .mypage_link_text::before{
  content: '';
  background: url(assets/img/common/icon_mypage_on.png) 0 0 no-repeat;
  background-size: 25px;
}

.top_mypage_btn .mypage_link_text::before {
  background-size: 27px;
}
.top_mypage_btn a:hover .mypage_link_text::before{
  background: url(assets/img/common/icon_mypage_on.png) 0 0 no-repeat;
  background-size: 27px;
}

.ttl_g_parts1,
.ttl_r_parts1 {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
}

.ttl_g_parts1 h2,
.ttl_r_parts1 h2 {
  font-size: 30px;
  font-weight: bold;
  position: relative;
  height: 84px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.ttl_g_parts1 h2 span,
.ttl_r_parts1 h2 span {
  position: relative;
  z-index: 2;
}
.ttl_g_parts1 h2::after {
  content: "";
  background: url(./assets/img/common/parts_ttl_green.png) 0 0 no-repeat;
  background-size: 268px 84px;
  height: 84px;
  width: 268px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: 0 auto;
}
.ttl_r_parts1 h2::after {
  content: "";
  background: url(./assets/img/common/parts_ttl_orange.png) 0 0 no-repeat;
  background-size: 268px 84px;
  height: 84px;
  width: 268px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: 0 auto;
}
.archive_wrap .ttl_r_parts1 {
  margin-bottom: 50px;
}

/** 会員申し込み **/
.form_contents dl,
.form_contents dd {
  margin-bottom: 0;
}
.address_block dl:first-child {
  padding-top: 0;
}

.address_block select {
  width: 25%;
}

.cont_box:last-child {
  border-bottom: none;
}
.self_registration_box {
  background: url(assets/img/common/block1_bg.png) 0 0 repeat;
  background-size: auto;
  padding: 30px;
  margin: 30px 0 0;
  border-radius: 10px;
}
.self_registration_box > h3 {
  text-align: center;
  font-size: 22px;
  margin-bottom: 20px;
  color: #ff5539;
}
.self_registration_text {
  font-size: 17px;
}
.self_registration_btn {
  display: flex;
  flex-wrap: wrap;
  max-width: 700px;
  margin: 40px auto 0;
  width: 100%;
}
.cont_box {
  display: flex;
  flex-wrap: wrap;
  padding: 20px 0;
  border-bottom: 1px solid #ddd !important;
  margin: 0;
}

.cont_box dt {
  width: 25%;
  margin-right: 1%;
}

.cont_box dd {
  width: 74%;
}

.require {
  display: inline-block;
  width: 40px;
  margin-right: 3px;
  padding: 3px 0;
  margin-left: 10px;
  text-align: center;
  color: #fff;
  font-size: 14px;
  background: #ff4545;
}

.name_box {
  display: flex;
}

.name_label {
  margin-right: 16px;
}
.address_block dl {
  display: flex;
  padding: 10px 0;
}
.address_block p {
  margin-bottom: 0;
}

.zip_box p {
  margin-bottom: 5px;
}

.cont_note {
  font-size: 15px;
}

.address_box input[type="text"] {
  width: 90%;
}
.password_box {
  border-bottom: none!important;/*変更*/
  padding-bottom: 0;
}

.password_confirm_box {
  padding-bottom: 0;
}

.password_strength span {
  display: block;
}

.password_hint {
  font-size: 15px;
  margin-bottom: 0;
}
.img_area_map {
  margin-bottom: 30px;
}
.name_box {
  margin-bottom: 20px;
}
.dantai_details_block dl {
  display: flex;
  padding: 10px 0;
}

.dantai_link_block dl {
  display: flex;
  padding: 10px 0;
}
.password_confirm_box {
  padding-bottom: 0;
  border-bottom: none;
}
.self_registration_btn .btn_box {
  width: 48.5%;
}

.self_registration_btn .btn_box:first-child {
  margin-right: 3%;
}
.self_registration_btn .btn_box:last-child a {
  background: #34dda4;
  border: 2px solid #34dda4;
  display: block;
  color: #333;
  text-align: center;
  padding: 15px;
  border-radius: 50px;
  font-weight: bold;
  position: relative;
}

.self_registration_btn .btn_box:last-child a:hover {
  background: #fff;
  color: #34dda4;
  opacity: 1;
  text-decoration: none;
}

.self_registration_btn .btn_box:last-child a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -7px;
  width: 10px;
  height: 10px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.self_registration_btn .btn_box:last-child a:hover::after {
  border-top: 2px solid #34dda4;
  border-right: 2px solid #34dda4;
}
.self_registration_box .ttl_h3 {
  text-align: center;
  font-size: 22px;
  color: #f50;
  font-weight: bold;
  margin-bottom: 20px;
}
.form_contents {
  margin-bottom: 100px;
}
.search_box .form_contents {
  margin-bottom: 0;
}
.shimanetouroku_desc {
  margin-top: 50px;
  text-align: center;
}
.shimanetouroku_cnts > p {
  margin-bottom: 0;
  text-align: center;
  font-size: 20px;
  margin-top: 30px;
}

.shimanetouroku_desc > h3 {
  text-align: center;
  font-size: 18px;
  position: relative;
  border-bottom: 1px solid #000;
  display: inline-block;
  margin-bottom: 0;
  cursor: pointer;
}
.shimanetouroku_desc > h3::after {
  content: "";
  background: url(assets/img/common/icon_toggl_off.png) 0 0 no-repeat;
  background-size: 15px;
  height: 15px;
  width: 15px;
  position: absolute;
  right: -30px;
  top: 50%;
  margin-top: -8px;
}
.shimanetouroku_desc > h3:hover {
  border-bottom: 1px solid transparent;
}
.shimanetouroku_desc > h3.open::after {
  content: "";
  background: url(assets/img/common/icon_toggl_on.png) 0 0 no-repeat;
  background-size: 15px;
}
.shimanetouroku_desc_text {
  margin-bottom: 20px;
}
.shimanetouroku_desc_text > h3 {
  text-shadow: 0 0 5px white;
  padding: 0.3em 0.5em;
  background: -webkit-repeating-linear-gradient(
    -45deg,
    #92e0c6,
    #92e0c6 3px,
    #dfffe9 3px,
    #dfffe9 7px
  );
  background: repeating-linear-gradient(
    -45deg,
    #92e0c6,
    #92e0c6 3px,
    #dfffe9 3px,
    #dfffe9 7px
  );
  margin-bottom: 10px;
}
.shimanetouroku_cnts {
  padding-top: 30px;
  text-align: left;
  display: none;
}

.shimanetouroku_desc_text > p {
  margin-bottom: 0;
  padding: 0 10px;
}
.cont_file_img {
  max-width: 150px;
  width: 100%;
}

.cont_file_img img {
  width: 100%;
  height: auto;
  border: 1px solid #e8e8e8;
}
.optional_input_content {
  margin-top: 70px;
}
/** 内容確認ページ **/
.confirm_check_list {
  margin-bottom: 0;
}
.confirm_check_list li {
  position: relative;
  padding-left: 15px;
  margin-bottom: 5px;
}
.confirm_check_list li::before {
  content: "";
  display: block;
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 10px;
  height: 5px;
  border-left: 2px solid #25af01;
  border-bottom: 2px solid #25af01;
  transform: rotate(-45deg);
}

.confirm_check_list li:last-child {
  margin-bottom: 0;
}
.confirm_btn {
  display: flex;
  flex-wrap: wrap;
  max-width: 650px;
  width: 100%;
  margin: 60px auto 0;
}

.confirm_btn .back_btn,
.confirm_btn .submit_btn {
  width: 47%;
}
.confirm_btn .back_btn {
  margin-right: 6%;
}
.back_btn {
  background: #bbb;
  border: 2px solid #bbb;
  font-weight: bold;
  border-radius: 50px;
  cursor: pointer;
  padding: 15px;
}
.back_btn:hover {
  background: #fff;
}

/** 登録完了 **/
.complete_wrap {
  margin-bottom: 100px;
}
.complete_text_box {
  text-align: center;
  margin-top: 30px;
}

.complete_text_box > p {
  font-size: 20px;
}

.complete_wrap .btn_x2 {
  display: flex;
  flex-wrap: wrap;
  max-width: 650px;
  margin: 100px auto 0;
}

.complete_wrap .btn_x2 a {
  display: block;
}

.complete_wrap .btn_x2 > div {
  width: 47%;
}

.complete_wrap .btn_x2 > div:first-child {
  margin-right: 5%;
}
.back_link_box {
  margin-top: 80px;
}
.back_link_btn {
  max-width: 420px;
  width: 100%;
  margin: 0 auto;
}
.back_link_btn a {
  display: block;
  background: #32cb97;
  border: 2px solid #32cb97;
  color: #fff;
  padding: 15px;
  border-radius: 50px;
  font-weight: bold;
  position: relative;
  text-align: center;
}
.back_link_btn a::before {
  content: "";
  background: url(assets/img/common/icon_arrow_white.png) 0 0 no-repeat;
  background-size: 14px 6px;
  position: absolute;
  top: 50%;
  left: 20px;
  height: 6px;
  width: 14px;
  margin-top: -3px;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.back_link_btn a:hover {
  background: #fff;
  color: #32cb97;
  text-decoration: none;
  opacity: 1;
}
.login_btn a {
  background: #f84400;
  border: 2px solid #f84400;
  color: #fff;
  font-weight: bold;
  padding: 15px;
  border-radius: 50px;
  width: 100%;
  position: relative;
}

.login_btn a::after {
  content: "";
  background: url(assets/img/common/icon_arrow_white.png) 0 0 no-repeat;
  background-size: 14px 6px;
  position: absolute;
  top: 50%;
  right: 20px;
  height: 6px;
  width: 14px;
  margin-top: -3px;
}

.login_btn a:hover {
  background: #fff;
  color: #ff5539;
  text-decoration: none;
  opacity: 1;
}

/** マイページ **/
.mypage_navi {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 60px;
}

.mypage_navi_box {
  width: 18.4%;
  margin-right: 2%;
}

.mypage_navi_box:nth-child(5n),
.navi_dantai .mypage_navi_box:nth-child(3n) {
  margin-right: 0;
}

.navi_dantai .mypage_navi_box {
  width: 32%;
}

.mypage_navi_box a {
  display: block;
  text-align: center;
  color: #f84400;
  font-weight: bold;
  padding: 13px;
  border-radius: 10px;
  position: relative;
  font-size: 15px;
  background: #fff;
  border: 2px solid #f84400;
  transition: all .5s;
}
.mypage_navi_box a:hover {
  text-decoration: none;
  opacity: 1;
}
.mypage_navi_box a:hover,
.mypage_navi_box.active a {
  background: #f84400;
  border: 2px solid #f84400;
  color: #fff;
}
.quit_text {
  width: 100%;
  margin: 15px 0 0;
  text-align: right;
  font-size: 15px;
}
.quit_text a {
  color: #888;
  position: relative;
  padding-right: 10px;
}
.quit_text a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 6px;
  height: 6px;
  border-top: 1px solid #888;
  border-right: 1px solid #888;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-top: -4px;
}
.request_btn_x2 .btn_box a::after {
  content: "";
  background: url(assets/img/common/icon_arrow_white.png) 0 0 no-repeat;
  background-size: 14px 6px;
  height: 6px;
  width: 14px;
  position: absolute;
  right: 15px;
  top: 50%;
  margin-top: -3px;
}
.sav_ttl {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 30px;
}
.sav_ttl p {
  margin-bottom: 0;
}

/** マイページ - 活動レポート掲載依頼 **/
.mypage_request_wrap {
  margin-top: 50px;
  margin-bottom: 50px;
}
.request_program_wrap .page_inner {
  border-bottom: 1px solid #bbb;
  padding-bottom: 50px;
}

.request_btn_x2 {
  display: flex;
  flex-wrap: wrap;
  max-width: 700px;
  width: 100%;
  margin: 0 auto;
  justify-content: center;
  margin-bottom: 15px;
}

.request_btn_x2 .btn_box {
  width: 47%;
  margin-right: 5%;
}

.request_btn_x2 .btn_box:last-child {
  margin-right: 0;
}

.request_btn_x2 .btn_box a {
  display: block;
  width: 100%;
  color: #fff;
  text-align: center;
  font-weight: bold;
  padding: 15px;
  border-radius: 50px;
  position: relative;
}

.mypage_request_wrap .page_inner > p.note_text {
  margin-bottom: 0;
  text-align: center;
  font-weight: bold;
  font-size: 16px;
}

.mypage_request_wrap .page_inner > p {
  margin-bottom: 30px;
  text-align: center;
}
.request_btn {
  max-width: 420px;
  width: 100%;
  margin: 0 auto;
}

.request_btn a {
  display: block;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  padding: 15px;
  border-radius: 50px;
}
.request_img_form {
  margin-bottom: 0;
  margin-top: 30px;
}
.request_not_img_form {
  margin-bottom: 10px;
}
.request_not_account {
  margin-top: 20px;
  text-align: center;
}

.request_not_account > p {
  margin-bottom: 5px;
  font-size: 16px;
}
/*.request_desc_block {
  margin-bottom: 20px;
  text-align: center;
  max-width: 840px;
  width: 100%;
  margin: 0 auto;
}*/

.request_desc_block .sav_ttl {
  margin-bottom: 10px;
}

.google_register_text {
  margin-top: 10px;
  text-align: center;
  margin-bottom: 50px;
}

.request_desc_block p {
  margin-bottom: 0;
}

.request_desc_inner {
  background: url(assets/img/common/block1_bg.png) 0 0 repeat;
  padding: 30px 30px 30px 45px;
}
.request_program_wrap .request_desc_inner {
  background: #f7e9dd;
}

.request_report_wrap .request_desc_inner {
  background: #ddf7dd;
}

.google_register_text .note_text {
  margin-bottom: 0;
  display: inline-block;
}

.google_register {
  display: inline-block;
  position: relative;
  color: #000;
  font-weight: bold;
  border-bottom: 1px solid #000;
}

.google_register::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -15px;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.google_register:hover {
  color: #000;
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.request_not_account a {
  color: #000;
  border-bottom: 1px solid;
  font-weight: bold;
}
.request_not_account a:hover {
  text-decoration: none;
  color: #000;
  border-bottom: none;
}
.request_desc_block .nubmer_list {
  margin-bottom: 0;
}

.request_desc_block .nubmer_list li {
  text-align: left;
  margin-bottom: 10px;
}
.request_desc_block .nubmer_list li:last-child {
  margin-bottom: 0;
}

/** マイページ - 申込プログラム一覧 **/
.mypage_programlist_wrap,
.mypage_favoritelist_wrap {
  margin-bottom: 100px;
}
.my_program_list_box,
.my_favorite_list_box {
  border-bottom: 1px dashed #bbb;
}
.my_program_list_box a,
.my_favorite_list_box a {
  color: #000;
  display: block;
  padding: 20px 40px 20px 10px;
  border-radius: 5px;
  position: relative;
}
.my_program_list_box h2,
.my_favorite_list_box h2 {
  font-size: 18px;
  margin-bottom: 5px;
}

.my_program_time,
.my_favorite_time {
  margin-bottom: 0;
  font-size: 15px;
}
.my_program_list_box a:hover,
.my_favorite_list_box a:hover {
  text-decoration: none;
  background: #ffebdb;
}
.my_program_list_box a:hover h2,
.my_favorite_list_box a:hover h2 {
  color: #f84400;
}

.my_program_list_box a::after,
.my_favorite_list_box a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/** お気に入り一覧 **/
.my_favorite_list_box {
  padding: 25px 0;
}
.favorite_tag {
  margin-bottom: 0;
  display: inline-block;
  font-weight: bold;
  padding: 5px 20px;
}
.favorite_program {
  background: #f8ec5b;
}
.my_favorite_list_box a {
  padding: 10px 40px 10px 10px;
}

.btn_delete {
  display: block;
  background: #aaa;
  padding: 5px 20px;
  font-size: 14px;
  margin: 0 10px;
  color: #fff;
  cursor: pointer;
}
.favorite_community {
  background: #2adbd5;
}
.mail_action_btn {
  display: flex;
  flex-wrap: wrap;
  max-width: 650px;
  width: 100%;
  margin-top: 10px;
}

.btn_box:first-child {
  margin-right: 5%;
}

.btn_box {
  width: 47.5%;
}
.btn_mail input[type="submit"],
.btn_mail a {
  display: block;
  background: #00ff9e;
  border: 2px solid #00ff9e;
  padding: 8px;
  text-align: center;
  color: #000;
  font-weight: bold;
  border-radius: 50px;
  width: 100%;
  cursor: pointer;
}

.btn_all_mail input[type="submit"],
.btn_all_mail a {
  display: block;
  background: #f84400;
  border: 2px solid #f84400;
  padding: 8px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  border-radius: 50px;
  width: 100%;
  cursor: pointer;
}

/** プログラム・コミュニティ詳細ページ **/
.single_recruitin_cnts {
  margin-bottom: 50px;
}
.single_recruitin_cnts.section_tmp3 {
  margin-bottom: 70px;
}
.page_main {
  position: relative;
  overflow-x: hidden;
}
.page_main::before {
  content: "";
  background: url(assets/img/common/icon_page_head1.png) 0 0 no-repeat;
  background-size: 182px 325px;
  height: 325px;
  width: 182px;
  position: absolute;
  left: 0;
  top: 0;
}
.page_main::after {
  content: "";
  background: url(assets/img/common/icon_page_head3.png) 0 0 no-repeat;
  background-size: 505px 273px;
  height: 273px;
  width: 505px;
  position: absolute;
  right: -70px;
  top: -55px;
}
.page_head_wrap {
  padding-top: 75px;
  position: relative;
  margin-bottom: 60px;
  z-index: 2;
}

.page_ttl_box {
  margin-bottom: 0;
  position: relative;
}

.page_ttl_box .page_ttl {
  margin-bottom: 0;
  font-size: 26px;
  font-weight: bold;
  position: relative;
  display: inline-block;
}

.breadcrumb {
  font-size: 14px;
  margin-bottom: 40px;
}

.breadcrumb a {
  color: #000;
}

.page_cnts_head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  margin-bottom: 35px;
}

.conts_head_l {
  width: 84%;
  margin-right: 2%;
}

.conts_head_r {
  width: 14%;
}

.ulike_btn {
  text-align: center;
}

.ulike_sav_text {
  margin-bottom: 0;
  font-size: 13px;
  font-weight: normal;
  margin-top: 10px;
}

.cnt_ttl_box {
  margin-bottom: 5px;
}

.cnt_ttl_box .cnt_ttl {
  margin-bottom: 0;
  font-size: 32px;
}

.conts_head_detail {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.period_box {
  font-size: 17px;
  font-weight: bold;
  width: 58%;
  margin-right: 1%;
}

.period_box span {
  color: #ff4800;
}

.share_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  width: 38%;
}

.share_box dl {
  margin-bottom: 0;
  display: flex;
  flex-wrap: wrap;
  font-size: 15px;
  font-weight: normal;
  align-items: center;
}

.share_box dl dt {
  font-weight: normal;
}

.share_box dl dd {
  margin-bottom: 0;
}

.share_list {
  margin-right: 5%;
  width: 52%;
}

.icon_comment {
  position: relative;
  padding-right: 23px;
}

.icon_comment::before {
  content: "";
  background: url(assets/img/common/icon_comment.png) 0 0 no-repeat;
  background-size: 17px;
  height: 17px;
  width: 17px;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -8px;
}
.comment_count dd span {
  font-size: 20px;
  color: #ff4800;
  font-weight: bold;
}

.share_list dt {
  margin-right: 5%;
  width: 45%;
}

.share_list dd span:not(:last-child) {
  margin-right: 3%;
}

.share_list dd {
  width: 50%;
}

.page_ttl_box .page_ttl::after {
  content: "";
  background: url(assets/img/common/icon_ttl_decoration.png) 0 0 no-repeat;
  background-size: 39px 23px;
  height: 23px;
  width: 39px;
  position: absolute;
  right: -50px;
  top: -10px;
}
.page_ttl_box::before {
  content: "";
  background: url(assets/img/common/icon_page_head2.png) 0 0 no-repeat;
  background-size: 356px 104px;
  height: 104px;
  width: 356px;
  position: absolute;
  left: -60px;
  top: -120px;
}
.recruiting_detail {
  background: url(assets/img/common/block1_bg.png) 0 0 repeat;
  background-size: auto;
  padding: 40px;
}

.recruiting_head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.recruiting_ttl .ttl_h2 {
  font-size: 21px;
  font-weight: bold;
  position: relative;
  padding-left: 35px;
  margin-bottom: 0;
}

.recruiting_ttl .ttl_h2::before {
  content: "";
  background: url(assets/img/common/block1_icon2.png) 0 0 no-repeat;
  background-size: 27px 24px;
  height: 24px;
  width: 27px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -13px;
}
.detail_wrap .recruiting_ttl .ttl_h2::before {
  background: url(assets/img/common/icon_single_detaile.png) 0 0 no-repeat;
  background-size: 24px;
  height: 24px;
  width: 24px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -13px;
}

.recruiting_map .recruiting_ttl .ttl_h2::before {
  background: url(assets/img/common/icon_access.png) 0 0 no-repeat;
  background-size: 19px 24px;
  height: 24px;
  width: 19px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -13px;
}

.recruiting_map .recruiting_ttl .ttl_h2 {
  padding-left: 30px;
}

.owner_detail .recruiting_ttl .ttl_h2::before {
  background: url(assets/img/common/icon_owner.png) 0 0 no-repeat;
  background-size: 21px 24px;
  height: 24px;
  width: 21px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -13px;
}

.keyword_wrap .recruiting_ttl .ttl_h2::before {
  content: "";
  background: url(assets/img/common/icon_keyword.png) 0 0 no-repeat;
  background-size: 25px 28px;
  height: 28px;
  width: 25px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -18px;
}

.favorite_btn .wishlist {
  width: 100%;
  display: block;
  padding: 7px;
  font-weight: bold;
  font-size: 15px;
  border-radius: 50px;
  cursor: pointer;
}

.favorite_btn .wishlist.active{
  background: #fff;
  color: #ff4800;
}
.favorite_btn .wishlist.active:hover {
  color: #fff;
  background: #ff4800;
}

.favorite_btn .wishlist{
  background: #ff4800;
  color: #fff;
}
.favorite_btn .wishlist:hover{
  background: #fff;
  color: #ff4800;
}

.favorite_btn {
  max-width: 340px;
  width: 100%;
}

.recruiting_cnts dl {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #b8b8b8;
  margin-bottom: 0;
}

.recruiting_cnts dl dt {
  width: 18%;
  margin-right: 2%;
  font-size: 15px;
  padding: 10px 20px;
}
.recruiting_cnts dl dd {
  margin-bottom: 0;
  width: 80%;
  font-size: 15px;
  padding: 10px;
}
.recruiting_cnts dl:last-child {
  margin-bottom: 0;
}

.page_head_wrap .recruiting_cnts dl dt {
  display: flex;
  align-items: center;
}
.owner_detail .recruiting_cnts dl dt {
  padding: 10px 20px;
  width: 21%;
}
.owner_detail .recruiting_cnts dl dd {
  width: 77%;
}
.program_detail .recruiting_cnts dl dt {
  width: 24%;
  padding: 10px 5px;
}
.program_detail .recruiting_cnts dl dd {
  width: 74%;
}

.recruiting_cnts a {
  color: #000;
  border-bottom: 1px solid #000;
}
.recruiting_cnts a:hover {
  text-decoration: none;
  border-bottom: none;
}

.area_lists {
  margin-bottom: 0;
  display: flex;
  flex-wrap: wrap;
}

.area_lists li:not(:last-child)::after {
  content: "、";
}

.area_lists li span:not(.tag_online):not(.tag_other) {
  border-bottom: 1px solid #000;
}
.tag_online {
  font-weight: bold;
  color: #ff4800;
}

.page_main figure {
  margin: 0;
}

.page_main figure img {
  width: 100%;
}

.single_head_cnts > figure{
  text-align: center;
  background: #f7e9dd;
}

.single_head_cnts > figure > img{
  width: auto;
  max-width: 100%;
}

.request_btn_lists {
  max-width: 640px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}

.request_btn_lists .btn_box {
  width: 50%;
  margin: 0;
}

.request_btn_lists .btn_box a {
  display: block;
  text-align: center;
  color: #fff;
  font-weight: bold;
  padding: 20px;
  position: relative;
}

.request_btn_lists .btn_box a::after {
  content: "";
  background: url(assets/img/common/icon_arrow_white.png) 0 0 no-repeat;
  background-size: 14px 6px;
  height: 6px;
  width: 14px;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -3px;
}

.request_btn_lists .btn_box a.btn_orange:hover{
  color: #ff4900;
}

.request_btn_lists .btn_box a.btn_green:hover{
  color: #33dda3;
}

.request_btn_lists .btn_box:nth-child(1) a {
  border-radius: 50px 0 0 50px;
}

.request_btn_lists .btn_box:nth-child(2) a {
  border-radius: 0 50px 50px 0;
}

.sav_text {
  margin: 15px 0 0;
  text-align: center;
  font-weight: bold;
  font-size: 15px;
}

.recruiting_detail_cnts {
  margin-bottom: 90px;
}

.recruiting_h2 {
  position: relative;
  margin-bottom: 30px;
}
.recruiting_h2::after {
  content: "";
  background: url(assets/img/common/bg_cnt_ttl.png) 0 0 no-repeat;
  background-size: 240px 69px;
  height: 70px;
  width: 240px;
  position: absolute;
  left: -60px;
  top: 50%;
  margin-top: -35px;
}

.recruiting_h2 h2 {
  margin-bottom: 0;
  font-size: 27px;
  position: relative;
  z-index: 2;
  margin: 0;
}

.recruiting_h3 {
  margin-bottom: 20px;
}

.recruiting_h3 h3 {
  border-bottom: solid 4px #a0d6b2;
  position: relative;
  padding: 0 0 5px;
  font-size: 22px;
  color: #093;
  margin-bottom: 10px;
}

.recruiting_h3 h3::after {
  content: "";
  position: absolute;
  display: block;
  border-bottom: solid 4px #009933;
  bottom: -4px;
  width: 15%;
}

.single_recruitin_cnts  h4 {
  font-size: 18px;
  margin-bottom: 10px;
}

.recruiting_detail_cnts p,
.recruiting_detail_cnts ul {
  margin-bottom: 30px;
}
.recruiting_detail_cnts p + .recruiting_h2, .recruiting_detail_cnts ul + .recruiting_h2 {
  margin-top: 50px;
}

.recruiting_detail_cnts ul {
  margin-left: 20px;
}

.recruiting_detail_cnts ul li {
  position: relative;
  margin-bottom: 5px;
  padding-left: 12px;
}

.recruiting_detail_cnts ul li:last-child {
  margin-bottom: 0;
}

.recruiting_detail_cnts ul li::before {
  content: "▶";
  font-size: 10px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -7px;
  color: #ff4800;
}

.recruiting_detail_cnts figure {
  margin-bottom: 30px;
}

.recruiting_detail_cnts figure img{
  width: auto;
  max-width: 100%;
  text-align: center;
}

.recruiting_detail_cnts .btn_link {
  margin-top: 70px;
}
.owner_detail {
  border-top: 1px solid #d8d8d8;
  border-bottom: 1px solid #d8d8d8;
  background: #f8f8f8;
  padding: 80px 0;
}

.recruiting_ttl {
  margin-bottom: 20px;
}

.recruiting_cnts dl dd p {
  margin-bottom: 0;
}

.owner_links {
  margin-bottom: 15px;
  display: flex;
  flex-wrap: wrap;
}

.owner_links li {
  width: 40%;
  margin-right: 3%;
}

.owner_links li:last-child {
  margin-right: 0;
}

.hp_link a {
  display: block;
  border: 1px solid #ff4900;
  border-radius: 5px;
  text-align: center;
  color: #ff4900;
  font-weight: bold;
  padding: 10px;
  background: #fff;
}
.hp_link a:hover {
  background: #ff4900;
  color: #fff;
  border-bottom: 1px solid #ff4900;
}
.owner_links li.sns_link {
  width: 5%;
  margin-right: 2%;
}
.sns_link a {
  border: none;
}
.program_detail {
  padding: 70px 0;
  background: url(assets/img/common/block1_bg.png) 0 0 repeat;
  background-size: auto;
}

.flex_wrap {
  display: flex;
  flex-wrap: wrap;
}

.recruiting_cnt_l {
  width: 48.5%;
  margin-right: 3%;
}

.recruiting_cnt_r {
  width: 48.5%;
}
.keyword_links {
  margin-bottom: 0;
  display: flex;
  flex-wrap: wrap;
}

.keyword_links li {
  margin-right: 2%;
}

.keyword_links li a {
  color: #000;
  border-bottom: 1px solid #000;
}
.keyword_links li a:hover {
  text-decoration: none;
  border-bottom: none;
}

.program_detail .request_btn_lists {
  margin-top: 20px;
  margin-bottom: 70px;
}

.recruiting_map {
  margin-top: 60px;
}

.recruiting_map_box {
  position: relative;
  padding-bottom: 30%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.recruiting_map_box iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.recruiting_comment {
  background: url(assets/img/common/block4_bg.png) 0 0 no-repeat;
  background-size: cover;
  padding: 60px 0;
}

.recruiting_comment_inner {
  text-align: center;
}

.comment_ttl {
  text-align: center;
  margin-bottom: 45px;
}

.comment_ttl h2 {
  font-size: 27px;
  font-weight: bold;
  margin: 0;
  position: relative;
  display: inline-block;
}

.comment_ttl h2::before {
  content: "";
  background: url(./assets/img/common/icon_ttl_decoration.png) 0 0 no-repeat;
  background-size: 39px 23px;
  height: 23px;
  width: 39px;
  position: absolute;
  left: -70px;
  top: 0;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
}

.comment_ttl h2::after {
  content: "";
  background: url(./assets/img/common/bg_comment_ttl.png) 0 0 no-repeat;
  background-size: 156px 101px;
  height: 101px;
  width: 156px;
  position: absolute;
  right: -30px;
  top: 0;
  margin-top: -33px;
}

.comment_ttl h2 span {
  position: relative;
  z-index: 2;
}
.comment_count {
  margin-bottom: 0;
}

.comment_count a {
  color: #000;
  border-bottom: 1px solid #000;
  font-size: 15px;
}
.comment_count a:hover {
  text-decoration: none;
  border-bottom: none;
}

.community_head_detail {
  justify-content: flex-end;
}
.request_btn_lists .btn_single {
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
}
.request_btn_lists .btn_single a {
  border-radius: 50px !important;
}
.text_contact_link {
  margin-bottom: 0;
  text-align: center;
  margin-top: 30px;
}

.text_contact_link a {
  text-decoration: underline;
  color: #888;
}

.recruiting_schedule {
  margin-bottom: 30px;
}

.recruiting_schedule dl:not(:last-child) {
  margin-bottom: 30px;
}

.recruiting_schedule dt {
  font-size: 20px;
  margin-bottom: 10px;
  color: #ff4800;
}

.recruiting_schedule dd {
  margin: 0;
}

.recruiting_schedule ul {
  margin: 0;
}

.recruiting_schedule li::before {
  display: none;
}

.recruiting_schedule li {
  padding: 8px;
  display: flex;
  /*flex-wrap: wrap;*/
  margin-bottom: 0;
  border-bottom: 1px solid #000;
}

.recruiting_schedule li p {
  margin-bottom: 0;
}

.recruiting_schedule li p.time {
  font-weight: bold;
  margin-right: 3%;
  width: 15%;
}

.recruiting_schedule li p.schedule_ttl {
  width: 85%;
}

.recruiting_schedule_note {
  margin-top: 15px;
  font-size: 15px;
}
.img_tmp1 {
  position: relative;
}

.img_tmp1 figcaption {
  position: absolute;
  left: 0;
  bottom: 0;
  background: #000;
  color: #fff;
  padding: 5px 15px;
  font-size: 15px;
}
.text_orange {
  color: #ff4900;
}
.text_bold {
  font-weight: bold;
}
.text_big {
  font-size: 1.4em;
}
.img_x2 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 30px;
}

.img_x2 figure {
  width: 48%;
  margin-right: 3%;
  margin-bottom: 0;
}

.img_x2 figure:nth-child(2) {
  margin-right: 0;
}

.img_x2 figcaption,
.img_tmp2 figcaption {
  margin-top: 5px;
  font-size: 15px;
}

.recruiting_detail_cnts .img_x2 img {
  width: 100%;
}

.img_x3 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 30px;
}

.img_x3 figure {
  width: 31.3%;
  margin-right: 3%;
  margin-bottom: 0;
}

.img_x3 figure:nth-child(3) {
  margin-right: 0;
}

.img_x3 figcaption {
  margin-top: 5px;
  font-size: 15px;
}

.recruiting_detail_cnts ol {
  margin-left: 2.4em;
}

.recruiting_detail_cnts ol li {
  margin-bottom: 5px;
}

.section_tmp1 {
  position: relative;
}
.section_tmp1::after {
  content: "";
  background: url(./assets/img/common/block2_icon3.png) 0 0 no-repeat;
  background-size: 94px 165px;
  height: 165px;
  width: 94px;
  position: absolute;
  right: 70px;
  bottom: 310px;
}
.section_tmp2 {
  background: url(./assets/img/common/bg_single_cnts.png) 0 0 repeat;
  background-size: auto;
  padding: 50px 0 30px;
}
.comment_contact_link {
  margin-bottom: 0;
  margin-top: 30px;
  text-align: center;
}

.comment_contact_link a {
  display: inline-block;
  position: relative;
  color: #8b8b8b;
  padding-left: 25px;
  font-size: 15px;
  text-decoration: underline;
}
.comment_contact_link a:hover {
  text-decoration: none;
}

.comment_contact_link a::before {
  content: "";
  background: url(assets/img/common/icon_mail_gray.png) 0 0 no-repeat;
  background-size: 16px 13px;
  height: 13px;
  width: 16px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -7px;
}
.recruiting_comment .sav_text {
  margin: 30px 0 0;
  font-weight: normal;
  font-size: 16px;
}

.recruiting_comment .sav_text p:last-child {
  margin-bottom: 0;
}

.img_tmp2 {
  text-align: center;
}

#comments {
  margin-top: 0!important;
}

.citation_ttl {
  text-align: center;
}

.citation_ttl h2 {
  display: inline-block;
  position: relative;
  padding: 0 40px;
  margin: 0;
  font-size: 22px;
}

.citation_ttl h2::before {
  content: "";
  background: url(assets/img/common/icon_decoration_l.png) 0 0 no-repeat;
  background-size: 26px 46px;
  height: 46px;
  width: 26px;
  position: absolute;
  left: 0;
  bottom: 0;
}

.citation_ttl h2::after {
  content: "";
  background: url(assets/img/common/icon_decoration_r.png) 0 0 no-repeat;
  background-size: 26px 46px;
  height: 46px;
  width: 26px;
  position: absolute;
  right: 0;
  bottom: 0;
}
.program_contact .comment_contact_link {
  margin-top: 0;
  text-align: left;
}
.program_contact .comment_contact_link a {
  border-bottom: none;
}

.program_contact p:not(:last-child) {
  margin-bottom: 10px;
}

/** マイページ - 退会申し込み **/
.btn_unsubscribe {
  max-width: 450px;
  width: 100%;
  margin: 0 auto;
}
.btn_unsubscribe input[type="submit"] {
  cursor: pointer;
  background: #68839f;
  border: 2px solid #68839f;
  color: #fff;
  font-weight: bold;
  padding: 15px;
  border-radius: 50px;
  width: 100%;
}
.btn_unsubscribe input[type="submit"]:hover {
  background: #fff;
  color: #68839f;
}
.page_withdrawal {
  max-width: 800px;
  width: 100%;
  margin: 0 auto 40px;
}

.withdrawal_box {
  background: #ffe8df;
  padding: 30px;
  margin-bottom: 20px;
}

.withdrawal_box > h3 {
  text-align: center;
  margin-bottom: 15px;
  font-size: 20px;
}

.withdrawal_box_inner ul {
  margin: 0;
}

.withdrawal_box_inner ul li {position: relative;padding-left: 20px;margin-bottom: 10px;}

.withdrawal_box_inner ul li::before {
  content: '';
  background: url(assets/img/about/icon_list_check.png) 0 0 no-repeat;
  background-size: 15px 16px;
  height: 16px;
  width: 15px;
  position: absolute;
  left: 0;
  top: 3px;
}

.withdrawal_box_inner ul li:last-child {
  margin-bottom: 0;
}

.page_withdrawal > p {
  text-align: center;
}

/** コミュニティ・プログラム一覧 **/
.search_box {
  margin-bottom: 100px;
}

.search_box > .page_inner {
  background: #fff3e9;
  padding: 40px;
}

.search_box .form_contents dl,
.option_cont_list .cont_box {
  margin-bottom: 30px;
}
.option_cont_list .cont_box {
  display: block;
  border-bottom: none!important;
  padding: 0;
}

.search_box .form_contents dl:last-child,
.option_cont_list .cont_box:last-child {
  margin-bottom: 0;
}

.f_check_list {
  margin-bottom: 0;
  display: flex;
  flex-wrap: wrap;
}

.f_check_list li {
  margin-right: 3%;
}
.cont_box .involvement_list li {
  width: 47%;
}

.option_cont_list .cont_box dt,
.option_cont_list .cont_box dd {/*変更*/
  width: 100%;
  margin-right: 0;
}

.search_box .form_contents dl dt,
.option_cont_list .cont_box dt {/*変更*/
  background: #f84400;
  color: #fff;
  font-size: 20px;
  padding: 8px 15px;
  margin-bottom: 15px;
  border-radius: 5px;
}

.search_box .form_contents label {
  margin-bottom: 0;
}

.search_box .form_contents dl dd,
.option_cont_list .cont_box dd {/*変更*/
  padding: 0 10px;
}
.option_cont_list .cont_box dd.parts_radio {/*変更*/
  padding: 0 20px;
}

.f_active_space .f_check_list li,
.f_active .f_check_list li,
.f_field.f_check_list li,
.f_genre_field .f_check_list li {/*変更*/
  width: 31.3%;
  margin-bottom: 15px;
}

.f_active_space .f_check_list li:nth-child(3n),
.f_active .f_check_list li:nth-child(3n),
.f_field.f_check_list li:nth-child(3n),
.f_genre_field .f_check_list li:nth-child(3n) {/*変更*/
  margin-right: 0;
}
.area_shimane ul:not(:last-child) {
  margin-bottom: 0;
}

.area_shimane:not(:last-child) {
  margin-bottom: 20px;
}

.area_shimane h3 {
  border-bottom: 1px solid #f84400;
  position: relative;
  font-size: 18px;
  padding: 5px 10px;
  color: #f84400;
  margin-bottom: 20px;
}
.area_shimane h3::after {
  content: "";
  border-bottom: 1px solid #f84400;
  height: 1px;
  width: 100%;
  position: absolute;
  bottom: -5px;
  left: 0;
}
.area_shimane .f_check_list li {
  width: 13%;
  margin-bottom: 5px;
}
.end .archive_img_box {
  position: relative;
}
.end .archive_img_box::after {
  content: "";
  text-align: center;
  color: #fff;
  line-height: 117px;
  font-size: 6rem;
  background: url(assets/img/common/sample/end.png) center no-repeat;
  background-size: 56px 56px;
  background-color: rgba(0, 0, 0, 0.2);
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: 5;
}
.area_maps {
  background: #fff;
  padding: 40px 30px;
  margin: 0 auto 30px;
  border-radius: 10px;
}

.map_note_text {
  font-size: 15px;
  text-align: center;
  margin-bottom: 10px;
  margin-top: 20px;
}

.area_maps img {
  max-width: 896px;
  width: 100%;
  margin: 0 auto;
  display: block;
}
.online_text {
  color: #32a973;
  font-weight: bold;
  font-size: 18px;
}

.search_box .form_contents .area_maps_wrap,
.option_cont_list .cont_box .area_maps_wrap {
  margin-top: 30px;
}

.search_box .form_contents .area_maps_wrap dt,
.option_cont_list .cont_box .area_maps_wrap dt {
  background: #33dda3;
  max-width: 500px;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  padding: 15px;
  position: relative;
  font-size: 18px;
}

.search_box .form_contents .area_maps_wrap dt::after,
.option_cont_list .cont_box .area_maps_wrap dt::after {
  content: "";
  background: url(assets/img/common/icon-toggle_white_off.png) 0 0 no-repeat;
  background-size: 35px;
  height: 35px;
  width: 35px;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -19px;
}
.search_box .form_contents .area_maps_wrap dt.open::after,
.option_cont_list .cont_box .area_maps_wrap dt.open::after {/*変更*/
  background: url(assets/img/common/icon-toggle_white_on.png) 0 0 no-repeat;
  background-size: 35px;
}

.search_box .form_contents .area_maps_wrap dd,
.option_cont_list .cont_box .area_maps_wrap dd {/*変更*/
  padding: 0;
}
.toggle_btn {
  cursor: pointer;
}
.toggle_cnt {
  display: none;
}

.area_ttl_h4 {
  margin-bottom: 10px;
}

.area_ttl_h4 h4 {
  position: relative;
  margin: 0;
  padding-left: 10px;
  color: #f84400;
}

.area_shimane .area_ttl_h4 + ul {
  margin-bottom: 15px;
}

.area_ttl_h4 h4::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  box-sizing: border-box;
  width: 8px;
  height: 8px;
  margin-top: -6px;
  border: 6px solid transparent;
  border-left: 6px solid #f84400;
}

.shimanetouroku_none{
  display: none!important;
}

/** エリア欄横並び **/
.area_block{
  display: flex;
  flex-wrap: wrap;
}

.area_list_block{
  width: 44%;
  margin-right: 2%;
}
.area_shimane .area_list_block .f_check_list li{
  width: 30%;
}
.area_maps_wrap{
  width: 54%;
  margin-top: 0;
}
.search_box .form_contents .area_maps_wrap dt.open {
  border-radius: 5px 5px 0 0;
}
.search_box .form_contents .area_maps_wrap dt + dd {
  background: #fff;
  border-radius: 0 0 5px 5px;
  padding-bottom: 10px;
}
.area_maps_wrap dt + dd > p {
  margin-top: 0;
  padding: 20px 10px 0;
  text-align: left;
}
.area_maps {
  padding: 0 30px;
}
.search_box .form_contents .area_maps_wrap dt, .option_cont_list .cont_box .area_maps_wrap dt {
  max-width: none;
}


/**
* ページネーション（変更）
*/
.tablenav-pages {
  display: flex;
  justify-content: center;
  margin-top: 50px;
  align-items: flex-end;
}

.tablenav-pages span,
.tablenav-pages a {
  font-size: 18px;
  padding: 0 15px !important;
  border-right: 1px solid #000;
  line-height: 1.2;
}

.tablenav-pages a {
  color: #f84400;
}

.tablenav-pages a.previouspostslink,
.tablenav-pages a.nextpostslink {
  border-right: none;
  font-size: 20px;
}

.archive_wrap {
  margin-bottom: 100px;
}
.tablenav-pages .current {
  color: #000 !important;
  background: transparent !important;
  border-color: #ccc !important;
  border: none !important;
  border-right: 1px solid #000 !important;
  font-weight: bold;
}
.tablenav-pages .wp-pagenavi > .pages {
  display: none;
}

/**
* フォームパーツ装飾
*/
.form_contents input[type="text"],
.form_contents input[type="email"],
.form_contents input[type="tel"],
.form_contents input[type="url"],
.form_contents input[type="password"],
.form_contents textarea {
  background: #fff;
  border-radius: 5px;
  width: 60%;
  padding: 0 5px;
  border: 1px solid #a8a8a8;
  line-height: 1.1;
}
.form_contents input[type="text"],
.form_contents input[type="email"],
.form_contents input[type="tel"],
.form_contents input[type="url"],
.form_contents input[type="password"] {
  height: 35px;
}
.form_contents input[type="text"],
.form_contents input[type="email"],
.form_contents input[type="tel"],
.form_contents input[type="url"],
.form_contents input[type="password"],
.form_contents input[type="number"],
.form_contents select,
.form_contents textarea {
  font-size: 16px;
}
.form_contents textarea {
  width: 100%;
  padding: 5px;
}
.form_contents input[type="tel"] {
  width: 30%;
}

.zip_box input[type="text"] {
  width: 100px;
}
.f_free_word input[type="text"] {
  width: 100%;
}
input[type="date"] {
  border: 1px solid #999;
}
.form_contents input[type="text"].datepicker {
  width: 85%;
}
.form_contents .password_block input {
  padding-right: 45px;
}
.form_contents input[type="url"] {
  width: 80%;
}

::placeholder {
  color: #999;
}

/** セレクトボックス装飾 **/
.form_contents select {
  background: #fff url(assets/img/common/icon-select-01.png) no-repeat center
    right 10px;
  background-size: 15px 8px;
  height: 40px;
  width: 60%;
  border: 1px solid #a8a8a8!important;
  border-radius: 5px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 15px;
  padding: 5px;
}
.form_contents .f_type select {
  width: 30%;
}

/** チェックボックス装飾 **/
.parts_checkbox label {
  position: relative;
}
.parts_checkbox label input[type="checkbox"] {
  padding-left: 20px;
  -webkit-appearance: none!important;
  -moz-appearance: none!important;
  appearance: none!important;
}
.check_text {
  color: #ff5539;
}
.parts_checkbox label input[type="checkbox"]::before {
  content: "";
  background: #fff;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -8px;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  border-radius: 4px;
}
.parts_checkbox label input[type="checkbox"]:checked::after {
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 5px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 3px solid #ff5539;
  border-right: 3px solid #ff5539;
}
.archive_report_search .parts_checkbox label input[type="checkbox"]:checked::after {
  top: 1px;
}

/** ラジオボタン装飾 **/
.parts_radio label {
  display: inline-block;
  position: relative;
  cursor: pointer;
  padding: 10px 20px;
  border-radius: 2px;
  font-size: 16px;
  text-align: center;
  line-height: 1;
}
.parts_radio label:before {
  background: #fff;
  border: 1px solid #bbb;
  position: absolute;
  content: "";
  top: 50%;
  left: -10px;
  width: 20px;
  height: 20px;
  margin-top: -10px;
  border-radius: 50%;
}
.parts_radio label input[type="radio"]:checked:after {
  position: absolute;
  content: "";
  top: 50%;
  left: -5px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  border-radius: 50%;
  background: #ff5539;
}

/** submitボタン **/
.sbumit_box {
  max-width: 350px;
  width: 100%;
  margin: 50px auto 0;
}
.submit_btn,
.s_submit_btn {
  width: 100%;
  background: #bbb;
  border: 2px solid #bbb;
  color: #fff;
  font-weight: bold;
  padding: 15px;
  border-radius: 5px;
  border-radius: 50px;
}
.submit_btn.active,
.s_submit_btn {
  cursor: pointer;
  background: #f84400;
  border: 2px solid #f84400;
}
.submit_btn.active:hover,
.s_submit_btn:hover {
  background: #fff;
  color: #f84400;
}
.form_desc {
  margin-bottom: 10px;
}
/** パスワード強度文字色 **/
.very_strong {
  color: #2db450;
}
.good {
  color: #ff9900;
}
.very_weak {
  color: #ff1313;
}

/** パスワード表示・非表示 **/
.toggle_password {
  width: 23px;
  display: inline-block;
  margin-left: -40px;
  vertical-align: middle;
  margin-top: -3px;
  cursor: pointer;
}

/** エラーメッセージ **/
.error {
  margin: 5px 0;
  color: #ff1313;
}

/** お知らせ一覧 **/
.archive_wrap .info_list_box {
  margin-bottom: 20px;
}
.archive_wrap .info_list_box:nth-child(3n) {
  margin-right: 0;
}

/** お知らせ詳細ページ **/
.single_head {
  margin-bottom: 20px;
}

.single_ttl_h1 {
  font-size: 30px;
  line-height: 1.3;
  margin-bottom: 10px;
}

.single_ttl_h1:first-letter {
  color: #f84400;
  font-size: 1.5em;
}

.single_head time {
  font-weight: bold;
  color: #f84400;
  font-size: 18px;
}
.single_share_box {
  display: flex;
  justify-content: flex-end;
  margin-top: -20px;
  margin-bottom: 0;
}

.single_share_box dt {
  margin-right: 1%;
}

.single_share_box dd {
  margin-bottom: 0;
}

.single_main_img {
  margin-bottom: 20px;
  text-align: center;
}

.single_text_area {
  line-height: 1.8;
  margin-bottom: 80px;
}
.single_text_area h2 {
  background: #f84400;
  border-radius: 3px;
  border: #f84400 1px solid;
  color: #fff;
  font-size: 24px;
  font-weight: 600;
  margin: 50px 0 25px;
  padding: 0.2em 0.8em;
  text-align: left;
  line-height: 1.5;
}
.single_text_area h3 {
  background: #f2f2f2;
  border-radius: 3px;
  border: #f84400 1px solid;
  border-left: #f84400 7px solid;
  color: #f84400;
  font-size: 22px;
  font-weight: 600;
  margin: 50px 0 25px;
  padding: 0.35em 1em;
  line-height: 1.5;
}
.single_text_area h4 {
  border-bottom: #f84400 4px double;
  color: #f84400;
  font-size: 20px;
  font-weight: 600;
  margin: 20px 0 25px;
  padding: 0.35em 1em;
  line-height: 1.5;
}
.single_text_area h5 {
  border-bottom: #f84400 2px solid;
  color: #f84400;
  font-size: 18px;
  font-weight: 600;
  padding: 0 15px 0.5em 15px;
  position: relative;
  margin: 50px 0 25px;
  line-height: 1.5;
}
.single_text_area ul li {
  list-style: disc;
  margin-left: 25px;
}
.single_text_area ol li {
  margin-left: 25px;
}

.single_text_area > p {
  margin-bottom: 25px;
}

.single_text_area ul,
.single_text_area ol {
  margin-bottom: 25px;
}

.pager {
  border-top: 1px solid #f84400;
  padding: 10px 20px 0;
  margin-bottom: 80px;
  text-align: center;
}
.pager:after {
  content: "";
  display: block;
  clear: both;
}
.pager a {
  color: #888;
  transition: 0.5s;
}
.pager a:hover {
  color: #f84400;
  text-decoration: none;
}
.pager a[rel="prev"] {
  float: left;
}
.pagerGoList {
  display: inline-block;
  margin: 0;
}
.pager a[rel="next"] {
  float: right;
}

.single_cnts {
  margin-bottom: 130px;
}

/** 活動レポート一覧 **/
.archive_report_search > .page_inner {
  padding: 0;
  background: none;
}
.report_list_wrap .report_list_box {
  width: 32%;
}

.report_list_wrap .report_list_box:nth-child(2n) {
  margin-right: 2%;
}
.report_list_wrap .report_list_box:nth-child(3n) {
  margin-right: 0;
}
.report_list_box a{
  display: block;
}
.search_toggle {
  cursor: pointer;
  background: #f84400;
  font-weight: bold;
  width: 100%;
  padding: 17px;
  font-size: 20px;
  border-radius: 10px;
  position: relative;
  color: #fff;
}
.search_toggle.open {
  border-radius: 10px 10px 0 0;
}
.search_toggle::after {
  content: "";
  background: url(assets/img/common/icon-toggle_white_off.png) 0 0 no-repeat;
  background-size: 35px;
  height: 35px;
  width: 35px;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -19px;
}
.search_toggle.open::after {
  background: url(assets/img/common/icon-toggle_white_on.png) 0 0 no-repeat;
  background-size: 35px;
}
.search_toggle_cnt {
  padding: 30px 20px;
  display: none;
  background: #fff3e9;
}

.archive_report_search .form_contents dl dt {
  background: #f3712a;
}

/** 活動レポート詳細 **/
.report_program_citation {
  max-width: 650px;
  width: 100%;
  margin: 0 auto;
}

.report_program_citation a {
  position: relative;
  display: block;
  border: 3px solid #ccc;
  padding: 40px 30px 30px;
}

.citation_ttl {
  margin-bottom: 10px;
}

.citation_ttl p {
  margin-bottom: 0;
  font-size: 22px;
  font-weight: bold;
  color: #000;
}

.citation_cnts {
  display: flex;
  flex-wrap: wrap;
}

.citation_cnts figure {
  width: 30%;
  margin-right: 3%;
  margin-bottom: 0;
}

.citation_text {
  width: 67%;
}

.citation_text p {
  margin-bottom: 10px;
  font-size: 15px;
  color: #555;
}

.citation_text p:last-child {
  margin-bottom: 0;
}

.citation_text .more_btn {
  text-align: right;
}

.citation_text .more_btn span {
  display: inline-block;
  background: #f84400;
  color: #fff;
  padding: 5px 30px;
  font-size: 15px;
  border-radius: 50px;
}
.report_program_wrap {
  padding: 70px 0;
}

/** 利用規約 **/
.terms_contents {
  margin-bottom: 100px;
}

.terms_lists dl {
  margin-bottom: 35px;
}

.terms_lists dl:last-child {
  margin-bottom: 0;
}

.terms_contents p {
  margin-bottom: 15px;
}

.terms_contents .nubmer_list {
  margin-bottom: 20px;
  margin-left: 1.8em;
}

.terms_contents .nubmer_list li:not(:last-child) {
  margin-bottom: 20px;
}
.terms_lists dd {
  margin-bottom: 0;
}
.terms_lists dt {
  font-size: 20px;
  margin-bottom: 10px;
  color: #ff4800;
}

/** 新規登録・ログイン **/
.register_block .btn_x2 {
  display: flex;
  flex-wrap: wrap;
  max-width: 850px;
  width: 100%;
  margin: 70px auto 0;
}

.register_btn {
  width: 48%;
  margin-right: 3%;
}

.register_btn a {
  display: block;
  text-align: center;
  color: #fff;
  font-weight: bold;
  padding: 15px;
  border-radius: 50px;
}

.register_btn:last-child {
  margin-right: 0;
}
.register_desc_box p {
  text-align: center;
  font-size: 20px;
}

.login_block.form_contents {
  max-width: 850px;
  width: 100%;
  margin: 0 auto;
}

.not_password_link {
  margin: 10px 0 0;
}

.not_password_link a {
  border-bottom: 1px solid #666;
  color: #666;
}

.login_register_wrap {
  margin-bottom: 100px;
}
.form_note_text {
  margin-top: 30px;
}

.form_note_text p {
  margin-bottom: 0;
  text-align: center;
}

.page_entry_wrap input[type="text"]:disabled {
  border: none;
  background: transparent;
  color: #000;
  height: auto;
  padding: 0;
  font-size: 18px;
  -webkit-text-fill-color: black;
  opacity: 1;
}
.page_entry_wrap .form_note {
  margin-top: 10px;
}
.page_detail_text {
  margin-bottom: 20px;
}

.page_detail_text p {
  margin-bottom: 0;
}

.report_program_ttl {
  max-width: 800px;
  width: 100%;
  margin: 60px auto 25px;
  text-align: center;
}

.report_program_ttl h3 {
  margin-bottom: 0;
  background: url(assets/img/common/parts_ttl_orange.png) 0 0 no-repeat;
  background-size: 100% 69px;
  min-height: 69px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  font-size: 22px;
}
/**
* embed （後で削除）
*/
.recruiting_detail_cnts figure.wp-block-embed {
  max-width: 600px;
  width: 100%;
  margin: 0 auto 30px;
  position: relative;
}
.wp-block-embed__wrapper {
  position: relative;
}
blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eee;
}
blockquote {
  background-color: #333;
  color: #fff;
  font-size: 16px;
  font-style: italic;
  line-height: 23px;
  margin-bottom: 30px;
  padding: 30px 35px;
  position: relative;
}
blockquote {
  border-left: 3px solid #d65050;
}
.wp-block-embed iframe {
  max-width: 100%;
  min-height: 320px;
}

.archive_link_btn {
  max-width: 500px;
  width: 100%;
  margin: 70px auto 0;
}

.archive_link_btn a {
  display: block;
  text-align: center;
  color: #fff;
  text-decoration: none;
  font-size: 18px;
  font-weight: bold;
  padding: 18px;
  border-radius: 50px;
  position: relative;
}
.archive_link_btn a::after {
  content: "";
  background: url(assets/img/common/icon_arrow_white.png) 0 0 no-repeat;
  background-size: 14px 6px;
  position: absolute;
  top: 50%;
  right: 20px;
  height: 6px;
  width: 14px;
  margin-top: -3px;
}
.archive_link_x2 {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}

.archive_link_x2 .archive_link_btn {
  max-width: none;
  width: 48%;
  margin-right: 3%;
}

.archive_link_x2 .archive_link_btn:last-child {
  margin-right: 0;
}

.register_desc_wrap {
  margin: 30px 0;
  text-align: center;
}

.register_desc_wrap p {
  margin-bottom: 30px;
  font-size: 18px;
}

.register_desc_wrap figure {
  max-width: 350px;
  width: 100%;
  margin: 0 auto;
}

.f_data dd {
  display: flex;
  flex-wrap: wrap;
}
.f_data dd > p {
  width: 25%;
  margin-right: 2%;
}
.request_catch {
  text-align: center;
  margin-bottom: 50px;
}

.request_catch p {
  margin: 0;
  font-size: 19px;
  line-height: 2;
}

.request_catch a {
  font-weight: bold;
  border-bottom: 1px solid #000;
  color: #000;
}
.request_catch a:hover {
  border-bottom: none;
  text-decoration: none;
}

.not_confirm {
  display: none;
}

.mw_wp_form_confirm .privacy_policy_box {
  display: none;
}
.mw_wp_form_confirm .form_note {
  display: none;
}

.mw_wp_form_input .form_note_text {
  display: none;
}
.mw_wp_form_confirm .form_note_text {
  display: block;
}

.privacy_policy_box {
  text-align: center;
  margin: 20px 0 0;
  font-size: 18px;
}
.contents_catch_text {
  margin-bottom: 40px;
}
.contents_catch_text p:last-child {
  margin-bottom: 0;
}

.password_hide {
  display: none;
}

.change_eye .password_hide {
  display: block;
}
.change_eye .password_show {
  display: none;
}
.request_report_wrap {
  margin-bottom: 100px;
}
.report_action_btn {
  margin: 0 0 20px;
  max-width: 350px;
  width: 100%;
}

.report_action_btn .btn_box {
  width: 100%;
  margin-right: 0;
}

.report_action_btn .btn_box a {
  text-align: center;
  font-weight: bold;
  color: #fff;
  padding: 10px;
  border-radius: 50px;
  font-size: 16px;
}

.my_program_list_box .report_action_btn a::after {
  display: none;
  border-right: 2px solid #fff;
}

.report_action_btn .btn_box a:hover {
  background: #ff4900;
  opacity: 1;
}
.registration_note {
  margin-top: 40px;
  text-align: center;
  font-size: 18px;
}

/** コメント欄用 **/
#wpdcom .wc-field-submit input[type="submit"] {
  margin: 20px auto 0 !important;
  background: #33dda3 url(assets/img/common/icon_arrow_white.png) right 20px
    center no-repeat;
  max-width: 320px;
  width: 100%;
  border-radius: 50px;
  padding: 15px;
  font-size: 16px;
}

#wpdcom .login_head .wpd-auth a::after {
    content: "";
    background: url(./assets/img/common/icon_arrow_white.png) 0 0 no-repeat;
    background-size: 14px 6px;
    height: 6px;
    width: 14px;
    margin-top: -3px;
    position: absolute;
    right: 25px;
    top: 50%;
}
.pc_comment_block {
  margin-bottom: -45px;
}

/*** wpulike一覧用 ***/
.archive_like_btn {
  position: absolute;
  right: 15px;
  top: -20px;
  padding: 0;
  z-index: 10;
  width: 62px;
  height: 60px;
  text-align: center;
}

/** WPULIKEボタン用 **/
.singel_like_btn {
  width: 62px;
  height: 60px;
  margin: 0 auto;
}

.singel_like_btn .wpulike .wp_ulike_general_class,
.archive_like_btn .wpulike .wp_ulike_general_class {
  display: block;
  position: relative;
}

.singel_like_btn .wp_ulike_is_unliked,
.singel_like_btn .wp_ulike_is_already_unliked,
.singel_like_btn .wp_ulike_is_not_liked,
.singel_like_btn .wp_ulike_click_is_disabled,
.archive_like_btn .wp_ulike_is_already_unliked,
.archive_like_btn .wp_ulike_is_unliked,
.archive_like_btn .wp_ulike_is_not_liked,
.archive_like_btn .wp_ulike_click_is_disabled {
  border: 1px dashed #000;
  border-radius: 50px;
  background: #fff;
}

.singel_like_btn .wpulike,
.archive_like_btn .wpulike {
  padding: 0;
}

.singel_like_btn .wpulike-robeen .wp_ulike_btn,
.archive_like_btn .wpulike-robeen .wp_ulike_btn {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  margin: 0 auto;
  width: 60px;
  height: 60px;
}

.singel_like_btn .wpulike-robeen .wp_ulike_btn:after,
.archive_like_btn .wpulike-robeen .wp_ulike_btn:after {
  background-size: 2200px auto;
  background-position: 0;
  width: 80px;
  height: 60px;
  transform: translateX(-48%) translateY(-65%);
}

.singel_like_btn .wpulike-robeen .count-box,
.archive_like_btn .wpulike-robeen .count-box {
  padding-top: 33px;
  padding-bottom: 5px;
  display: block;
  font-size: 14px;
}

.singel_like_btn .wp_ulike_is_liked,
.archive_like_btn .wp_ulike_is_liked,
.singel_like_btn .wp_ulike_is_already_liked,
.archive_like_btn .wp_ulike_is_already_liked,
.singel_like_btn .wp_ulike_click_is_disabled,
.archive_like_btn .wp_ulike_click_is_disabled {
  border: 1px solid #e2264d;
  border-radius: 50px;
  background: #fff;
}

.singel_like_btn .wpulike-robeen .wp_ulike_btn.wp_ulike_btn_is_active:after,
.archive_like_btn .wpulike-robeen .wp_ulike_btn.wp_ulike_btn_is_active:after {
  background-position: -2123px -7px;
}

/** 受付終了・開催終了表記 **/
.page_head_wrap.end1 .single_head_cnts figure,
.page_head_wrap.end2 .single_head_cnts figure  {
  position: relative;
}

.page_head_wrap.end1 .single_head_cnts figure::before {content: '受付終了';background: rgba(0,0,0,.4);width: 100%;position: absolute;left: 0;top: 0;right: 0;bottom: 0;display: flex;justify-content: center;align-items: center;color: #fff;font-size: 6rem;font-weight: bold;
  font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";}

.page_head_wrap.end2 .single_head_cnts figure::before {content: '開催終了';background: rgba(0,0,0,.4);width: 100%;position: absolute;left: 0;top: 0;right: 0;bottom: 0;display: flex;justify-content: center;align-items: center;color: #fff;font-size: 6rem;    font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";}

.program_detail.end1 > .page_inner ,.program_detail.end2 > .page_inner {
  position: relative;
}
.program_detail.end1 > .page_inner::before {
  content: '';
  background: url(assets/img/common/stamp_01.png) 0 0 no-repeat;
  background-size: 125px;
  height: 125px;
  width: 125px;
  position: absolute;
  right: 15px;
  top: -65px;
  -webkit-transform: rotate(10deg);
  transform: rotate(10deg);
}
.program_detail.end2 > .page_inner::before {
  content: '';
  background: url(assets/img/common/stamp_02.png) 0 0 no-repeat;
  background-size: 125px;
  height: 125px;
  width: 125px;
  position: absolute;
  right: 15px;
  top: -65px;
  -webkit-transform: rotate(10deg);
  transform: rotate(10deg);
}

.archive_box.end1 .archive_img_box figure,
.archive_box.end2 .archive_img_box figure {
  position: relative;
  z-index: 0;
}
.archive_box.end1 .archive_img_box figure::before{
  content: '';
  background: #fff url(assets/img/common/stamp_01.png) 0 0 no-repeat;
  border-radius: 50%;
  background-size: 120px;
  height: 120px;
  width: 120px;
  position: absolute;
  right: 0;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  z-index: 1;
}
.archive_box.end2 .archive_img_box figure::before{
  content: '';
  background: #fff url(assets/img/common/stamp_02.png) 0 0 no-repeat;
  border-radius: 50%;
  background-size: 120px;
  height: 120px;
  width: 120px;
  position: absolute;
  right: 0;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  z-index: 1;
}
.archive_box.end1 .archive_img_box figure::after,
.archive_box.end2 .archive_img_box figure::after {
  content: '';
  background: rgba(0,0,0,.3);
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-radius: 10px 0 10px 0;
}

/** 参加申込みボタン非表示の場合 **/
.reguest_single_btn .btn_box {
  width: 100%;
}
.request_btn_lists.reguest_single_btn .btn_box {
  max-width: 450px;
  display: block;
  margin: 0 auto;
}
.reguest_single_btn .btn_box a {
  border-radius: 50px!important;
}
.request_btn_lists.reguest_single_btn p {
  text-align: center;
  width: 100%;
}

/** エリアポップアップ **/
.area_content figure {
  text-align: center;
  margin-bottom: 30px;
}

.area_desc_block {
  line-height: 2;
}

/** パスワード再発行ページ用 **/
#lostpasswordform dl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  max-width: 600px;
  margin: 0 auto;
}

#lostpasswordform dl dt {
  width: 19%;
  margin-right: 2%;
}

#lostpasswordform dl dd {
  width: 79%;
}

#lostpasswordform label {
  margin-bottom: 0;
}

#lostpasswordform p.submit {max-width: 420px;width: 100%;margin: 30px auto 0;}

#lostpasswordform .submit input[type="submit"] {
  background: #ff4900;
  display: block;
  width: 100%;
  text-align: center;
  color: #fff;
  padding: 18px 15px;
  border-radius: 50px;
  border: 1px solid #ff4900;
  font-weight: bold;
  position: relative;
  cursor: pointer;
  transition: all .5s;
}
#lostpasswordform .submit input[type="submit"]:hover{
  background: #fff;
  color: #ff4900;
}

#lostpasswordform dl dd input[type="text"] {
  width: 100%;
}
.lost_password_text {
  max-width: 600px;
  width: 100%;
  margin: 0 auto 30px;
}

.cont_box.form_privacy_check {
  border-bottom: none!important;
  padding-bottom: 0;
}

.form_privacy_check dd {
  margin-bottom: 0!important;
}

.register_radio_list {
  padding: 0 20px;
}

.supporter_error_header,.owner_error_header{
  display: none;
}

/**
サイトマップ
**/
.sitemap_contents {
  display: flex;
  flex-wrap: wrap;
}

.sitemap_box {
  width: 30.6%;
  margin-right: 4%;
}

.sitemap_box:last-child {
  margin-right: 0;
}

.sitemap_list {
  padding: 0;
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
}

.sitemap_list > li {
  margin-bottom: 20px;
}

.sitemap_list > li > a,
.sitemap_list > li > span {
  display: block;
  background-color: #fff;
  border: 1px solid #ccc;
  border-left: 5px solid #f84400;
  color: #313131;
  font-weight: bold;
  padding: 6px 7px 4px 12px;
  position: relative;
}

.sitemap_child_list {
  margin: 7px 12px 8px;
  padding: 0;
}

.sitemap_child_list > li:not(:last-child) {
  margin-bottom: 5px;
}

.sitemap_child_list > li > a {
  color: #313131;
  position: relative;
  display: block;
  padding-left: 1em;
  font-size: 15px;
}

.sitemap_child_list > li > a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -3px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #f84400;
  border-right: 2px solid #f84400;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.sitemap_list > li > a::after {
  content: "";
  background: url(assets/img/common/bnt_self.png) 0 0 no-repeat;
  background-size: 25px 28px;
  height: 28px;
  width: 25px;
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -15px;
}

.sitemap_list > li > a {
  transition: all 0.5s;
}
.sitemap_list > li > a:hover {
  background: #f84400;
  color: #fff;
  border: 1px solid #f84400;
  border-left: 5px solid #f84400;
  text-decoration: none;
}
.sitemap_list > li > a:hover::after {
  background: url(assets/img/common/bnt_self_hover.png) 0 0 no-repeat;
  background-size: 25px 28px;
}
.sitemap_child_list > li > a:hover {
  text-decoration: underline;
}
dl dd.dot span:not(:last-child)::after {content: '、';}

.mypage_request_wrap .page_inner > p.quit_text.my_logout_text {
  font-size: 18px;
  margin-bottom: -5px;
}

.quit_text.my_logout_text a {
  color: #f84400;
  font-weight: bold;
}

.quit_text.my_logout_text a::after {
  border-top: 1px solid #f84400;
  border-right: 1px solid #f84400;
  width: 8px;
  height: 8px;
}

.parent_link {
  display: block;
  background: #f84400;
  border: 3px solid #f84400;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 23px 0;
  font-size: 20px;
  transition: all .5s;
}

.parent_link > .child_g_navi {
  top: 60px;
  width: 100%;
  left: 0;
  margin-left: 0;
}

.parent_link:hover > ul::before {
  top: -12px;
  left: 5px;
}

.parent_link:hover > ul::after {
top: 15px;
margin-left: -17px;
}

.parent_link > .child_g_navi a {
  font-size: 16px;
}

/**いいねアイコン**/
.good_button{
  position: relative;
  width: 60px;
  height: 60px;
  background: #fff;
  border-radius: 50px;
  cursor: pointer;
  outline: none;
  line-height: 2;
}
.good_button::before{
  content: '';
  position: absolute;
  background: url("assets/img/common/heart_animation.png");
  background-position: left;
  background-size: 2900%;
  background-repeat: no-repeat;
  width: 105px;
  height: 105px;
  left: 50%;
  top: 50%;
  width: 80px;
  height: 60px;
  transform: translateX(-50%) translateY(-65%);
}

@keyframes heartBlast {
  0% {
    background-position: left;
  }
  100% {
    background-position: right;
  }
}

.good_in_button::before,
.good_on::before {
  content: '';
  display: inline-block;
  background-position: right;
}
.good_on::before{
  -webkit-animation-name: heartBlast;
  animation-name: heartBlast;
  -webkit-animation-duration: .8s;
  animation-duration: .8s;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-timing-function: steps(28);
  animation-timing-function: steps(28);
}
.good_counter {
  display: block;
  padding-top: 25px;
  font-size: 14px;
}

.good_button:focus {
  outline: none!important;
}

.good_not_button {
  border: 1px dashed #000;
}

.good_in_button,.good_on {
  border: 1px solid #e2264d;
}

/** 装飾用 **/
.img_text_left_box,.img_text_right_box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 30px;
}

.img_text_left_box figure, .img_text_right_box figure {
  width: 48%;
  margin-bottom: 0;
}

.img_text_box {
  width: 49%;
}

.img_text_right_box figure {
  order: 2;
}

.img_text_right_box .img_text_box {
  order: 1;
  margin-right: 2%;
}

.img_text_left_box figure {
  margin-right: 2%;
}

.single_link_btn {
  text-align: center;
  margin: 20px auto 40px;
}

.single_link_btn a {
  display: inline-block;
  background: #f84400;
  border: 1px solid #f84400;
  color: #fff;
  border-radius: 50px;
  padding: 15px 40px;
  min-width: 350px;
  text-align: center;
  font-size: 18px;
  transition: all .5s;
  position: relative;
}

.single_link_btn a:hover {
  background: #fff;
  color: #f84400;
  text-decoration: none;
}

.single_link_btn a::after {content: '';background: url(assets/img/common/icon_arrow_white.png) 0 0 no-repeat;background-size: 14px 6px;height: 6px;width: 14px;position: absolute;right: 20px;top: 50%;margin-top: -3px;}

.not_contents{
  display: none!important;
}

/** マイページトップ **/
.mypage_navi_desclist {}

.mypage_navi_desclist dl {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding-left: 10px;
    padding-right: 10px;
}

.mypage_navi_desclist dl dt {
    width: 20%;
    margin-right: 2%;
}

.mypage_navi_desclist dl dd {
    width: 78%;
}

.mypage_navi_desclist dl:not(:last-child) {
    margin-bottom: 20px;
    border-bottom: 1px dashed #ddd;
    padding-bottom: 20px;
}

.mypage_navi_desclist dl dt a {
    display: block;
    background: #f84400;
    border: 1px solid #f84400;
    text-align: center;
    color: #fff;
    padding: 12px;
    border-radius: 5px;
    position: relative;
    transition: all .5s;
}

.mypage_navi_desclist dl dt a::after {content: '';position: absolute;top: 50%;right: 10px;width: 7px;height: 7px;margin-top: -3px;border-top: 2px solid #fff;border-right: 2px solid #fff;-webkit-transform: rotate(45deg);transform: rotate(45deg);}

.mypage_navi_desclist dl dt a:hover{
  background: #fff;
  color: #f84400;
  text-decoration: none;
}

.mypage_top_contact {
    margin: 50px auto 0;
    max-width: 800px;
    width: 100%;
    background: #ffe8df;
    padding: 30px;
}

.mypage_top_contact h3 {
    text-align: center;
    margin-bottom: 15px;
}

.mypage_top_contact_text {
    text-align: center;
    margin-bottom: 30px;
}

.mypage_top_contact .link_btn {
    max-width: 340px;
    width: 100%;
    margin: 0 auto;
}

.mypage_top_contact .link_btn a {
    display: block;
    text-align: center;
    color: #fff;
    padding: 13px;
    border-radius: 50px;
    position: relative;
}

.mypage_top_contact .link_btn a::after {
    content: "";
    background: url(assets/img/common/icon_arrow_white.png) 0 0 no-repeat;
    background-size: 14px 6px;
    height: 6px;
    width: 14px;
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -3px;
}
.mypage_top_contact .link_btn a:hover{
  color: #f84400;
}

/**変更**/
.form-table td.not_list_text, p.not_list_text {
  font-size: 20px;
  font-weight: bold;
  background: #ffeae2;
  padding: 15px!important;
  border-radius: 5px;
  text-align: center;
}
.page_login {
  display: flex;
  flex-wrap: wrap;
  max-width: 1300px;
}

.page_login .login_block {
  background: #fff1de;
  padding: 30px;
  width: 48%;
  margin-right: 3%;
  border-radius: 10px;
}

.page_login .register_block {
  background: #dffff4;
  width: 49%;
  padding: 30px;
  border-radius: 10px;
}

.page_login .register_desc_box p {
  text-align: left;
  font-size: 18px;
}

.page_login .frontend-user-admin-login {
  padding: 0;
  margin: 0;
}

.page_login #loginform {
  border-bottom: none;
  padding: 0;
  margin: 0;
}

.page_login .cont_box {
  padding: 10px 0;
}

.page_login #user_login,
.page_login #user_pass {
  width: 100%;
}

.complete_wrap .page_login .btn_x2 > div{
  width: 100%;
  max-width: 450px;
  margin: 0 auto;
}

.complete_wrap .page_login .btn_x2 > div:first-child {
  margin-bottom: 20px;
  margin-right: auto;
}

.not_password_link a:hover{
  text-decoration: none;
  border-bottom: none;
}

/** マイページ_オーナー掲載依頼 **/
.mypage_request_x2 {
  max-width: 1300px;
}
.request_x2{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.mypage_request_x2 .request_program_wrap {
  width: 48%;
  margin-right: 4%;
}

.mypage_request_x2 .request_report_wrap {
  width: 48%;
  margin-bottom: 0;
}

.mypage_request_x2 .ttl_r_parts1 h2 {
  text-align: center;
}

.mypage_request_x2 .request_not_account {
  text-align: left;
}
.request_program_wrap .request_desc_inner {
  background: #f7e9dd;
}

.password_block {
  position: relative;
}

.login_block .toggle_password{
  position: absolute;
  right: 15px;
  top: 50%;
  margin-top: -17px;
  margin-left: 0;
}
.login_block .form_contents {
  margin-bottom: 0;
}
.login_block .toggle_password.change_eye {
  margin-top: -10px;
}

input::placeholder {
  color: #aaa;
}

.form_privacy_link {
  margin: 20px 0;
}

.form_privacy_link a {
  font-size: 16px;
  border-bottom: 1px solid #555;
  color: #555;
  padding-bottom: 2px;
}

.form_privacy_link a:hover {
  text-decoration: none;
  border-bottom: none;
}

.top_mypage_btn a {
  padding: 13px 10px;
}

.mypage_request_x2 .request_program_wrap {
  background: #f7e9dd;
  padding: 30px;
  border-radius: 10px;
}

.request_desc_inner {
  padding: 30px;
}

.request_desc_block {
  text-align: center;
}

.request_desc_block > p {
  max-width: 450px;
  width: 100%;
  margin: 0 auto;
}

.request_img_form {
  margin-top: 20px;
}

.request_desc_toggle {
  margin-top: 40px;
}

.request_desc_toggle dt {
  font-size: 18px;
  text-align: center;
  color: #dc4a1d;
  margin-bottom: 20px;
  cursor: pointer;
}

.request_desc_toggle dd {
  display: none;
  background: #fff;
  padding: 30px;
}

.request_google_desc_box:not(:last-child) {
  margin-bottom: 50px;
}

.request_google_desc_box .ttl {
  font-weight: bold;
  margin-bottom: 10px;
  background: linear-gradient(transparent 75%, #edde7b 75%);
  display: inline-block;
  padding: 0 5px;
  font-size: 18px;
}

.request_google_desc_box {
  text-align: center;
}


.google_register_link a {
  text-decoration: underline;
  color: #ff4900;
  font-weight: bold;
  position: relative;
}
.google_register_link a:hover{
  text-decoration: none;
}

.google_register_link a::after {content: '';position: absolute;top: 50%;right: -13px;margin-top: -4px;width: 8px;height: 8px;border-top: 2px solid #ff4900;border-right: 2px solid #ff4900;-webkit-transform: rotate(45deg);transform: rotate(45deg);}

.request_google_desc_box > p:not(.ttl) {
  margin-bottom: 10px;
}

.request_desc_toggle dt .icon {
  display: inline-block;
  vertical-align: middle;
  position:relative;
  width: 15px;
  height: 15px;
  margin-top: -4px;
  margin-left: 10px;
}

.request_desc_toggle dt .icon:before,
.request_desc_toggle dt .icon:after{
  content:'';
  display:block;
  position:absolute;
  top:50%;
  transform:translate(0,-50%);
  width:100%;
  height: 4px;
  background-color: #dc4a1d;
}
.request_desc_toggle dt .icon:after {
  transform:translate(0,-50%) rotate(90deg);
}

.request_desc_toggle dt .icon.minus:before {
  opacity: 0;
}
.request_desc_toggle dt .icon.minus {
  transform:rotate(90deg);
}

.request_desc_toggle dt .icon,
.request_desc_toggle dt .icon:before {
  transition: .4s;
}

.mypage_request_x2 .request_report_wrap {
  background: #ddf7dd;
  padding: 30px;
  border-radius: 10px;
}

.google_register_link.green_link a {color: #57b38f;}

.google_register_link.green_link a::after {
  border-top: 2px solid #57b38f;
  border-right: 2px solid #57b38f;
}

.request_x1 .request_report_wrap {
  background: #ddf7dd;
  padding: 30px;
  border-radius: 10px;
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}

.request_x1 .request_google_desc_box > p:not(.ttl) {
  max-width: 500px;
  width: 100%;
  margin: 0 auto 10px;
}

.page_site_contact{
  background: url(assets/img/common/bg_contact_site.png) center bottom no-repeat;
  background-size: 100%;
  margin-bottom: 0;
  padding-bottom: 100px;
}

.page_program_contact{
  background: url(assets/img/common/bg_contact_program.png) center bottom no-repeat;
  background-size: 100%;
  margin-bottom: 0;
  padding-bottom: 100px;
}

.confirmation_box > h3{
  font-size: 18px;
}

.mw_wp_form .privacy_policy_box label {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.mw_wp_form .parts_checkbox.privacy_policy_box label input[type="checkbox"]:checked::after{
  top: -12px;
}

/**手引きページ用**/
.guid_link_navi {
  background-image: url(assets/img/guide/img_frame_lt.png),url(assets/img/guide/img_frame_rt.png),url(assets/img/guide/img_frame_lb.png),url(assets/img/guide/img_frame_rb.png);
  background-repeat: no-repeat;
  background-position: top left,top right, bottom left, bottom right;
  padding: 0 30px 10px;
}

.guid_link_navi > h2 {
  font-size: 28px;
  text-align: center;
  margin-bottom: 25px;
}

.guid_link_navi > ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.guid_link_navi > ul li {
  width: 32%;
  margin-right: 2%;
  margin-bottom: 20px;
  min-height: 74px;
}

.guid_link_navi > ul li:nth-child(3n) {
  margin-right: 0;
}

.guid_link_navi > ul li a {
  background: #fff;
  border: 3px solid #ff4900;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #ff4900;
  font-weight: bold;
  border-radius: 15px;
  font-size: 16px;
  padding: 10px 5px;
  text-align: center;
  transition: all .5s;
}

.guid_link_navi > ul li a:hover {
  text-decoration: none;
  background: #ff4900;
  color: #fff;
}
.site_guide_navi {
  margin-bottom: 60px;
}
.guide_owner_navi >ul >li {
  width: 30%;
}

.guide_owner_navi >ul >li:nth-child(3n) {
  margin-right: 0;
}

.guide_owner_navi >ul >li:nth-child(4n) {
  margin-right: 2%;
}

.guide_owner_navi >ul >li:nth-child(5),.guide_owner_navi >ul >li:nth-child(6) {
  width: 30%;
}

.guide_block {
  padding-bottom: 70px;
}

.bg_green {
  background: #f3fdfb url(assets/img/guide/bg_green.png) top center no-repeat;
  background-size: 100% auto;
  padding: 60px 0;
}

.guide_h2_ttl {
  text-align: center;
  margin-bottom: 40px;
}

.guide_h2_ttl h2 {
  margin-bottom: 0;
  display: inline-block;
  position: relative;
  font-size: 26px;
  padding: 35px 0;
}

.bg_green .guide_h2_ttl h2{
  background: url(assets/img/guide/bg_green_h2.png) center right no-repeat;
}

.guide_h2_ttl h2::before {
  content: "";
  background: url(assets/img/common/icon_ttl_decoration.png) 0 0 no-repeat;
  background-size: 39px 23px;
  height: 23px;
  width: 39px;
  position: absolute;
  left: -60px;
  top: 20px;
  transform: rotate(
180deg);
  -webkit-transform: rotate(
180deg);
}

.guide_h3_ttl {
  font-size: 20px;
  margin-bottom: 20px;
  position: relative;
  margin-left: -40px;
}

.guide_h3_ttl h3{
  padding: 5px 0 0 80px;
}

.bg_ttl_red h3 {
  background: url(assets/img/guide/bg_red_h3.png) 0 0 no-repeat;
  background-size: auto;
  min-height: 79px;
}

.bg_ttl_green h3 {
  background: url(assets/img/guide/bg_green_h3.png) 0 0 no-repeat;
  background-size: auto;
  min-height: 79px;
}

.guide_point .guide_h3_ttl {
  margin-bottom: 0;
}

.guide_point_box {
  background: #fff;
  margin-top: -40px;
  padding: 50px 20px;
  border-radius: 30px;
}

.guide_point_box > p {
  max-width: 880px;
  width: 100%;
  margin: 0 auto 30px;
  font-weight: bold;
}

.guide_point_list {
  display: flex;
  flex-wrap: wrap;
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}

.list_x5 .guide_point_item {
  width: 18%;
  margin-right: 2.5%;
}

.list_x5 .guide_point_item:nth-child(5n) {
  margin-right: 0;
}

.owner_point_block .list_x5 {
  justify-content: center;
}

.owner_point_block .list_x5 .guide_point_item:nth-child(4n) {
  margin-right: 0;
}

.guide_point_item {
  text-align: center;
}

.guide_point_item figcaption {
  font-size: 15px;
  font-weight: bold;
  color: #5b8e8e;
  margin-top: 20px;
}

.guide_point {
  margin-bottom: 60px;
}

.guide_floe_box {
  padding-left: 30px;
}

.guide_floe_box > dl {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}

.guide_floe_box > dl > dt {
  font-size: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 23%;
  margin-right: 2%;
}

.guide_floe_box > dl:nth-child(odd) > dt {
  background: url(assets/img/guide/bg_flow_green.png) 0 0 no-repeat;
  background-size: contain;
  min-height: 70px;
}

.guide_floe_box > dl > dd {
  margin-bottom: 0;
  width: 75%;
  padding-top: 10px;
}

.guide_floe_box > dl:nth-child(even) > dt {
  background: url(assets/img/guide/bg_flow_red.png) 0 0 no-repeat;
  background-size: contain;
  min-height: 70px;
}

.guide_floe_box > dl:not(:last-child) {
  margin-bottom: 40px;
}
.guide_content_box:not(:last-child) {
  margin-bottom: 60px;
}
.guide_caution_box{
  margin-bottom: 30px;
}
.guide_caution_box .caution_ttl {
  font-weight: bold;
  background: #fe4d4d;
  display: inline-block;
  color: #fff;
  padding: 6px 30px 0;
  margin-bottom: 0;
}

.guide_caution_box .caution_text {
  border: 6px solid #fe4d4d;
  padding: 20px;
  font-weight: bold;
  background: #fff;
}

.guide_caution_box .caution_text p {
  margin-bottom: 15px;
}

.guide_caution_box .caution_text p:last-child {
  margin-bottom: 0;
}

.bg_red {
  background: url(assets/img/common/block1_bg.png) 0 0 repeat;
  background-size: auto;
  padding: 70px 0;
  position: relative;
  overflow: hidden;
}

.bg_red .guide_h2_ttl h2 {
  background: url(assets/img/guide/bg_red_h2.png) center right 40px no-repeat;
}

.bg_red::after {
  content: "";
  background: url(assets/img/common/block1_bg_ttl.png) 0 0 no-repeat;
  background-size: 410px 360px;
  height: 360px;
  width: 410px;
  position: absolute;
  left: 0;
  right: 0;
  top: -170px;
  margin: 0 auto;
}

.guide_contet_text p:last-child {
  margin-bottom: 0;
}

.guide_contet_text p {
  margin-bottom: 30px;
}

.guide_onepoint_box .caution_ttl {
  font-weight: bold;
  background: #f88400;
  display: inline-block;
  color: #fff;
  padding: 6px 30px 0;
  margin-bottom: 0;
}

.guide_onepoint_box .caution_text {
  border: 6px solid #f88400;
  padding: 20px;
  font-weight: bold;
  background: #fff;
}

.guide_onepoint_box .caution_text p {
  margin-bottom: 15px;
}

.guide_onepoint_box .caution_text p:last-child {
  margin-bottom: 0;
}


.page_main .guide_img {
  margin-bottom: 30px;
}

.guide_onepoint_box {
  margin-bottom: 30px;
}

.guide_h4_ttl {
  margin-bottom: 10px;
}

.guide_h4_ttl h4 {
  font-size: 18px;
  padding: 5px 10px;
  position: relative;
}

.guide_block.bg_red .guide_h4_ttl h4 {
  border-bottom: 4px solid #f7b997;
  color: #fe4d4d;
}

.guide_block.bg_red .guide_h4_ttl h4::before {content: '';background: #fe4d4d;width: 15%;height: 5px;position: absolute;bottom: -4px;left: 0;}

.guide_block.bg_green .guide_h4_ttl h4 {
  border-bottom: 4px solid #a0d6b2;
  color: #093;
}

.guide_block.bg_green .guide_h4_ttl h4::before {content: '';background: #009933;width: 15%;height: 5px;position: absolute;bottom: -4px;left: 0;}

.guide_faq_block {
  background: #fff;
  padding: 30px;
  border-radius: 30px;
}

.guide_faq_block dl {
  padding-bottom: 20px;
  border-bottom: 1px dashed #afa9a7;
  margin-bottom: 20px;
}

.guide_faq_block dl dt {
  margin-bottom: 10px;
  position: relative;
  color: #ff4800;
  font-size: 18px;
  min-height: 49px;
  display: flex;
  align-items: center;
}

.guide_faq_block dl dd {
  margin-bottom: 0;
  position: relative;
  min-height: 49px;
  display: flex;
  align-items: center;
}

.guide_faq_block .qt::before {content: '';background: url(assets/img/guide/icon_q.png) 0 0 no-repeat;background-size: 49px;height: 49px;width: 49px;position: absolute;left: 0;top: 50%;margin-top: -25px;}

.guide_faq_block .qt {padding-left: 60px;}

.guide_faq_block .as::before {content: '';background: url(assets/img/guide/icon_a.png) 0 0 no-repeat;background-size: 49px;height: 49px;width: 49px;position: absolute;left: 0;top: 50%;margin-top: -25px;}

.guide_faq_block .as {padding-left: 60px;}

.guide_faq_block dl dd p:last-child {
  margin-bottom: 0;
}

.guide_block p {
  margin-bottom: 20px;
}

ol.guide_number {
  counter-reset: cp_clist;
  list-style-type: none;
  padding: 0;
}

ol.guide_number li {
  position: relative;
  line-height: 1.5em;
  padding: 0.5em 0.5em 0.5em 36px;
}

ol.guide_number li::before {
    position: absolute;
    display:inline-block;
    top: 50%;
    left: 0;
    counter-increment: cp_clist;
    content: counter(cp_clist);
    padding: 0 0.2em 0 0.2em;
    background: #f88400;
    color: #fff;
    font-weight:bold;
    font-size: 15px;
    border-radius: 50%;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align:center;
    transform: translateY(-50%);
}
.caution_text ol:last-child {
  margin-bottom: 0;
}

.guide_number .big_text {
  font-size: 17px;
  color: #f88400;
}

.guide_number .small_text {
  font-size: 15px;
}

.text_red{
  color: #fe4d4d;
}

.guide_onepoint_list li{
  position: relative;
}
.guide_onepoint_list li::before{
  content: '';
  background: url(assets/img/about/icon_list_check.png) 0 0 no-repeat;
  background-size: 15px 16px;
  height: 16px;
  width: 15px;
  position: absolute;
  left: 0;
  top: 2px;
}
.guide_onepoint_list {
  margin-bottom: 15px;
}

.guide_onepoint_list:last-child {
  margin-bottom: 0;
}

.guide_onepoint_list li {
  padding-left: 20px;
  margin-bottom: 10px;
}

.guide_onepoint_list li:last-child {
  margin-bottom: 0;
}

/** 関連リンク **/
.top_bnr_sns {
  max-width: 500px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  gap: 10px 30px;
  border-radius: 10px;
  padding: 10px;
  margin-bottom: 20px;
  justify-content: center;
}

.sns_ttl {
  margin-bottom: 0;
}

.sns_links {
  margin-bottom: 0;
  display: flex;
  column-gap: 15px;
}

.sns_links li {
  width: 35px;
}

.sites_links {
  display: flex;
  flex-wrap: wrap;
}

.site_link_box {
  width: 22%;
  margin-right: 4%;
  margin-bottom: 40px;
  border: 1px solid #a8a8a8;
}

.site_link_box:nth-child(4n) {
  margin-right: 0;
}

.site_link_box a {
  display: block;
  color: #5090bc;
  position: relative;
  transition: all .5s;
}

.site_link_box a:hover{
  color: #000;
  text-decoration: none;
}

.terms_contents .sitelink_ttl {
  display: block;
  font-size: 16px;
  line-height: 1.5;
  margin-top: 0;
  text-align: left;
  padding: 15px 27px 15px 10px;
  font-weight: 700;
  background: #ffefe7;
  margin-bottom: 0;
}

.site_link_box figure {
  border-top: 1px solid #a8a8a8;
  padding: 10px;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
}

.page_main .link-shimakcoto img,
.page_main .link-shimanenote img,
.page_main .link-shimanekan img {
  height: 77px;
  width: auto;
}

.site_link_box:nth-child(6) figure, .site_link_box:nth-child(8) figure {
  padding: 5px;
}

.site_link_box a:after {
  content: "";
  background: url(assets/img/sites/icon_blank.png) 0 0 no-repeat;
  background-size: 16px;
  height: 16px;
  width: 16px;
  position: absolute;
  right: 10px;
  top: 10px;
}

/** しまっちとは **/
.about_section1 {
  margin-bottom: 70px;
  margin-top: -30px;
}

.about_main_ttl {text-align: center;margin-bottom: 30px;}

.about_main_ttl h2 {
  display: inline-block;
  position: relative;
  padding-top: 140px;
  font-size: 30px;
  margin-bottom: 0;
}

.about_main_ttl h2::before {content: '';background: url(assets/img/about/bg_ttl_h2.png) 0 0 no-repeat;background-size: 250px 127px;height: 127px;width: 250px;position: absolute;left: 0;right: 0;top: 0;margin: 0 auto;}

.about_main_ttl h2 > span.small {
  display: block;
  font-size: 16px;
}

.about_main_ttl h2 > span.big {
  font-size: 44px;
}

.about_flow_icon {
  text-align: center;
  margin-bottom: 20px;
}

.about_catch_text {
  max-width: 785px;
  width: 100%;
  margin: 0 auto 35px;
  text-align: center;
  background-image: url(assets/img/guide/img_frame_lt.png),url(assets/img/guide/img_frame_rt.png),url(assets/img/guide/img_frame_lb.png),url(assets/img/guide/img_frame_rb.png);
  background-repeat: no-repeat;
  background-position: top left,top right, bottom left, bottom right;
  padding: 90px 50px;
  position: relative;
}

.about_catch_text h3 {
  font-size: 35px;
  display: inline-block;
  position: relative;
}


.about_catch_text::before {content: '';background: url(assets/img/about/bg_catchcopy.png) 0 0 no-repeat;background-size: 474px 224px;height: 224px;width: 474px;position: absolute;top: 0;right: 0;bottom: 0;left: 0;margin: auto;}

.about_img {
  margin-bottom: 20px;
}

.about_block img {
  max-width: 100%;
}

.about_main_text {
  text-align: center;
}

.about_section2 {
  position: relative;
  padding-bottom: 155px;
}

.page_main .about_img {
  text-align: center;
  margin-bottom: 60px;
}

.about_point_list {
  max-width: 650px;
  width: 100%;
  margin: 0 auto;
  margin-bottom: 40px;
}

.about_point_list li {
  font-size: 25px;
  list-style-type: none;
  position: relative;
  padding-left: 50px;
  margin-bottom: 30px;
}

.about_point_list li:nth-child(1)::before {content: '';background: url(assets/img/about/icon_point1.png) 0 0 no-repeat;background-size: 43px 55px;height: 55px;width: 43px;position: absolute;left: 0;top: 50%;margin-top: -32px;}

.about_point_list li:nth-child(2) {
  margin-bottom: 0;
  margin-left: 40px;
}

.about_point_list li:nth-child(2)::before {
  content: '';
  background: url(assets/img/about/icon_point2.png) 0 0 no-repeat;
  background-size: 43px 55px;
  height: 55px;
  width: 43px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -32px;
}

.about_point_main {
  text-align: center;
  margin-bottom: 20px;
}

.about_point_main h3 {
  font-size: 30px;
  text-align: center;
  position: relative;
  display: inline-block;
  padding: 0 130px 20px 140px;
  line-height: 1.8;
}

.about_point_main h3::before {content: '';background: url(assets/img/about/icon_point_left.png) 0 0 no-repeat;background-size: 153px 95px;height: 95px;width: 135px;position: absolute;left: 0;bottom: 0;}

.about_point_main h3::after {
  content: '';
  background: url(assets/img/about/icon_point_right.png) 0 0 no-repeat;
  background-size: 153px 95px;
  height: 95px;
  width: 135px;
  position: absolute;
  right: 0;
  bottom: 0;
}

.about_point_main h3 span {
  padding: 0 5px 2px;
  margin: 0 5px;
  background: linear-gradient(transparent 70%, #edde7b 70%);
}

.about_point_main h3 span.pickup_orenge {
  color: #dc4a1d;
}

.about_point_main h3 span.pickup_green {
  color: #57b38f;
}

.about_point_sav {
  text-align: center;
  position: relative;
  padding-top: 40px;
  margin-top: -30px;
  z-index: 2;
}

.about_point_sav h3 {
  font-size: 32px;
  display: inline-block;
  background: url(assets/img/about/icon_nyoro.png) 0 bottom repeat-x;
  padding: 5px 0;
  position: relative;
}

.about_point_sav h3 > span {
  color: #e94e1d;
}

.about_point_sav::before {content: '';background: url(assets/img/about/icon_illustration1.png) 0 0 no-repeat;background-size: 188px 81px;height: 81px;width: 188px;position: absolute;left: 0;top: 0;}

.about_section2::after {content: '';background: url(assets/img/about/icon_person.png) center bottom no-repeat;background-size: 256px 134px;height: 134px;width: 256px;position: absolute;left: 0;right: 0;bottom: 0;margin: 0 auto;}


.about_flow_box {
  position: relative;
  padding-bottom: 50px;
}

.about_flow_head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.about_flow_box .step {
  font-size: 32px;
  min-height: 70px;
  width: 23%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-content: center;
  margin-bottom: 0;
  margin-right: 1%;
}

.not_registr_box .about_flow_box:nth-child(odd) .step,
.guide_registr_box .about_flow_box:nth-child(even) .step  {
  background: url(assets/img/guide/bg_flow_green.png) center no-repeat;
  background-size: contain;
}

.guide_registr_box .about_flow_box:nth-child(odd) .step {
  background: url(assets/img/guide/bg_flow_red.png) center no-repeat;
  background-size: contain;
}


.about_flow_box .step span {
  display: block;
}

.about_flow_head h3 {
  font-size: 31px;
  width: 76%;
}

.about_flow_body {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-left: 160px;
}

.about_flow_body figure {
  width: 42%;
  margin-right: 3%;
}

.about_flow_text {
  width: 47%;
}

.not_registr_box .about_flow_box:nth-child(odd)::before,
.guide_registr_box .about_flow_box:nth-child(even)::before {content: '';background: url(assets/img/about/icon_step_line1.png) 0 0 repeat-y;background-size: auto;height: 62%;
  width: 7px;
  position: absolute;
  left: 100px;
  top: 100px;}

.not_registr_box .about_flow_box:nth-child(odd)::after,
.guide_registr_box .about_flow_box:nth-child(even)::after {
  content: '';
  background: url(assets/img/about/icon_step_arrow1.png) 0 0 no-repeat;
  background-size: 47px 23px;
  height: 23px;
  width: 47px;
  position: absolute;
  left: 80px;
  bottom: 20px;
}

.not_registr_box .about_flow_box:nth-child(even)::before,
.guide_registr_box .about_flow_box:nth-child(odd)::before {content: '';background: url(assets/img/about/icon_step_line2.png) 0 0 repeat-y;background-size: auto;height: 62%;
  width: 7px;
  position: absolute;
  left: 100px;
  top: 100px;}

.not_registr_box .about_flow_box:nth-child(even)::after,
.guide_registr_box .about_flow_box:nth-child(odd)::after {
  content: '';
  background: url(assets/img/about/icon_step_arrow2.png) 0 0 no-repeat;
  background-size: 47px 23px;
  height: 23px;
  width: 47px;
  position: absolute;
  left: 80px;
  bottom: 0;
}

.guide_registr_box .about_flow_box:last-child::before, .guide_registr_box .about_flow_box:last-child::after{
  display:none;
}

.about_flow_text > p:last-child {
  margin-bottom: 0;
}

.about_flow_check p {
  margin-bottom: 0;
  font-size: 15px;
}

.about_flow_check {
  padding: 11px;
  background: #ffe5d8;
  border-radius: 20px;
  position: relative;
  text-align: center;
  margin-bottom: 15px;
  margin-top: 10px;
}

.about_flow_check::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -25px;
  margin-top: -7px;
  border: 9px solid transparent;
  border-right: 20px solid #ffe5d8;
  z-index: 0;
}

.about_flow_check::after {
  content: '';
  background: url(assets/img/about/icon_comment_check.png) 0 0 no-repeat;
  background-size: 100px 47px;
  height: 47px;
  width: 100px;
  position: absolute;
  left: 10px;
  top: -22px;
}

.about_section4 {
  padding: 70px 0;
}

.about_btn_more_x2 {
  max-width: 870px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  margin-top: 40px;
}

.about_btn {
  width: 50%;
}

.about_btn a {
  display: block;
  text-align: center;
  font-size: 18px;
  color: #fff;
  padding: 20px;
  position: relative;
}

.about_btn:nth-child(1) a {
  border-radius: 50px 0 0 50px;
}

.about_btn:nth-child(2) a {
  border-radius: 0 50px 50px 0;
}

.about_btn a::after {
  content: "";
  background: url(assets/img/common/icon_arrow_white.png) 0 0 no-repeat;
  background-size: 14px 6px;
  height: 6px;
  width: 14px;
  position: absolute;
  right: 20px;
  top: 50%;
  margin-top: -3px;
}
.guide_sav_text {
  text-align: center;
  margin-bottom: 20px;
}

.guide_sav_text p {
  margin-bottom: 0;
  font-size: 18px;
  font-weight: bold;
  display: inline-block;
  line-height: 2;
  position: relative;
  padding: 10px 40px;
}

.guide_sav_text p::before {content: '';background: url(assets/img/about/icon_sav_frame_l.png)   left center no-repeat;background-size: 18px 100%;height: 100%;width: 18px;position: absolute;left: 0;top: 0;}

.guide_sav_text p::after {
  content: '';
  background: url(assets/img/about/icon_sav_frame_r.png) left center no-repeat;
  background-size: 18px 100%;
  height: 100%;
  width: 18px;
  position: absolute;
  right: 0;
  top: 0;
}

.about_flow_box {
  background: #fff;
  padding: 30px 10px;
}

.not_registr_box {
  margin-bottom: 30px;
  position: relative;
  padding-left: 50px;
}
.guide_registr_box{
  position: relative;
  padding-left: 50px;
}
.not_registr_box::before {
  content: '';background: #ea4e1e url(assets/img/about/icon_not_touroku.png) center top 20px no-repeat;width: 50px;height: 100%;position: absolute;left: 0;top: 0;display: block;}

  .guide_registr_box::before {
    content: '';background: #57b38f url(assets/img/about/icon_touroku.png) center top 20px no-repeat;width: 50px;height: 100%;position: absolute;left: 0;top: 0;display: block;}

    .guide_registr_point_box {
      max-width: 710px;
      width: 100%;
      margin: 30px auto 0;
      background: #fff;
      border: 3px dashed #33dda3;
      padding: 25px 25px 15px;
  }

  .guide_registr_point_box ul {
      margin-bottom: 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
  }

  .guide_registr_point_box h3 {
      font-size: 26px;
      font-weight: bold;
      color: #57b38f;
      text-align: center;
      margin-bottom: 15px;
  }

  .guide_registr_point_box ul li {
      position: relative;
      margin-right: 7%;
      margin-bottom: 15px;
      padding-left: 20px;
  }

  .guide_registr_point_box ul li::before{
    content: '';
    background: url(assets/img/about/icon_list_check.png) 0 0 no-repeat;
    background-size: 15px 16px;
    height: 16px;
    width: 15px;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -8px;
  }

  .about_section2 .page_inner::after{
    content: '';
    background: url(assets/img/common/block2_icon3.png) 0 0 no-repeat;
    background-size: 94px 165px;
    height: 165px;
    width: 94px;
    position: absolute;
    right: 0;
    bottom: 0;
  }

  .wp-embed-excerpt br {
    display: none;
}

.sav_note {
  font-weight: normal;
  margin-bottom: 0;
  margin-top: -10px;
  color: #000;
}

.about_section3 .about_main_ttl {
  margin-top: 50px;
}
.about_section3 .about_main_ttl h2:before {
  display: none;
}

.about_section3 .about_main_ttl h2{
  padding-top: 0;
}

.news_flex_box {
  display: flex;
  flex-wrap: wrap;
}

.news_flex_box figure {
  width: 33%;
  margin-right: 3%;
}

.news_flex_box .news_text_box {
  width: 64%;
}

.news_flex_box:not(:last-child) {
  margin-bottom: 40px;
}

.search_note{
  margin: 10px 0 0;
  font-size: 15px;
}

.marker1{
  background: url(assets/img/top/icon_marker1.png) 0 bottom no-repeat;
  background-size: 100%;
  padding: 17px 0;
}
.marker2{
  background: url(assets/img/top/icon_marker2.png) 0 bottom no-repeat;
  background-size: 100%;
  padding: 24px 0;
}

.news_owner_flow {
  display: flex;
  flex-wrap: wrap;
  max-width: 770px;
  width: 100%;
  margin: 0 auto;
}

.news_owner_flow_box {
  width: 21%;
  margin-right: 5%;
  position: relative;
}

.news_owner_flow_box:last-child {
  margin-right: 0;
}

.news_owner_flow_box:not(:last-child):after{
  content: '';
  background: url(assets/img/news/owner_flow_arrow.png) 0 0 no-repeat;
  background-size: 22px 40px;
  height: 40px;
  width: 20px;
  position: absolute;
  right: -30px;
  top: 50%;
  margin-top: -20px;
}
.archive_lists .not_list_text {
  width: 100%;
  max-width: 800px;
  margin: 0 auto 30px;
}

.page_main .news_single_img {
  max-width: 750px;
  width: 100%;
  margin: 0 auto;
}

.news_owner_flow_text {
  font-weight: bold;
  font-size: 18px;
}

.news_tag_owner {
  background: #f84400;
  display: inline-block;
  color: #fff;
  font-weight: bold;
  padding: 3px 20px;
  border-radius: 5px;
  margin-bottom: 0;
}

.news_tag_owner + h4 {
  margin-top: 10px;
}

.news_owner_step_block {
  display: flex;
  flex-wrap: wrap;
}

.news_owner_step_block figure {
  width: 40%;
  margin-right: 3%;
}

.news_owner_step_block figure img {
  max-width: 100%;
}

.news_owner_step_text {
  width: 57%;
}

.news_owner {
  background: #fff6f2;
  border: 2px solid #f84400;
  padding: 20px;
}

.news_owner dt {
  border-bottom: 2px solid #f84400;
  padding: 2px 5px;
  margin-bottom: 10px;
}

.news_owner_step_text dd {
  margin-bottom: 0;
}

.news_owner_step_text dd p {
  font-size: 15px;
  margin-bottom: 10px;
}

.news_supporter {
  background: #f5fffb;
  border: 2px solid #57b38f;
  padding: 20px;
}

.news_supporter dt {
  border-bottom: 2px solid #5bb592;
  padding: 2px 5px;
  margin-bottom: 10px;
}

.news_owner_step_text dd ul {
  margin-bottom: 0;
  font-size: 15px;
}

.news_owner_step_text dl {
  position: relative;
}

.news_owner_step_text dl:not(:last-child) {
  margin-bottom: 50px;
}

.news_owner_step_text dl:not(:last-child)::after {content: '';position: absolute;bottom: -55px;left: 50%;margin-left: -10px;box-sizing: border-box;width: 20px;height: 20px;border: 20px solid transparent;border-left: 20px solid #f84400;-webkit-transform: rotate(90deg);transform: rotate(90deg);}

.single_text_area .about_main_ttl {
  margin-top: 40px;
}

.single_text_area .about_main_ttl h2 {
  background: transparent;
  color: #000;
  padding: 0;
  border: none;
}

.single_text_area .about_main_ttl h2::before {
  display: none;
}

table.schedule {border-top: 1px solid #e8e8e8;border-radius: 0;margin: 20px auto 30px;overflow: hidden;width: 100%;border-spacing: 0;background: none repeat scroll 0 0 #fff;}

table.schedule th, table.schedule td{
    border-bottom: 1px solid #e8e8e8;
    transition: background-color 0.3s ease 0s;
    padding: 10px;
}

table.schedule tr:nth-child(2n + 1) td {
    background: none repeat scroll 0 0 #f7f7f7;
}
table.schedule tr th {
    text-align: left;
    font-weight: bold;
    background: #33dda3;
    padding: 2px 10px;
}

.news_syutsuen_block {
    display: flex;
    flex-wrap: wrap;
}

.news_syutsuen_box {
    width: 30%;
    margin-right: 3%;
    background: #fff3ef;
    padding: 25px;
    border-radius: 10px;
}

.news_syutsuen_box h4 {
    border-bottom: 0;
    font-size: 16px;
    margin: 10px 0;
    padding: 0;
    color: #000;
    text-align: center;
}

.news_syutsuen_text p {
    margin-bottom: 0;
    font-size: 15px;
}

.news_syutsuen_text {
    margin-bottom: 20px;
}

.news_syutsuen_info {
    background: #fff;
    border: 1px solid #bbb;
    border-radius: 10px;
}

.news_syutsuen_info dt {
    padding: 10px;
    border-bottom: 1px dashed #bbb;
    font-size: 15px;
}

.news_syutsuen_info dd {
    font-size: 14px;
    padding: 10px;
}

.single_text_area .news_event_tag_list {
    margin-bottom: 0;
    display: flex;
    flex-wrap: wrap;
}

.single_text_area .news_event_tag_list li {
    list-style-type: none;
    background: #ffd900;
    font-weight: bold;
    padding: 5px 9px 5px 16px;
    margin-right: 3%;
    border-radius: 5px;
    font-size: 13px;
    margin-bottom: 10px;
    margin-left: 0;
}

.single_text_area .news_event_tag_list li::before {content: '#';margin-right: 3px;}

/** キャンセル処理追加分 **/
.complete_text_box > p.text_center{
  text-align: center;
}
.sav_ttl{
  font-size: 23px;
}
.btn_mail input[type="submit"], .btn_mail a{
  background: #40ff7b;
  border: 2px solid #40ff7b;
}
.btn_all_mail input[type="submit"], .btn_all_mail a{
  background: #ff6e36;
  border: 2px solid #ff6e36;
}
.btn_mail input[type="submit"]:hover, .btn_mail a:hover,
.btn_all_mail input[type="submit"]:hover, .btn_all_mail a:hover{
  background: #fff;
  color: #000;
}
.mail_action_btn {
  max-width: none;
}

.mail_action_btn .btn_box {
  width: 31%;
  margin-right: 3%;
}

.mail_action_btn .btn_box:last-child {
  margin-right: 0;
}

.btn_member input[type="submit"] {
  display: block;
  background: #ffda40;
  border: 2px solid #ffda40;
  padding: 8px;
  text-align: center;
  color: #000;
  font-weight: bold;
  border-radius: 50px;
  width: 100%;
  cursor: pointer;
}
.btn_member input[type="submit"]:hover{
  background: #fff;
}
.pg_member_list_box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 20px;
  padding: 0 20px 20px;
  border-bottom: 1px dashed #bbb;
}

.pg_member_date {
  width: 70%;
  margin-right: 2%;
}

.pg_member_date > dl {
  display: flex;
  flex-wrap: wrap;
}

.pg_member_date > dl > dt {
  font-size: 18px;
  width: 35%;
}

.pg_member_date > dl > dt::after {content: '：';}

.pg_member_list {
  max-width: 870px;
  width: 100%;
  margin: 0 auto;
}

.pg_cancel_btn {
  width: 28%;
}

.pg_cancel_btn input[type="submit"] {
  display: block;
  background: #ffda40;
  border: 2px solid #ffda40;
  padding: 8px;
  text-align: center;
  color: #000;
  font-weight: bold;
  border-radius: 50px;
  width: 100%;
  cursor: pointer;
}
.pg_cancel_btn input[type="submit"]:hover{
  background: #fff;
}

.pg_member_date > dl > dd {
  width: 65%;
}

.report_action_btn {
    max-width: 650px;
    display: flex;
    flex-wrap: wrap;
}

.report_action_btn > .btn_box {
    width: 47%;
    margin-right: 5%;
}

.report_action_btn > .btn_box:last-child {
    margin-right: 0;
}

.report_action_btn .btn_orange{
  background: #ff6e36;
  border: 2px solid #ff6e36;
}
.report_action_btn .btn_box a:hover {
  background: #fff;
  color: #000;
}

.btn_cancel input[type="submit"] {
    display: block;
    background: #ffda40;
  border: 2px solid #ffda40;
    padding: 8px;
    text-align: center;
    color: #000;
    font-weight: bold;
    border-radius: 50px;
    width: 100%;
    cursor: pointer;
}
.btn_cancel input[type="submit"]:hover{
  background: #fff;
}
.submit_btn.active.submit_cancel{
  background: #ffda40;
  border: 2px solid #ffda40;
  color: #000;
}

.submit_btn.active.submit_cancel:hover{
  background: #fff;
}

.sinple_text_link {
  font-weight: bold;
  color: #000;
  display: inline-block;
  margin-top: 20px;
  border-bottom: 2px solid #000;
  position: relative;
}

.sinple_text_link::after {
  content: '';
  position: absolute;
  top: 50%;
  right: -15px;
  margin-top: -5px;
  width: 10px;
  height: 10px;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.sinple_text_link:hover {
  color: #000;
  text-decoration: none;
  border-bottom: 2px solid transparent;
}
a.page-numbers, .tablenav-pages .current{
  border-top: none;
  border-bottom: none;
}

.cancel_form_block {
  margin-top: 50px;
  border-top: 1px dashed #bbb;
  padding-top: 40px;
}

.cancel_form_block dl {
  max-width: 700px;
  width: 100%;
  margin: 0 auto;
}

.cancel_form_block dl dt{
  font-size: 18px;
  margin-bottom: 6px;
}
.cancel_form_block dl dd textarea {
  min-height: 150px;
}
.pg_cancel_ttl {
  margin-bottom: 40px;
}

.pg_cancel_ttl h2 {
  margin-bottom: 0;
  font-size: 22px;
  border-left: 8px solid #ff4800;
  padding: 0 10px;
  color: #000;
}

.cancel_note_box {background: #ffe9df;padding: 30px;max-width: 750px;margin: 30px auto 0;border-radius: 5px;}

.cancel_note_box dt {
    font-size: 18px;
    margin-bottom: 10px;
}

.cancel_note_box dd p {
    margin: 0;
}

.bg_line_orange{
  background: url(./assets/img/top/icon_marker1.png) 0 bottom no-repeat;
  background-size: 100% 15px;
  color: #000;
  padding: 5px;
}
.bg_line_green{
  background: url(./assets/img/top/icon_marker1_green.png) 0 bottom no-repeat;
  background-size: 100% 15px;
  color: #000;
  padding: 5px;
}

.pg_member_text {
  margin-bottom: 40px;
}

/**
追加CSS設定分
**/
.required {
  display: inline-block;
  width: 40px;
  margin-right: 3px;
  padding: 3px 0;
  margin-left: 10px;
  text-align: center;
  color: #fff !important;
  font-size: 14px;
  background: #ff4545;
}
input[type=checkbox] {
  -webkit-appearance: auto;
  -moz-appearance: auto;
  appearance: auto;
}
#loginform {
  border-bottom: 1px dashed #bbb;
  padding-bottom: 80px;
  margin-bottom: 70px;
}
.cont_box {
  border-bottom:none;
  line-height:2em;
}
.quit_text {
  text-align:right !important;
}
#net_shop_admin_flow {
  display:none;
}

.comment_note{
  color: #888;
  font-size: 14px;
}

/** しまサポ掲載 **/
.tag--shimasapo {
  background: #e94917;
  color: #fff;
  width: fit-content;
  padding: 3px 15px;
  font-size: 13px;
  border-radius: 5px;
  margin-top: 3px;
  margin-bottom: 5px;
}
.shimasapo_desc {
  margin-top: 0px;
}

/** 追従バナー **/
.announce_cp_bnr {
  position: fixed;
  right: 0;
  top: 90px;
  display: none;
  z-index: 101;
}
.cp_bnr_item {
  width: 65px;
}
.cp_bnr_item a {
  line-height: 1.3;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 40px 8px 25px;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  font-weight: bold;
  letter-spacing: .1em;
  font-size: 13px;
  position: relative;
}
.cp_bnr_item a:hover{
  opacity: 1;
  text-decoration: none;
}
.cp_bnr_item.cp-orange a {
  background: #ff4900;
  border: 1px solid #ff4900;
  color: #fff;
}
.cp_bnr_item.cp-orange a::before{
  content: "";
  background: url('assets/img/common/icon_contact.png') 0 0 no-repeat;
  background-size: 20px 17px;
  height: 17px;
  width: 20px;
  position: absolute;
  left: 5px;
  right: 0;
  top: 13px;
  margin: 0 auto;
}
.cp_bnr_item.cp-orange a:hover{
  background: #fff;
  color: #ff4900;
}
.cp_bnr_item.cp-orange a:hover::before{
  background: url('assets/img/common/icon_contact_orange.png') 0 0 no-repeat;
  background-size: 20px 17px;
}
.cp_bnr_item:nth-child(2) {
  margin-top: 30px;
}
.cp_bnr_item.cp-green a {
  background: #4EAC88;
  border: 1px solid #4EAC88;
  color: #fff;
}
.cp_bnr_item.cp-green a::before {
  content: "";
  background: url('assets/img/common/icon_download.png') 0 0 no-repeat;
  background-size: 24px;
  height: 24px;
  width: 24px;
  position: absolute;
  left: 0;
  right: 0;
  top: 11px;
  margin: 0 auto;
}
.cp_bnr_item.cp-green a:hover{
  background: #fff;
  color: #4EAC88;
}
.cp_bnr_item.cp-green a:hover::before{
  background: url('assets/img/common/icon_download_green.png') 0 0 no-repeat;
  background-size: 24px;
}

/**
* レスポンシブ
*/
@media screen and (min-width: 601px) {
  .sp_only {
    display: none !important;
  }
}
@media screen and (max-width: 1200px) {
  .nav_login a {
    font-size: 18px;
  }
  .btn_login a {
    font-size: 17px;
  }

  /** 一覧ページ **/
  .page_main::before,
  .page_main::after,
  .page_ttl_box::before {
    opacity: 0.8;
  }

  .search_box {
    position: relative;
    z-index: 2;
  }
}
@media screen and (max-width: 768px) {
  /** ヘッダー **/
  .g_navi li:not(:last-child) {
    margin-right: 2%;
  }
  .main_head {
    width: 50%;
    order: 1;
    position: unset;
  }
  .main_head::after {
    right: 0;
    bottom: auto;
    top: 0;
    max-width: 553px;
    width: 100%;
    height: 100%;
    background-size: 100%;
  }
  .logo {
    margin: 20px 40px;
    text-align: left;
  }
  .logo img {
    max-width: 220px;
    width: 100%;
  }
  .main_slide {
    width: 90%;
    order: 3;
    margin: 0 auto;
  }

  .user_nav {
    order: 2;
    width: 47%;
  }

  .main_inner {
    position: relative;
  }

  .registration_num_box {
    position: absolute;
    bottom: -30px;
    right: 10px;
    z-index: 3;
    margin: 0;
  }

  /**
  * トップページコンテンツ
  */
  .about_ttl {
    justify-content: center;
  }

  .about_ttl h2 {
    text-align: center;
    font-size: 35px;
  }
  .about_ttl {
    justify-content: center;
  }

  .about_ttl h2 {
    text-align: center;
    font-size: 35px;
  }

  .top_about figure {
    margin: 0 10px;
    padding: 60px 0 30px;
  }

  .top_about figure::before {
    background-size: 414px 155px;
    height: 155px;
    width: 414px;
  }

  .top_about figure::after {
    background-size: 436px 60px;
    height: 60px;
    width: 436px;
  }

  .btn_link {
    margin-top: 20px;
    position: relative;
    z-index: 2;
  }

  .top_about {
    padding-bottom: 45px;
  }

  .section1,
  .section2,
  .section3,
  .section4 {
    padding: 35px 10px;
  }

  .top_program .top_cnt_head::before {
    display: none;
  }

  .top_program .top_cnt_head::after {
    display: none;
  }

  .top_program .ttl_img_h2 h2::after {
    top: -35px;
    background-size: 100%;
    width: 100%;
    height: 0;
    padding-bottom: 91%;
  }

  .archive_box {
    width: 49%;
    margin-right: 2%;
    margin-bottom: 30px;
  }

  .archive_box:nth-child(3n) {
    margin-right: 2%;
  }
  .archive_box:nth-child(2n) {
    margin-right: 0;
  }

  .top_cnt_head {
    margin-bottom: 30px;
  }

  .archive_lists {
    position: relative;
    z-index: 2;
  }

  .section2::after {
    bottom: 340px;
    right: 20px;
  }

  .top_report .top_cnt_head::after {
    display: none;
  }

  .report_list_img .date {
    font-size: 1.2rem;
  }

  .report_list_img figcaption {
    padding: 5px;
    font-size: 14px;
  }
  .info_lists {
    padding: 0;
  }

  .top_info .btn_link {
    margin-top: 30px;
  }

  .top_shimanemap {
    margin: 50px 10px;
  }

  .shimane_desc {
    position: unset;
    padding: 50px 20px 0;
    margin-bottom: -19%;
  }

  .img_shimane_map {
    padding: 0 20px;
  }

  .top_catchcopy {
    background-size: auto 250px;
  }

  .top_catchcopy_text {
    min-height: 250px;
  }

  .top_catchcopy_text h2 {
    font-size: 23px;
  }
  .top_bnr_area {
    margin: 35px 0 50px;
  }
  .top_bnr_lists {
    flex-wrap: wrap;
    max-width: none;
    margin: 0 10px;
    width: auto;
    justify-content: flex-start;
    row-gap: 0;
  }
  .top_bnr_lists li {
    width: 31%;
    margin-bottom: 20px;
    text-align: center;
  }
  .top_bnr_lists li:not(:last-child) {
    margin-right: 3%;
  }
  .top_bnr_lists li:nth-child(3n) {
    margin-right: 0;
  }
  .bnr_link_text {
    margin-top: 0;
  }
  .bnr_link_text a {
    font-size: 16px;
  }

  /*利用の手引き*/
  .guid_link_navi > ul li {
    width: 48%;
  }
  .guid_link_navi>ul li:nth-child(3n){
    margin-right: 2%;
  }
  .guid_link_navi > ul li:nth-child(2n) {
      margin-right: 0;
  }

  .guid_link_navi > ul li a {
    min-height: 74px;
  }

  .guid_link_navi > h2 {
      font-size: 24px;
  }

  .guide_h3_ttl {
      margin-left: 0;
  }

  .guide_h3_ttl h3 {
      padding: 5px 0 0 50px;
  }

  .guide_point_box {
      margin: -40px 10px 0;
  }

  .guide_floe_box > dl > dt {
      width: 240px;
  }

  .guide_floe_box > dl > dd {
      width: 100%;
  }

  /** 関連リンク **/
  .site_link_box {
    width: 31.3%;
    margin-right: 3%;
    margin-bottom: 25px;
  }
  .site_link_box:nth-child(3n) {
    margin-right: 0;
  }
  .site_link_box:nth-child(4n) {
    margin-right: 3%;
  }
}

@media screen and (max-width: 600px) {
  body {
    font-size: 18px;
  }
  .pc_only {
    display: none !important;
  }
  .section1,
  .section2,
  .section3,
  .section4 {
    padding: 45px 10px;
  }

  .page_header{
    z-index: 90;
  }

  .marker1{
    padding: 10px 0;
  }

  .marker2{
    padding: 15px 0;
  }

  .form_contents,
  .complete_wrap,
  .mypage_navi,
  .archive_wrap,
  .single_cnts,
  .terms_contents,
  .login_register_wrap {
    position: relative;
    z-index: 2;
  }

  /** ヘッダー **/
  .logo {
    margin: 0;
    padding: 10px;
    line-height: 1;
  }
  .header_inner {
    padding: 0;
    height: 66px;
  }
  .h_logo {
    width: auto;
    margin-right: 0;
    padding: 0;
  }
  .h_login_btn {
    position: absolute;
    right: 60px;
    top: 0;
    z-index: 2;
  }

  .h_login_btn a {
    height: 66px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #ff5400;
    color: #fff;
    padding: 10px 30px;
    font-size: 15px;
  }

  /*** ハンバーガーメニュー ***/
  .sp_navi_trigger {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1000;
    width: 61px;
    height: 66px;
    background: #009933;
  }
  .sp_navi_trigger::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 26px;
    height: 1px;
    margin: 0 0 0 -11px;
    background: #fff;
    box-shadow: 0 -6px 0 0 #fff, 0 6px 0 0 #fff;
    transition: 0.4s;
  }
  .sp_navi_trigger.active {
    background: rgba(255, 255, 255, 0.5);
    top: -10px;
  }
  .sp_navi_trigger.active::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    height: 1px;
    margin: 0 0 0 -8px;
    background: #444;
    box-shadow: none;
    transform: rotate(45deg);
    transition: 0.4s;
  }
  .sp_navi_trigger.active::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 16px;
    height: 1px;
    margin: 0 0 0 -8px;
    background: #444;
    box-shadow: none;
    transform: rotate(-45deg);
    transition: 0.4s;
  }
  .sp_navi_inner {
    display: none;
  }
  .sp_navi_inner.active {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    width: 100%;
    height: 100%;
    background: #70a183;
    padding-top: 57px;
  }
  .sp_navi_inner .sp_navigation {
    position: relative;
    overflow: scroll;
    height: 100%;
    color: #fff;
    font-size: 0.85em;
    line-height: 50px;
  }
  .sp_navi_inner .top_navi {
    border-bottom: rgba(255, 255, 255, 0.4) 1px solid;
    line-height: 60px;
    font-size: 1em;
    font-weight: 600;
    background: #009933;
  }
  .sp_navi_inner .top_navi a::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -5px;
    width: 0.4em;
    height: 0.4em;
    margin-right: 0.5em;
    border-top: #fff 1px solid;
    border-right: #fff 1px solid;
    transform: rotate(45deg);
  }
  .sp_navi_inner .sp_navigation li a {
    display: block;
    color: #fff;
    position: relative;
    padding: 0 1em;
    border-bottom: rgba(255, 255, 255, 0.4) 1px dotted;
    font-weight: normal;
    font-size: 18px;
  }
  .sp_navi_inner .sp_navigation li a::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -5px;
    width: 0.5em;
    height: 0.5em;
    margin-right: 0.5em;
    border-top: #fff 1px solid;
    border-right: #fff 1px solid;
    transform: rotate(45deg);
  }
  .sp_navi_inner .sp_navigation li {
    line-height: 60px;
  }
  .sp_navi_inner .sp_navigation .top_navi {
    line-height: 60px;
  }
  .sp_navi_inner .sp_navigation span.top_navi {
    display: block;
    padding: 0 1em;
  }

  /** トップページコンテンツ **/
  .main_slide {
    margin: 0;
    width: 100%;
  }

  .registration_num_box p {
    display: flex;
    align-items: center;
}

.num_count {
    font-size: 32px;
    margin: -10px 0px 0 8px;
}

.ttl_num {
    font-size: 18px;
    margin-bottom: 0;
}

.registration_num_box {
    height: 70px;
    right: auto;
    left: 0;
    bottom: -39px;
    width: 310px;
}

  .main_visual {
    margin-bottom: 50px;
  }
  .top_about{
    padding-top: 30px;
  }
  .about_ttl {
    padding: 0 10px;
    position: relative;
    z-index: 2;
  }

  .about_ttl h2 {
    font-size: 5vw;
    text-align: left;
  }

  .top_about figure::before {
    position: unset;
    display: block;
    background-size: 100%;
    max-width: 414px;
    width: 100%;
    height: auto;
    padding-bottom: 29%;
    margin-bottom: -10%;
  }

  .top_about figure {
    padding: 0;
  }

  .top_about figure::after {
    position: unset;
    display: block;
    background-size: 100%;
    max-width: 436px;
    width: 100%;
    height: auto;
    padding-bottom: 15%;
    margin-left: auto;
    margin-top: -3%;
  }

  .btn_link {
    margin-top: 30px;
  }
  .top_community .top_cnt_head::before {
    left: -100px;
  }
  .top_community .top_cnt_head::after {
    right: 0;
  }
  .ttl_img_h2 {
    max-width: 250px;
    margin: 0 auto;
  }

  /*.report_list_box {
    width: 100%;
    margin-right: 0;
  }*/

  .top_info .top_cnt_head::before,
  .top_info .top_cnt_head::after {
    display: none;
  }

  .info_list_box {
    max-width: 440px;
    width: 100%;
    margin: 0 auto 30px;
  }

  .info_list_box:last-child {
    margin-right: auto;
  }

  .top_info .btn_link {
    margin-top: 0;
  }

  .archive_cnt h3 {
    font-size: 15px;
  }
  .top_cnt_head_txt p br {
    display: none;
  }

  /** 一覧ページ **/
  .page_main::before,
  .page_main::after {
    opacity: 0.6;
  }

  .page_main > section {
    padding-left: 10px;
    padding-right: 10px;
  }
  .ttl_g_parts1 h2,
  .ttl_r_parts1 h2 {
    font-size: 28px;
    text-align: center;
  }
  .f_check_list li {
    margin-right: 3%;
  }

  .area_shimane .f_check_list li {
    width: 28%;
    margin-bottom: 15px;
  }

  .search_box .form_contents .area_maps_wrap {
    margin-top: 0;
  }

  .area_shimane:not(:last-child) {
    margin-bottom: 10px;
  }

  .search_box .form_contents .area_maps_wrap dt {
    font-size: 17px;
  }

  .map_note_text {
    text-align: left;
  }

  .f_active_space .f_check_list li,
  .f_active .f_check_list li,
  .f_field.f_check_list li,
  .f_genre_field .f_check_list li { /*変更*/
    width: 48%;
  }

  .f_active_space .f_check_list li:nth-child(3n),
  .f_active .f_check_list li:nth-child(3n),
  .f_field .f_check_list li:nth-child(3n),
  .f_genre_field .f_check_list li:nth-child(3n) {
    margin-right: 3%;
  }

  .f_active_space .f_check_list li:nth-child(2n),
  .f_active .f_check_list li:nth-child(2n),
  .f_field .f_check_list li:nth-child(2n),
  .f_genre_field .f_check_list li:nth-child(2n) {
    margin-right: 0;
  }

  .page_head_wrap {
    padding-top: 30px;
    margin-bottom: 40px;
  }

  .page_ttl_box::before {
    display: none;
  }
  .datepiker_on #main {
    z-index: 90;
  }
  .report_list_wrap .report_list_box {
    width: 48%;
    margin-right: 3%;
  }

  .report_list_wrap .report_list_box:nth-child(3n) {
    margin-right: 3%;
  }
  .report_list_wrap .report_list_box:nth-child(2n) {
    margin-right: 0;
  }

  /** 下層ページメイン **/
  .page_ttl_box .page_ttl::after {
    right: 0;
    top: -20px;
  }

  .page_login .login_block {
    width: 100%;
    margin-right: 0;
    padding: 0;
    background: transparent;
    border-bottom: 1px dashed #ccc;
    padding-bottom: 40px;
    margin-bottom: 40px;
}

.page_login .register_block {
    background: transparent;
    width: 100%;
    padding: 0;
}

.page_login .register_desc_box p {
    margin-bottom: 0;
}

.page_login {
    margin-top: -40px;
}

  /** フォーム **/
  .cont_box dt {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
  .cont_box > dt {
    font-size: 21px;
    color: #ff5400;
  }

  .cont_box dd {
    width: 100%;
  }

  .login_block .cont_box dt {
    width: 25%;
    margin-right: 1%;
    margin-bottom: 0;
  }
  .login_block .cont_box dd{
    width: 74%;
  }

  .form_contents input[type="text"],
  .form_contents input[type="email"],
  .form_contents input[type="tel"],
  .form_contents input[type="url"],
  .form_contents input[type="password"],
  .form_contents textarea {
    width: 100%;
  }

  .member_name {
    width: 48%;
    margin-right: 3%;
  }

  .member_name:last-child {
    margin-right: 0;
  }

  .address_block dl {
    flex-wrap: wrap;
  }

  .zip_box input[type="text"] {
    width: 30%;
  }

  .search_box .form_contents .area_maps_wrap,
  .optional_input_content .cont_option_box .area_maps_wrap {
    margin-bottom: 30px;
    margin-top: 0;
  }

  .shimanetouroku_desc {
    padding: 20px;
  }
  .parts_radio label {
    font-size: 18px;
    padding: 10px 20px 10px 5px;
  }
  .self_registration_btn .btn_box {
    width: 100%;
    margin-right: 0;
  }

  .self_registration_btn .btn_box:first-child {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .dantai_details_block dl,
  .dantai_link_block dl {
    flex-wrap: wrap;
  }
  .form_contents input[type="text"],
  .form_contents input[type="email"],
  .form_contents input[type="tel"],
  .form_contents input[type="url"],
  .form_contents input[type="password"] {
    height: 45px;
  }
  .form_note_text p {
    text-align: left;
  }
  .sbumit_box {
    margin-top: 30px;
  }
  .form_contents input[type="text"].datepicker {
    width: 50%;
  }
  .f_data dd > p {
    width: 100%;
    margin-right: 0;
  }

  /** 完了ページ **/
  .complete_text_box > p {
    text-align: left;
  }
  .complete_wrap .btn_x2 > div {
    width: 100%;
  }

  .complete_wrap .btn_x2 > div:first-child {
    margin-right: 0;
    margin-bottom: 25px;
  }

  .complete_wrap .btn_x2 {
    max-width: 420px;
    width: 100%;
    margin-top: 60px;
  }

  /** マイページ **/
  .mypage_navi_box {
    width: 48%;
    margin-bottom: 20px;
    margin-right: 4%;
  }

  .mypage_navi_box:nth-child(2n) {
    margin-right: 0;
  }

  .quit_text {
    margin-top: -5px;
  }

  .mypage_navi {
    margin-bottom: 20px;
  }

  .sav_ttl {
    text-align: left;
    margin-bottom: 15px;
  }

  .mypage_request_wrap .page_inner > p {
    text-align: left;
    margin-bottom: 40px;
  }
  .request_btn_x2 .btn_box {
    width: 100%;
    max-width: 420px;
  }

  .btn_box:first-child {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .btn_delete {
    padding: 5px 25px;
    font-size: 16px;
  }
  .confirm_btn {
    max-width: 420px;
  }
  .confirm_btn .back_btn,
  .confirm_btn .submit_btn {
    width: 100%;
  }

  .confirm_btn .back_btn {
    margin-right: 0;
    order: 2;
  }

  .confirm_btn .submit_btn {
    margin-bottom: 25px;
  }

  .navi_dantai .mypage_navi_box {
    width: 48%;
  }
  .my_favorite_list_box {
    padding: 15px 0;
  }
  .mail_action_btn .btn_box {
    width: 100%;
  }

  .mail_action_btn {
    max-width: 400px;
    margin: 10px auto 0;
  }
  .mail_action_btn .btn_box:first-child {
    margin-right: 0;
  }

  /** お知らせ一覧 **/
  .archive_wrap .info_list_box {
    max-width: unset;
    width: 48%;
    margin-right: 3%;
    margin-left: 0;
  }

  .archive_wrap .info_list_box:nth-child(3n) {
    margin-right: 3%;
  }
  .archive_wrap .info_list_box:nth-child(2n) {
    margin-right: 0;
  }

  /** 詳細ページ **/
  .recruiting_detail_cnts .btn_link {
    margin-top: 50px;
  }
  .cnt_ttl_box .cnt_ttl {
    font-size: 26px;
    line-height: 1.3;
  }

  .share_box {
    width: 100%;
  }

  .cnt_ttl_box {
    margin-bottom: 10px;
  }

  .share_list dt {
    text-align: right;
    width: 45%;
    margin-right: 4%;
  }
  .share_list dd {
    width: 51%;
  }

  .share_list dd span:not(:last-child) {
    margin-right: 5%;
  }


  .addtoany_shortcode a > span {
    width: 30px!important;
    height: 30px!important;
}

.share_list {
    width: 49%;
}

  .comment_count a {
    font-size: 17px;
  }

  .conts_head_l {
    width: 83%;
    margin-right: 3%;
  }

  .page_cnts_head {
    margin-bottom: 25px;
  }

  .single_head_cnts {
    display: flex;
    flex-wrap: wrap;
  }

  .recruiting_detail {
    width: 100%;
    order: 2;
    padding: 20px;
  }

  .single_head_cnts figure {
    order: 1;
    width: 100%;
  }

  .request_btn_lists .btn_single {
    margin: 0 auto;
    max-width: 420px;
  }

  .request_btn_lists .btn_single a {
    padding: 15px;
  }
  .recruiting_ttl {
    margin-bottom: 10px;
  }
  .recruiting_ttl .ttl_h2 {
    font-size: 20px;
  }
  .favorite_btn {
    margin: -5px 0 0 auto;
    max-width: 220px;
  }

  .owner_detail .recruiting_cnts dl dt,
  .program_detail .recruiting_cnts dl dt {
    padding: 15px 10px 0;
    width: 100%;
  }

  .owner_detail .recruiting_cnts dl dd,
  .program_detail .recruiting_cnts dl dd {
    width: 100%;
    padding: 5px 10px 15px;
  }

  .owner_links li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 20px;
  }

  .owner_links li:last-child {
    margin-bottom: 0;
  }

  .owner_links {
    max-width: 420px;
    margin: 20px auto 0;
  }

  .program_detail,
  .owner_detail {
    padding: 50px 0;
  }

  .keyword_links li {
    margin-bottom: 10px;
  }

  .period_box {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
  .recruiting_cnts dl dt {
    width: 100%;
    margin-right: 0;
  }

  .page_head_wrap .recruiting_cnts dl dt {
    justify-content: left;
    padding-bottom: 3px;
    font-size: 18px;
    padding: 10px 0 0;
  }

  .recruiting_cnts dl dd {
    width: 100%;
    padding: 0 0 10px;
    font-size: 18px;
  }
  .request_btn_lists {
    max-width: none;
    width: 100%;
    margin: 0 auto;
  }
  .request_btn_lists .btn_box {
    width: 100%;
  }

  .request_btn_lists .btn_box a {
    padding: 15px;
  }

  .request_btn_lists .btn_box:nth-child(1) a,
  .request_btn_lists .btn_box:nth-child(2) a {
    border-radius: 50px;
  }

  .sav_text {
    text-align: left;
    font-size: 16px;
  }
  .request_btn_lists.reguest_single_btn p.owner_sav_text {
    text-align: left;
}
  .recruiting_cnt_l {
    width: 100%;
    margin-right: 0;
  }

  .recruiting_cnt_r {
    width: 100%;
  }

  .program_detail .request_btn_lists {
    margin-top: 30px;
  }

  .recruiting_map_box {
    padding-bottom: 55%;
  }

  /** ログインページ **/
  .register_desc_box p {
    text-align: left;
  }

  .register_desc_box p br {
    display: none;
  }

  .register_btn {
    width: 100%;
    margin-right: 0;
    margin-bottom: 25px;
  }

  .register_btn:last-child {
    margin-bottom: 0;
  }

  .register_block .btn_x2 {
    max-width: 420px;
    margin-top: 50px;
  }

  .recruiting_h2::after {
    left: 0;
    display: none;
  }

  .recruiting_schedule li p.time {
    width: 100%;
    margin-right: 0;
  }

  .recruiting_schedule li p.schedule_ttl {
    width: 100%;
  }

  .recruiting_schedule dl:not(:last-child) {
    margin-bottom: 40px;
  }

  .section_tmp1 .page_inner {
    position: relative;
    z-index: 2;
  }

  .section_tmp1::after {
    opacity: 0.6;
    right: 0;
  }

  .section_tmp2 {
    padding: 40px 0 20px;
  }

  .recruiting_h2 h2 {
    margin: 0;
    background: url(assets/img/common2/bg_cnt_ttl.png) 0 0 no-repeat;
    background-size: 240px 69px;
    height: 70px;
    min-width: 240px;
    display: inline-block;
    text-align: center;
    padding-top: 10px;
  }

  .single_recruitin_cnts,.single_recruitin_cnts.section_tmp3 {
    margin-bottom: 50px;
  }

  .footer-address > div > ul {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #bbb;
    padding-bottom: 15px;
  }

  .request_catch,
  .google_register_text,
  .request_desc_block,
  .request_not_account {
    text-align: left;
  }
  .request_catch {
    margin-bottom: 40px;
  }
  .request_catch p {
    font-size: 18px;
  }
  .request_not_account > p {
    font-size: 18px;
  }
  .sp_order2 {
    order: 2;
  }
  .sp_order1 {
    order: 1;
  }

  .complete_wrap .btn_x2 > div:first-child.sp_order2 {
    margin-bottom: 0;
  }
  .complete_wrap .btn_x2 > div.sp_order1 {
    margin-bottom: 25px;
  }

  .contents_catch_text {
    margin-bottom: 20px;
  }

  /** パスワード表示・非表示 **/
  .password_block {
    position: relative;
  }

  .toggle_password {
    display: block;
    margin: 0;
    position: absolute;
    right: 15px;
    top: 50%;
    margin-top: -18px;
  }

  .archive_link_x2 .archive_link_btn {
    width: 100%;
    margin: 0;
  }

  .archive_link_x2 .archive_link_btn:last-child {
    margin-top: 30px;
  }

  .archive_link_x2 {
    margin-top: 60px;
    max-width: 420px;
  }

  .report_action_btn {
    margin: 0 auto 20px;
  }

  .registration_note {
    text-align: left;
  }

  .registration_note br {
    display: none;
  }

  /*トップページ_モーダルウィンドウ用*/
  .shimane_info_ttl {
    margin-right: 0;
  }

  .shimane_info_popup > p.sp_only {
    margin-bottom: 0;
  }

  footer#footer{
    background-size: cover;
  }

  /*.footer-address {
    background: #f7e9dd;
    padding: 20px;
  }*/

  /** パスワード再発行 **/
  #lostpasswordform dl dt {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
  #lostpasswordform dl dd {
    width: 100%;
  }

  .parts_checkbox label{
    position: relative;
    display: flex;
    margin-bottom: 10px;
  }

  .sitemap_box {
    width: 100%;
    margin-right: 0;
  }
  .report_list_img .date{
    font-size: 1rem;
  }
  .archive_like_btn {
    right: 10px;
    top: -30px;
  }

  .page_head_wrap.end1 .single_head_cnts figure::before,
  .page_head_wrap.end2 .single_head_cnts figure::before{
    font-size: 3.5rem;
  }
  .shimanetouroku_desc p.parts_checkbox {
    margin-left: 10px;
  }
  .option_cont_list .cont_box .area_maps_wrap {
    margin-top: 0;
    margin-bottom: 20px;
  }
  .cont_box > dd > dl dt {
    margin-bottom: 0;
  }

  .cont_box > dd > dl dt label {
    margin-bottom: 0;
  }

  .logout_sp_btn {
    border-bottom: rgba(255, 255, 255, 0.4) 1px solid;
    font-size: 1em;
    font-weight: 600;
    background: #e46c2c;
    max-width: 400px;
    width: 100%;
    margin: 60px auto 0;
    border-radius: 50px;
}

.logout_sp_btn a {
    display: block;
    text-align: center;
    border-radius: 50px;
}
.mypage_request_wrap .page_inner > p.quit_text.my_logout_text{
  margin-bottom: 10px;
}

.recruiting_schedule li {
  display: block;
}

.img_x2 figure,.img_x3 figure {
  width: 100%;
  margin-right: 0;
  margin-bottom: 30px;
  text-align: center;
}
.img_x2 figcaption, .img_tmp2 figcaption {
  font-size: 16px;
}

.img_x3 figure {
  margin-bottom: 30px;
}

.mypage_navi_desclist dl dt {
  width: 100%;
  max-width: 350px;
  margin: 0 auto 10px;
}

.mypage_navi_desclist dl dd {
  width: 100%;
}

.mypage_navi_desclist {
  margin-bottom: 30px;
}

.mypage_top_contact {
  padding: 20px;
}

.mypage_top_contact_text {
  text-align: left;
}

.shimane_area_btn{
  width: 100%;
  margin-right: 0;
}
.shimane_area_btn:not(:last-child) {
  margin-bottom: 20px;
}

.mypage_request_x2 .request_program_wrap {
  width: 100%;
  margin-right: 0;
  margin-bottom: 40px;
  border-bottom: 1px dashed #ccc;
  padding-bottom: 40px;
}

.mypage_request_x2 .request_report_wrap {
  width: 100%;
  margin-bottom: 0;
}

#wpdcom .wpd-thread-head .wpd-thread-info {
  flex-basis: auto!important;
}

.mypage_login_btn a {
  height: 66px;
  display: block;
  background: #ff5400;
  color: #fff;
  padding: 10px 20px;
  font-size: 15px;
  text-align: center;
}

.mypage_login_btn {
  position: absolute;
  right: 60px;
  top: 0;
  z-index: 2;
}

.mypage_login_btn .mypage_link_text::before,
.mypage_login_btn a:hover .mypage_link_text::before {
  background-size: 20px;
}

.mypage_login_btn .mypage_link_text {
  font-size: 18px;
}

.mypage_login_btn .login_tab {
  margin-bottom: -5px;
}

.request_google_desc_box > p:not(.ttl) {
  text-align: left;
}

.request_google_desc_box > p:not(.ttl) br {
  display: none;
}

/*利用の手引き*/
.guid_link_navi {
  padding: 0 15px 10px;
}

.guide_block {
  margin: 0 -10px;
  padding: 50px 10px;
}

.list_x5 .guide_point_item {
  width: 47%;
  margin-right: 4%;
  margin-bottom: 30px;
}

.list_x5 .guide_point_item:nth-child(2n) {
  margin-right: 0;
}

.page_main .guide_point_item figure img {
  width: 170px;
}

.guide_point_box {
  padding: 50px 20px 20px;
}

.guide_floe_box {
  padding-left: 0;
}

.guide_h2_ttl h2::before {
  left: -30px;
  top: 10px;
}

.guide_block.bg_red {
  padding: 50px 10px;
}

  /**関連リンク**/
  .sns_links li {
    width: 45px;
  }
  .site_link_box {
    width: 48%;
  }

  .site_link_box:nth-child(3n) {
    margin-right: 3%;
  }


  .site_link_box:nth-child(2n),.site_link_box:nth-child(4n) {
    margin-right: 0;
  }

  .page_main .link-shimakcoto img,
  .page_main .link-shimanenote img,
  .page_main .link-shimanekan img {
    height: 83px;
  }

  .area_list_block {
    width: 100%;
    margin-right: 0;
}

.area_maps_wrap {
    width: 100%;
}

.about_catch_text {
  padding: 50px 30px;
}

.about_catch_text h3 {
  text-align: left;
  font-size: 28px;
}

.about_catch_text::before {
  background-size: 394px 194px;
  height: 194px;
  width: 394px;
}

.about_point_list li:nth-child(2) {
  margin-left: 0;
}

.about_point_main h3 {
  font-size: 26px;
  padding: 0 10px;
}

.about_point_main h3 br {
  display: none;
}

.about_point_main h3::before,.about_point_main h3::after {display: none;}

.about_point_main h3 span {
  margin: 0;
}

.about_point_sav::before {
  background-size: 128px 61px;
  height: 61px;
  width: 128px;
  top: -30px;
}

.about_point_sav h3 {
  font-size: 30px;
}

.about_section2::after {
  background-size: 226px 114px;
  height: 114px;
  width: 226px;
}

.about_section2 {
  padding-bottom: 140px;
}


.about_flow_box:nth-child(odd)::before {
  display: none;
}

.about_flow_box .step {
  width: 100%;
}

.about_flow_head h3 {
  width: 100%;
  font-size: 28px;
}

.about_flow_body {
  padding-left: 0;
}

.about_flow_body figure {
  width: 100%;
  margin-bottom: 15px;
}

.about_flow_text {
  width: 100%;
}

.about_flow_box:nth-child(odd)::after {
  display: none;
}

.about_flow_box:nth-child(even)::before {
  display: none;
}

.about_flow_box:nth-child(even)::after {
  display: none;
}

.about_flow_check {
  margin-top: 30px;
}

.about_flow_check::before {
  display: none;
}

.about_section4 {
  padding: 50px 0 0;
}

.about_btn {
  width: 100%;
  max-width: 450px;
  margin: 0 auto 20px;
}

.about_btn:nth-child(1) a,.about_btn:nth-child(2) a {
  border-radius: 50px;
}
.guide_registr_point_box {
  width: auto;
  margin: 30px 10px 0;
}

.guide_registr_point_box ul li {
  width: 100%;
  margin-right: 0;
}
.about_section2 .page_inner::after{
  opacity: .6;
}

.page_withdrawal > p {
  text-align: left;
}

.img_tmp2 {
  text-align: left;
}

.comment_note {
  text-align: left;
}


.news_flex_box figure {
  width: 100%;
  margin-right: 0;
  margin-bottom: 20px;
}

.news_flex_box .news_text_box {
  width: 100%;
}

.news_owner_flow_box {
  width: 40%;
  margin-right: 10%;
  margin-bottom: 30px;
}

.news_owner_flow {
  max-width: 400px;
}

.img_text_left_box figure, .img_text_right_box figure{
  width: 100%;
}
.img_text_left_box figure {
  margin-right: 0;
  text-align: center;
  margin-bottom: 20px;
}
.img_text_right_box figure{
  margin-bottom: 20px;
}
.img_text_right_box .img_text_box{
  margin-right: 0;
}

.img_text_box {
  width: 100%;
}

.news_owner_step_block figure {
  width: 100%;
  margin-right: 0;
  margin-bottom: 30px;
}

.news_owner_step_text {
  width: 100%;
}
.news_syutsuen_box {
  width: 48%;
}
.news_syutsuen_box:last-child {
  margin-right: 0;
}

/** キャンセル処理追加分 **/
.report_action_btn > .btn_box {
  margin-right: 6%;
}
.mail_action_btn .btn_box {
  margin-right: 0;
  margin-bottom: 20px;
}

.mail_action_btn .btn_box:last-child {
  margin-bottom: 0;
}

.pg_member_date {
  width: 100%;
  margin-right: 0;
  margin-bottom: 20px;
}

.pg_member_date > dl > dt {
  width: 42%;
}

.pg_member_date > dl > dd {
  width: 58%;
}

.pg_cancel_btn {
  max-width: 300px;
  width: 100%;
  margin: 0 auto;
}

.cancel_form_block dl dt {
  width: 100%;
  margin-right: 0;
  margin-bottom: 10px;
}

.cancel_form_block dl dd {
  width: 100%;
}

.cancel_form_block {
  margin-top: 30px;
  padding-top: 30px;
}

/** 追従バナー **/
.page_top {
  display: none;
}
.announce_cp_bnr {
  top: auto;
  bottom: 0;
  left: 0;
  width: 100%;
}
.announce_cp_bnr_inner {
  display: flex;
  justify-content: center;
}
.cp_bnr_item {
  width: 100%;
}
.cp_bnr_item:empty {
  display: none;
}
.cp_bnr_item a {
  padding: 10px;
  -ms-writing-mode: unset;
  -o-writing-mode: unset;
  -webkit-writing-mode: unset;
  writing-mode: unset;
  font-size: 16px;
  height: 100%;
  text-align: center;
  letter-spacing: normal;
  min-height: 75px;
}
.cp_bnr_item:nth-child(2) {
  margin-top: 0;
}
.cp_bnr_item a::before {
  display: none;
}

}

@media screen and (max-width: 500px) {
  /** ヘッダー **/
  .logo img {
    max-width: 180px;
  }

  /** トップページコンテンツ **/
  .main_head {
    order: 3;
    width: 100%;
    margin: 0;
  }

  .main_slide {
    order: 1;
  }

  .main_visual {
    margin-bottom: 20px;
  }

  .btn_link a {
    padding: 15px;
    margin: 0 10px;
  }

  .archive_cnt .date {
    font-size: 11px;
  }

  .page_head_txt {
    font-size: 14px;
  }

  .archive_cnt h3 {
    font-size: 12px;
  }

  .archive_cnt .area span {
    font-size: 11px;
  }
  .tag {
    top: -10px;
    left: 10px;
    font-size: 12px;
  }
  .archive_cnt .date {
    font-size: 11px;
  }

  .archive_cnt .area span {
    font-size: 11px;
  }

  .tag_lists li {
    font-size: 11px;
  }

  .tag_lists li {
    font-size: 11px;
  }

  .top_program .btn_link,
  .top_community .btn_link {
    margin-top: 0;
  }

  .top_program .btn_link a,
  .top_community .btn_link a,
  .top_report .btn_link a {
    margin: 0;
    font-size: 15px;
  }

  .top_community .top_cnt_head::before {
    display: none;
  }

  .top_community .top_cnt_head::after {
    display: none;
  }

  .top_report .ttl_img_h2 h2::before,
  .top_info .ttl_img_h2 h2::before {
    left: -30px;
    top: -10px;
  }

  .top_report .btn_link {
    margin-top: 10px;
  }

  .top_shimanemap {
    margin: 35px 10px;
  }
  .shimane_desc {
    padding: 10px 10px 0;
    margin-bottom: 0;
  }

  .shimane_desc h2 {
    font-size: 24px;
  }

  .page_top img {
    width: 75px;
  }
}

@media screen and (max-width: 375px) {
  /** ヘッダー **/
  .logo img {
    max-width: 140px;
  }
}

/** ダミー用 **/
.dummy_like_btn {
  position: absolute;
  z-index: 2;
  right: 10px;
  top: -20px;
}
.dummy_slite_link li {
  font-size: 20px;
  padding: 15px;
  border-bottom: 1px dashed #bbb;
}
@media screen and (max-width: 600px) {
  .dummy_like_btn {
    right: 5px;
    top: -15px;
  }
  .dummy_like_btn img {
    width: 40px;
  }
  .report_list_box .dummy_like_btn {
    top: -25px;
  }
}

/* reCAPTCHA 表示位置*/
.grecaptcha-badge{
  margin-bottom: 100px;
}

@media print {
  .hide_area {
    display: none;
  }
  .sp_only {
    display: none !important;
  }
}


/** おすすめの近隣の宿 **/
.inn_wrap {
  display: flex;
  justify-content: center;
}
.inn_box {
  margin-right: 30px;
  width: calc(100% / 3);
  max-width: 340px;
  display: flex;
}
.inn_detail .recruiting_ttl .ttl_h2:before {
  background-image: url(./assets/img/common/stay_icon.png);
}
.inn_box a {
  color: #000;
  display: block;
  position: relative;
  background-color: #f8f5f1;
  box-shadow: 0px 2px 8px -3px rgba(0, 0, 0, 0.4);
  border-radius: 5px;
  transition: .4s;
  display: flex;
  flex-direction: column;
  width: 100%;
}
.inn_box a:hover {
  text-decoration: none;
}
.inn_box:last-child {
  margin-right: 0;
}
.inn_detail {
  padding: 50px 0 70px;
}
.page_main figure.inn_box_photo img {
  height: 226px;
  object-fit: cover;
}
.inn_box_txt {
  color: #307311;
  font-size: 20px;
  font-weight: 700;
  margin: 0;
  padding: 15px;
  line-height: 1.3;
  flex-grow: 1;
  display: flex;
  align-items: center;
}
.inn_box_area {
  font-size: 15px;
  margin: 0;
  position: absolute;
  top: 8px;
  right: 8px;
  background-color: #2f7311;
  color: #fff;
  padding: 7px 14px;
  border-radius: 15px;
  display: block;
  font-weight: bold;
  line-height: 1;
}
.sp_br {
  display: none;
}
/* .inn_cat01 {
  background-color: #3B5323;
}
.inn_cat02 {
  background-color: #1E90FF;
}
.inn_cat03 {
  background-color: #D2691E;
} */
@media screen and (max-width: 600px) {
  .inn_wrap {
    display: block;
  }
  .inn_box {
    margin: 0 auto 40px;
    max-width: 450px;
    width: 100%;
  }
  .inn_box:last-child {
    margin: 0 auto;
  }
  .inn_detail .recruiting_ttl {
    margin-bottom: 30px;
  }
  .page_main figure.inn_box_photo img {
    height: 280px;
  }
  .sp_br {
    display: block;
  }
}