/*
Theme Name: Ganbaru Hokkaido + 
Theme URI:
Author: Studio Coba
Description: がんばる北海道＋専用のテーマファイルです。
Version: 0.0
*/
/* ==========================================================================

     CSS for がんばる北海道


   ========================================================================== */

/* --------------------------------------------------------------------------

   Clearfix

   -------------------------------------------------------------------------- */

.clearfix:after {
   content: " ";
   display: block;
   clear: both;
}



/* --------------------------------------------------------------------------

   foundation

   -------------------------------------------------------------------------- */

html {
   font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", 'Shippori Mincho', serif, sans-serif;
   font-size: 62.5%;
   /* フォントサイズ 10px をベースにして計算しやすくする */
}

body {
   font-size: 16px;
   /* for IE 8 */
   font-size: 1.6rem;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
}

h1 {
   font-size: 32px;
   /* for IE 8 */
   font-size: 3.2rem;
}

h2 {
   font-size: 3.8rem;
}

ul {
   list-style-type: none;
}

dl {
   line-height: 22px;
}

dt {
   float: left;
   margin-right: 10px;
}

a {
   text-decoration: none;
   border: 0;
}

.container {
   width: 100%;
   max-width: 960px;
   margin-right: auto;
   margin-left: auto;
}

.container-840 {
   position: relative;
   width: 100%;
   max-width: 840px;
   margin-right: auto;
   margin-left: auto;
   z-index: 5;
}

.container-keyword {
   width: 100%;
   max-width: 880px;
   margin-right: auto;
   margin-left: auto;
}

.red-text {
   color: red;
}

/* --------------------------------------------------------------------------

   layout

   -------------------------------------------------------------------------- */
body {
   margin: 0;
   padding: 0;
}

header {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   height: 71px;
   border-bottom: solid 1px #000;
   overflow: hidden;
   z-index: 10;
   background-color: #fff;
   transition: background-color 0.6s ease-out;
}

header.change-color {
   background-color: #ff505a;
   transition: background-color 0.6s ease-out;
}

header.change-color2 {
   background-color: #fff;
}

#header-inner {
   display: flex;
   height: calc(100% - 20px);
   width: 920px;
   margin-top: 10px;
   margin-bottom: 10px;
   padding: 0 30px;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: center;
}

.header_logo_white,
.header_logo_white a,
.header_logo_white a img {
   display: block;
   margin: 0;
}

.header_logo_white {
   width: 242px;
   height: 51px;
}

h1,
h2,
h3 {
   margin: 0;
}

#main-nav {
   display: inline-block;
}

#main-nav ul {
   display: flex;
   margin: 0;
   padding: 0;
   flex-flow: row nowrap;
   justify-content: flex-end;
   align-items: center;
}

#main-nav li {
   margin-left: 20px;
}

#HM {
   display: none;
}

.voice-entry,
.tizai-entry,
.tukurite-entry {
   margin-bottom: 80px;
}

.hatsumei_textbox {
   padding: 40px 40px;
   margin: 60px 0;
   /* 1127修正ここから
   background: #fafafa;
   */
   background-color: #faf2e1;
   /* border-left: double 4px #4c8dcb; */
   /* 1127修正ここまで */
   box-shadow: 5px 5px 6px rgba(0, 0, 0, 0.32);
}

/* 1127追加ここから */
.kakko-l,
.kakko-r {
   display: block !important;
   width: 40px;
   background: linear-gradient(to right, #4c8dcb 0%, #4c8dcb 5px, transparent 5px, transparent 100%),
      linear-gradient(to bottom, #4c8dcb 0%, #4c8dcb 5px, transparent 5px, transparent 100%);
   background-size: 100% 70%, 100% 100%;
   background-repeat: no-repeat;
   opacity: .3;
}

.kakko-l {
   margin-right: 10px;
}

.kakko-r {
   margin-left: 10px;
   transform: rotate(180deg);
}

.hatumei_txtprof {
   display: flex;
   /* 1206追加 */
   margin-top: 1em;
   flex-flow: row nowrap;
   justify-content: flex-end;
}

.hatumei_textname {
   display: flex;
   flex-flow: column nowrap;
   justify-content: flex-end;
}

.gbr-entry_txt .hatumei_textname p {
   font-size: 1.4rem;
}

.hatumei_txtph {
   width: 120px;
   height: 120px;
   margin-left: 20px;
   border: solid 1px #000;
   background: url('http://testganbaru.local/wp-content/uploads/2022/09/top-tizai2.jpg');
   background-position: 95% 40%;
   background-size: auto 250px;
   background-repeat: no-repeat;
}

/* 1127追加ここまで */

.h-head {
   position: relative;
   display: block;
   margin: calc(40px - (15px / 2)) 0;
   padding: 10px;
   color: white;
   text-align: center;
}

.h-head span {
   position: relative;
   display: inline-block;
   z-index: 8;
}

.h-head::before {
   position: absolute;
   display: block;
   bottom: -43px;
   left: 15%;
   content: '';
   width: 0;
   height: 0;
   border-style: solid;
   border-color: #4c8dcb transparent transparent transparent;
   border-width: 25px;
   transform: scale(0.7, 1);
   z-index: 8;
}

.hatsumei-map {
   display: block;
   position: relative;
   width: 728px;
   height: 553px;
}

.map-base {
   display: block;
   position: absolute;
   width: 100%;
   height: auto;
   z-index: 1;
}

.h-sapporo,
.h-otaru,
.h-asahikawa,
.h-hakodate,
.h-obihiro {
   display: block;
   width: 54px;
   height: auto;
   clear: both;
   animation-play-state: paused;
}

.pin-wrap:has(.h-sapporo),
.pin-wrap:has(.h-otaru),
.pin-wrap:has(.h-asahikawa),
.pin-wrap:has(.h-hakodate),
.pin-wrap:has(.h-obihiro) {
   display: block;
   position: absolute;
   z-index: 7;
}

.pin-wrap:has(.h-sapporo) {
   top: 45%;
   left: 35%;
}

.pin-wrap:has(.h-otaru) {
   top: 42.5%;
   left: 28.2%;
   z-index: 6;
}

.pin-wrap:has(.h-asahikawa) {
   /* 1127修正ここから
   top: 28.9%;
   left: 42.6%;
   */
   top: 29.5%;
   left: 45%;
   /* 1127修正ここまで */
}

.pin-wrap:has(.h-hakodate) {
   top: 81%;
   left: 24.4%;
}

.pin-wrap:has(.h-obihiro) {
   top: 49.7%;
   left: 61.8%;
}

.pin-wrap.active {
   z-index: 8;
}

.h-sapporo:hover,
.h-otaru:hover,
.h-asahikawa:hover,
.h-hakodate:hover,
.h-obihiro:hover {
   animation: updown 1.5s ease-in-out normal infinite;
   animation-play-state: running;
}

.gbr-entry_txt p.h-name {
   display: block;
   position: relative;
   top: -.5em;
   margin: 0;
   padding: 0 .5em;
   font-size: 1.4rem;
   font-weight: bold;
   text-align: center;
   color: white;
   background-color: #666;
   border-radius: calc(1.4rem * 1.75 / 2);
}

.h-sapporo+.h-name,
.h-otaru+.h-name,
.h-asahikawa+.h-name,
.h-hakodate+.h-name,
.h-obihiro+.h-name {
   margin: 0;
   padding: 0 .5em;
   opacity: 0;
   transition: .5s;
}

.h-sapporo+.h-name {
   left: -3.5em;
}

.h-otaru+.h-name,
.h-asahikawa+.h-name,
.h-hakodate+.h-name,
.h-obihiro+.h-name {
   left: -3em;
}

.h-sapporo:hover+.h-name,
.h-otaru:hover+.h-name,
.h-asahikawa:hover+.h-name,
.h-hakodate:hover+.h-name,
.h-obihiro:hover+.h-name,
.h-sapporo.active+.h-name,
.h-otaru.active+.h-name,
.h-asahikawa.active+.h-name,
.h-hakodate.active+.h-name,
.h-obihiro.active+.h-name {
   margin: 0;
   padding: 0 .5em;
   opacity: 1;
   transition: .5s;
}

.h-sapporo+.h-name+.h-sapporo-txt,
.h-otaru+.h-name+.h-otaru-txt,
.h-asahikawa+.h-name+.h-asahikawa-txt,
.h-hakodate+.h-name+.h-hakodate-txt,
.h-obihiro+.h-name+.h-obihiro-txt,
.h-sapporo.active+.h-name+.h-sapporo-txt,
.h-otaru.active+.h-name+.h-otaru-txt,
.h-asahikawa.active+.h-name+.h-asahikawa-txt,
.h-hakodate.active+.h-name+.h-hakodate-txt,
.h-obihiro.active+.h-name+.h-obihiro-txt {
   position: absolute;
   width: 728px;
   height: auto;
   background-color: white;
   border-style: solid;
   border-width: 3px 0 0 0;
   border-color: #4c8dcb;
   box-shadow: 5px 5px 10px rgba(0, 0, 0, .3);
   z-index: 8;
}

.h-sapporo+.h-name+.h-sapporo-txt,
.h-otaru+.h-name+.h-otaru-txt,
.h-asahikawa+.h-name+.h-asahikawa-txt,
.h-hakodate+.h-name+.h-hakodate-txt,
.h-obihiro+.h-name+.h-obihiro-txt {
   display: none;
}

.h-sapporo+.h-name+.h-sapporo-txt,
.h-sapporo.active+.h-name+.h-sapporo-txt {
   left: calc(728px * -0.323);
}

.h-otaru+.h-name+.h-otaru-txt,
.h-otaru.active+.h-name+.h-otaru-txt {
   left: calc(728px * -0.282);
}

.h-asahikawa+.h-name+.h-asahikawa-txt,
.h-asahikawa.active+.h-name+.h-asahikawa-txt {
   left: calc(728px * -0.426);
}

.h-hakodate+.h-name+.h-hakodate-txt,
.h-hakodate.active+.h-name+.h-hakodate-txt {
   left: calc(728px * -0.254);
}

.h-obihiro+.h-name+.h-obihiro-txt,
.h-obihiro.active+.h-name+.h-obihiro-txt {
   left: calc(728px * -0.618);
}

@keyframes updown {
   0% {
      transform: translateY(0);
   }

   50% {
      transform: translateY(-5px);
   }

   100% {
      transform: translateY(0);
   }
}

.pin-wrap:has(.h-sapporo.active)::after,
.pin-wrap:has(.h-otaru.active)::after,
.pin-wrap:has(.h-asahikawa.active)::after,
.pin-wrap:has(.h-hakodate.active)::after,
.pin-wrap:has(.h-obihiro.active)::after {
   display: block;
   position: fixed;
   top: 0;
   left: 0;
   content: '';
   height: 100vh;
   width: 100vw;
   background-color: rgba(0, 0, 0, 0.5);
   z-index: -1;
}

/* 発明協会ページ */

.container-hatsumei_popup {
   width: 100%;
   max-width: 650px;
   margin-right: auto;
   margin-left: auto;
}

.hatsumei_area {
   width: 82px;
   padding: 10px 20px 10px 20px;
   margin-top: -70px;
   margin-bottom: 20px;
   color: #ffffff;
   background: #4c8dcb;
}

.hatsumei_area p {
   font-size: 2.2em;
   font-weight: bold;
   margin: 0;
   padding: 0;
}

.hatsumei_pho_box {
   display: flex;
   justify-content: flex-end;
   align-items: flex-end;
   margin-top: 10px;
}

.hatsumei_pr_border {
   line-height: 1px;
   padding-bottom: 2px;
   display: inline;
   background: linear-gradient(transparent 95%, #4c8dcb 0%);
}

.hatsumei_pr p {
   margin-top: 30px;
   font-size: 1.5em;
   font-weight: bold;
   line-height: 1.5;
   color: #4c8dcb;
}

.hatsumei_pho img {
   width: 150px;
}

.container-hatsumei_popup {
   width: 100%;
   max-width: 650px;
   margin-right: auto;
   margin-left: auto;
   margin-bottom: 40px;
}

.container-hatsumei_popup .close-btn {
   margin: 0;
}

.container-hatsumei_popup .hatsumei_area {
   width: 82px;
   margin-top: -57.5px;
   margin-bottom: 20px;
   padding: 10px 20px 10px 20px;
   color: #ffffff;
   background: #4c8dcb;
}

.gbr-entry_txt .hatsumei_area p {
   font-size: 2.2em;
   font-weight: bold;
   margin: 0;
   padding: 0;
}

.hatsumei_pr_border {
   line-height: 1px;
   padding-bottom: 2px;
   display: inline;
   background: linear-gradient(transparent 95%, #4c8dcb 0%);
}

.hatsumei_pr p {
   margin-top: 30px;
   font-size: 1.5em;
   font-weight: bold;
   line-height: 1.5;
   color: #4c8dcb;
}

.hatsumei_pho img {
   width: 200px;
   border: solid 1px #565757;
}

.hatsumei_pho_name {
   margin: 0;
   line-height: 1.4;
   color: #565757;
   font-size: 1.6rem;
   text-align: right;
   margin-right: 20px;
   margin-bottom: 30px;
}

.hatsume_textbox {
   color: #565757;
   font-size: 1.1em;
   line-height: 1.3;
   margin-right: 20px;
}

.gbr-entry_txt .hatsume_textbox p {
   margin: 1em 0;
}

.hatsume_textbox hr {
   border-top: 1px solid #4c8dcb;
   border-right: none;
   border-bottom: none;
   border-left: none;
}

.hatsume_border {
   margin-top: -0.5em;
}

.hatsume_text_A {
   font-size: 1em;
}

.hatsume_text_B {
   font-size: 1.6em;
   font-weight: bold;
}

.hatumei_prbox {
   position: relative;
   z-index: 3;
}

.hatsume_mapbox {
   border: 1px solid #4c8dcb;
   padding: 30px;
   display: flex;
   justify-content: space-between;
   align-items: center;
   position: relative;
   z-index: 2;
   margin-top: -20px;
}

.gbr-entry_txt p.hatsumei_pho_name {
   margin: 0;
   line-height: 1.4;
   color: #565757;
   font-size: 1.6rem;
   text-align: right;
   margin: 1em 20px 0 0;
}

.hatsume_textbox {
   color: #565757;
   font-size: 1.1em;
   line-height: 1.3;
   margin-right: 20px;
}

.hatsume_textbox a,
.hatsume_textbox a:active,
.hatsume_textbox a:hover,
.hatsume_textbox a:visited {
   color: #565757;
   opacity: 1;
   transition: opacity .5s;
}

.hatsume_textbox a:hover {
   opacity: .5;
   transition: opacity .5s;
}

.hatsume_textbox hr {
   border-top: 1px solid #4c8dcb;
   border-right: none;
   border-bottom: none;
   border-left: none;
}

.hatsume_border {
   margin-top: -0.5em;
}

.hatsume_text_A {
   font-size: 0.7em;
   /* 1128追記ここから */
   line-height: 1;
   /* 1128追記ここまで */
}

.hatsume_text_B {
   font-size: 1.2em;
   font-weight: bold;
   /* 1128追記ここから */
   line-height: 1;
   /* 1128追記ここまで */
}

.hatumei_prbox {
   position: relative;
   z-index: 3;
}

/* 1207追加ここから */
.hatumei_prbox .hatsumei_pr_border {
   font-size: 2.1rem;
}

/* 1207追加ここまで */

.hatsume_mapbox {
   border: 1px solid #4c8dcb;
   padding: 30px;
   display: flex;
   justify-content: space-between;
   align-items: center;
   position: relative;
   z-index: 2;
   margin-top: 10px;
}

#voice_entry_single #footer,
#tizai_entry_single #footer,
#tukurite_entry_single #footer,
#aozora_entry_top #footer,
#manga_article #footer {
   margin-top: 80px;
}

.footer-keyword_inner,
#footer-nav,
.footer-info {
   width: 920px;
   margin: 0 auto;
}


#footer-nav {
   position: relative;
   top: -43px;
   padding: 0;
}

/*#goto-top {
   display: block;
   position: relative;
   top: -50px;
   left: calc((100vw - 920px) / 2 + (920px - 40px));
   height: 40px;
   width: 40px;
   margin-bottom: -40px;
   z-index: 8;
}*/

   /* 0826Tori */
#goto-top {
   display: block;
   height: 40px;
   width: 0;
   position: relative;
   z-index: 8;
}
   /* 0826Tori END */

#tizai_entry_single #goto-top {
   z-index: 2;
}

#goto-top img {
   /* display: block; */
   position: fixed;
   bottom: 30px;
   right: 50px;
}

.footer_inner {
   display: flex;
   height: 152px;
   padding-top: 30px;
   flex-flow: column nowrap;
   justify-content: flex-start;
   align-items: flex-start;
}

.footer-logo {
   position: relative;
   left: calc((100vw - 920px) / 2);
   z-index: 8;
}

.footer-logo img {
   display: block;
}

#footer-nav li {
   margin-left: 1em;
}

#footer-nav li.twitter {
   margin-top: 20px;
   margin-left: 880px;
}

.icon_box {
   display: flex;
}

.footer-info {
   display: flex;
   margin-top: -60px;
   margin-bottom: -19px;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: flex-end;
   line-height: 2.5;
}

#footer small:first-child {
   font-size: 0.8em;
}

#footer small {
   color: #fff;
}

a {
   text-decoration: none;
   border: 0;
}

.footer-logo-s {
   display: none;
}

.sp-ver {
   display: none;
}

main {
   overflow: hidden;
}

#aozora_entry_top main:hover {
   overflow: visible;
}

/* --------------------------------------------------------------------------

   objects

   -------------------------------------------------------------------------- */
/* ----------------- TOP PAGE ----------------- */
.main-title {
   margin-top: 71px;
   position: relative;
   height: 900px;
   background-image: url('images/top-ill-bg.jpg');
   background-repeat: no-repeat;
   background-size: cover;
   background-position: 50% 50%;
   z-index: 1;
}

.main-title:after {
   position: relative;
   display: block;
   top: -829px;
   height: 900px;
   content: ' ';
   background-image: url('images/top-ill.png');
   /* background-image: image-set(url('images/top-ill.png') 1x, url('images/top-ill@2x.png') 2x, url('images/top-ill@3x.png') 3x);
   background-image: -webkit-image-set(url('images/top-ill.png') 1x, url('images/top-ill@2x.png') 2x, url('images/top-ill@3x.png') 3x); */
   background-repeat: no-repeat;
   background-size: auto;
   background-position: 50% 50%;
   z-index: 2;
   animation: title-anime 3s ease-in-out 1 normal;
}

.main-title-sp {
   display: none;
}

.title-logo {
   text-align: center;
}

.text-center {
   text-align: center;
}

.gbr-hokkaido-logo {
   position: relative;
   margin-top: 70px;
   z-index: 99;
   opacity: 1;
   animation: title-anime2 4s ease-in-out 1 normal;
   z-index: 8;
}

@keyframes title-anime {
   0% {
      opacity: 0;
   }

   20% {
      opacity: 0;
   }

   100% {
      opacity: 1;
   }
}

@keyframes title-anime2 {
   0% {
      opacity: 0;
   }

   40% {
      opacity: 0;
   }

   100% {
      opacity: 1;
   }
}

.concept-copy {
   text-align: center;
   margin-top: 20px;
   margin-bottom: 20px;
}

.concept-copy-sp {
   display: none;
}

.news {
   width: 100%;
   max-width: 650px;
   margin-right: auto;
   margin-left: auto;
}

.news a {
   color: inherit;
}

.news br {
   display: none;
}

.back-ground {
   margin-top: 50px;
   min-height: 404px;
   height: auto;
   background: url('images/gbr-voice_bg.png');
   background-position: 50% 0;
   background-size: 1280px 404px;
   background-repeat: repeat-x;
   overflow: hidden;
}

.back-ground2 {
   background-color: #c0d1d9;
   width: auto;
   height: 470px;
   border-radius: 30px;
   margin-top: 100px;
}

.back-ground_ill1 {
   position: absolute;
   height: auto;
   z-index: 0;
   max-width: 20%;
   margin-top: -280px;
   margin-left: 50px;
}

.back-ground_ill2 {
   position: absolute;
   height: auto;
   z-index: 0;
   max-width: 20%;
   margin-top: 40px;
   margin-left: 30%;
}

.ill_right {
   text-align: center;
}

.ganbaru-copy {
   margin-top: 30px;
   text-align: center;
}

.title-logo {
   text-align: center;
}

.top-gbr-voice {
   margin-left: 30px;
   margin-top: 20px;
}

.top-gbr-voice2 {
   margin-top: 20px;
}

.voice-h {
   font-size: 1.8rem;
   color: #565757;
   background: linear-gradient(to top, #565757 0, #565757 100%);
   background-size: 880px 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
}

.voice_ul {
   display: flex;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
   gap: 50px 44px;
}

.voice_ul.sp-ver {
   display: none;
}

.voice_li {
   width: 264px;
}

.voice_li_ph {
   height: 251px;
   max-width: 262px;
   width: 100%;
   border: solid 1px #221714;
}

.voice .new-icon {
   position: relative;
   top: -252px;
   left: 1px;
   height: 47px;
   width: auto;
   z-index: 9;
}

.voice_title,
.voice_li a {
   color: #fff;
}

.voice_title {
   padding: 10px 10px 10px 10px;
   margin: 0;
}

.voice_erea {
   height: 105px;
   margin-top: -20px;
   background-color: #968681;
   border: solid 1px #221714;
}

.voice_com-name-wrap {
   display: flex;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: flex-start;
}

.voice_com-name {
   font-size: 1.8rem;
   font-weight: bold;
   line-height: 1.2;
}

.voice_com-name span,
.gbr-recent_cp-name span,
.tizai-entry .tizai_top_title h2 span,
.gbr-entry_h3 span,
.blank {
   display: inline-block;
}

.voice_subtext {
   display: block;
   margin: calc(10px - (10px / 2)) 0;
   /* 設定したマージンからline-height分の余白を引く */
   font-size: 1.2rem;
   font-weight: bold;
   line-height: 1.5;
}

.voice_title_txt {
   display: block;
   margin: calc(10px - (10px / 2)) 0 -5px 0;
   font-size: 1.4rem;
   font-weight: normal;
   line-height: 1.5;
   text-align: justify;
}

.voice_info {
   margin-top: 5px;
   font-size: 1rem;
   display: flex;
   letter-spacing: 0.1em;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: center;
   gap: 5px 1em;
}

.voice_info span:nth-child(2) {
   margin-left: auto;
   display: inline-flex;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
   gap: 0 1em;
}

.voice_info a.keyword {
   color: #565757;
   background: linear-gradient(to bottom, transparent 0, transparent 100%);
   background-size: 0 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
   transition: background .5s;
}

.voice_info .date {
   color: #565757;
}

.voice_info a.keyword:first-child {
   margin-left: 0;
}

.voice_info a.keyword:hover {
   background: linear-gradient(to bottom, #565757 0, #565757 100%);
   background-size: 100% 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
   transition: background .5s;
}

.voice_top_margin {
   margin-top: -170px;
}

.top_margin {
   margin-top: 50px;
}

.column-h {
   font-size: 1.8rem;
   color: #565757;
   background: linear-gradient(to top, #565757 0, #565757 100%);
   background-size: 880px 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
}

.column_ul {
   display: flex;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
   gap: 50px 44px;
}

.padding0px ul {
   padding-inline-start: 0px;
}

.padding50px {
   padding: 0 500px;
}

.column_ul.sp-ver {
   display: none;
}

.column_li {
   width: 264px;
}

.column_li_ph {
   height: 251px;
   width: 262px;
   border: solid 1px #221714;
}

.column .new-icon {
   position: relative;
   top: -252px;
   left: 1px;
   height: 47px;
   width: auto;
   z-index: 9;
}

.column_title,
.column_li a,
.column_info {
   color: #565757;
}

.column_title {
   margin: 20px 0 0 0;
}

.column_com-name-wrap {
   display: flex;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: flex-start;
}

.column_com-name {
   font-size: 1.8rem;
   font-weight: bold;
   line-height: 1;
}

.column_subtext {
   display: block;
   margin: calc(10px - (10px / 2)) 0;
   /* 設定したマージンからline-height分の余白を引く */
   font-size: 1.2rem;
   font-weight: bold;
   line-height: 1.5;
}


.column_title_txt {
   display: block;
   margin: calc(4px - (10px / 2)) 0;
   font-size: 1.4rem;
   font-weight: normal;
   line-height: 1.5;
   text-align: justify;
}

.column_info {
   margin-top: 5px;
   font-size: 1rem;
   display: flex;
   letter-spacing: 0.1em;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: center;
   gap: 5px 1em;
}

.column_info span:nth-child(2) {
   display: inline-flex;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
   gap: 0 1em;
   margin-left: auto;
}

.column_info a.keyword {
   color: #565757;
   background: linear-gradient(to bottom, transparent 0, transparent 100%);
   background-size: 0 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
   transition: background .5s;
}

.column_info a.keyword:hover {
   background: linear-gradient(to bottom, #565757 0, #565757 100%);
   background-size: 100% 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
   transition: background .5s;
}

.top-h2 {
   margin-top: 50px;
   text-align: center;
   color: #1f2a66;
}

.banner-erea {
   text-align: center;
   margin-top: 25px;
}

.footer-concept {
   margin-top: 68px;
}

.column-container {
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   text-align: center;
   gap: 40px;
}

.font-column {
   font-size: 1.8rem;
   font-weight: bold;
}

.font-subtitle {
   font-weight: bold;
   display: block;
   margin-top: 5px;
   line-height: 20px;
}

.kagayakou_bannar {
   text-align: center;
   margin-top: 20px;
   margin-bottom: 80px;
}

.border-banner {
   border: 1px solid #dcc8b4;
}

.voice-top {
   text-align: center;
   margin-top: 50px;
}

.catchcopy {
   margin-top: 20px;
   text-align: center;
}

.catchcopy .copytext {
   text-align: left;
   display: inline-block;
}

.catchcopy .maincopy {
   text-align: center;
   color: #565757;
   font-size: 2.2rem;
   font-weight: bold;
   line-height: 3rem;
}

.catchcopy .maincopy span {
   display: inline-block;
}

.catchcopy .subcopy {
   color: #565757;
   font-size: 1.8rem;
   line-height: 2.8rem;
   margin: 0;
   padding-left: 1em;
   text-align: justify;
   text-indent: -1em;
}

.catchcopy .subcopy:first-child {
   margin-top: 1em;
}

.catchcopy .subcopy:last-child {
   margin-bottom: 1em;
}

.sponsors_erea {
   margin-top: 80px;
   margin-bottom: 50px;
}

.sponsors_erea a {
   color: inherit;
   transition: opacity .5s;
}

.sponsors_erea a:hover {
   opacity: .5;
   transition: opacity .5s;
}

.sponsors_erea h3 {
   margin: 0 0 50px 0;
   padding: 5px 0;
   color: #1f2a66;
   text-align: center;
   border-top: solid 1px #1f2a66;
   border-bottom: solid 1px #1f2a66;
}

.sponsors_erea h4 {
   color: #565757;
}

.sponsors_erea h4.erea-web-txt,/* 0826Tori */
.sponsors_erea h4.erea-c-txt {
   color: #c81528;
}

.sponsors_erea h4.erea-s-txt {
   color: #fdd000;
}

.sponsors_erea h4.erea-e-txt {
   color: #1f8956;
}

.sponsors_erea h4.erea-n-txt {
   color: #3071b9;
}

.sponsors_erea p {
   color: #565757;
   font-size: 1.4rem;
   line-height: 0.3rem;
}

.sponsors_erea_kagayakou a {
   color: #565757;
   font-size: 1.4rem;
   line-height: 0.1rem;
   transition: opacity .5s;
}

.sponsors_erea_kagayakou a:hover {
   opacity: .5;
   transition: opacity .5s;
}

.sponsors_erea_kagayakou p {
   margin: 5px 10px;
}

.border_ponsors {
   border: 1px solid #565757;
}

.sponsors_inner {
   display: flex;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
   gap: 5px 15px;
}

.sponsors_inner_kagayakou {
   display: flex;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
   gap: 5px 15px;
}

.erea-border-c {
   display: flex;
   align-items: center;
   margin-bottom: -10px;
}

.erea-border-c::after {
   content: "";
   height: 1px;
   flex-grow: 1;
   background-color: #c81528;
}

.erea-border-c:after {
   margin-left: 10px;
}

.erea-border-s {
   display: flex;
   align-items: center;
   margin-bottom: -10px;
}

.erea-border-s::after {
   content: "";
   height: 1px;
   flex-grow: 1;
   background-color: #fdd000;
}

.erea-border-s:after {
   margin-left: 10px;
}

.erea-border-e {
   display: flex;
   align-items: center;
   margin-bottom: -10px;
}

.erea-border-e::after {
   content: "";
   height: 1px;
   flex-grow: 1;
   background-color: #1f8956;
}

.erea-border-e:after {
   margin-left: 10px;
}

.erea-border-n {
   display: flex;
   align-items: center;
   margin-bottom: -10px;
}

.erea-border-n::after {
   content: "";
   height: 1px;
   flex-grow: 1;
   background-color: #3071b9;
}

.erea-border-n:after {
   margin-left: 10px;
}

.sponsors_h h3 {
   color: #fff;
}

.sponsors_h {
   background-color: #1f2a66;
}

/* ----------------- VOICE TOP PAGE ----------------- */

#voice_entry_top .voice_entry_top_title {
   width: 401px;
   margin: 70px auto 30px auto;
   text-align: center;
}

#voice_entry_top .voice_entry_top_title img {
   display: block;
   height: 73px;
   width: auto;
}

#voice_entry_top .voice_entry_top_lead {
   display: block;
   height: 50px;
   width: auto;
   margin: 0 auto;
}

/* 0825Tori */
#voice_entry_top .voice_entry_top_lead.sp-ver {
   display: none;
}

#voice_entry_top .voice_entry_top_lead.pc-ver {
   height: 21px;
}
/* 0825Tori END */

#voice_entry_top .gbr-recent_ul {
   display: flex;
   max-width: 876px;
   margin: -170px auto 35px auto;
   padding: 0;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
}

#voice_entry_top .gbr-recent_ul.sp-ver {
   display: none;
   margin: 0;
   margin-top: 0;
}

.voice_list13up {
   display: flex;
   width: 880px;
   margin: -170px auto 75px auto;
   flex-flow: row nowrap;
   justify-content: flex-start;
   align-items: flex-start;
}

.voice_ul13up-left {
   display: flex;
   width: calc(100vw - 100px - 264px);
   margin: 0 44px 0 0;
   padding: 0;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
   gap: 50px 0px;
   flex: 0 0 calc(100vw - 100px -264px);
}

.voice_ul13up-right {
   width: 264px;
   margin: 0;
   padding: 0;
   flex: 0 0 264px;
}

.voice_ul13up-right li {
   min-height: 70px;
   padding: 10px;
   border-bottom: solid 1px #565757;
}

.voice_ul13up-right li .li_inner {
   display: flex;
   margin-bottom: 5px;
   flex-flow: row nowrap;
   justify-content: flex-start;
   align-items: flex-start;
   column-gap: 10px;
   ;
}

.voice_ul13up-right li:first-child {
   border-top: solid 1px #565757;
}

.voice_ul13up-right li a {
   display: block;
}

.voice_ul13up-right li .li_inner a {
   display: inline;
}

.voice_ul13up-right li a.erea-icon {
   display: flex;
   margin-top: 5px;
}

.voice_ul13up-right li a.voice_li13up-right_ph {
   display: inline-block;
   height: 70px;
   width: 70px;
}

.voice_ul13up-right li .voice_com-name-wrap {
   display: inline;
   max-width: calc(100% - 90px);
}

.voice_ul13up-right li .voice_title_txt,
.voice_ul13up-right li .voice_com-name {
   color: #565757;
}

#voice_entry_top .gbr-recent_li {
   width: 264px;
   margin-right: 42px;
   margin-bottom: 45px;
}

#voice_entry_top .gbr-recent_li:nth-child(3n) {
   margin-right: 0;
}


.gbr-recent_ph,
.gbr-recent_txt-box {
   display: block;
   border: solid 1px #221714;
}

.gbr-recent_ph {
   width: 262px;
   height: 250px;
}

.gbr-recent_txt-box {
   width: 242px;
   height: 80px;
   padding: 10px;
   background-color: #968681;
   border-top: 0;
}

.gbr-recent_data {
   display: flex;
   margin: -1.5px 0 8.5px 0;
   margin-bottom: 10px;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: center;
}

.gbr-recent_cp-name {
   font-size: 1.8rem;
   font-weight: bold;
   line-height: 1.17;
   color: #fff;
}

.gbr-recent_txt-box h3,
.gbr-recent_txt-box h3 a {
   margin-top: -3.5px;
   font-size: 1.4rem;
   font-weight: bold;
   line-height: 1.5;
   text-align: justify;
   color: #fff;
}

.gbr-recent_txt-box h3 a {
   display: inline-block;
}

.gbr-recent_info {
   margin-top: 10px;
}

.gbr-recent_info p {
   margin: 0;
   line-height: 1;
}

#voice_entry_top #goto-top {
   display: none;
}

.rounded-button {
   display: inline-block;
   padding: 7px 30px;
   font-size: 20px;
   color: #fff;
   background-color: #3264b4;
   border: none;
   border-radius: 24px;
   /* 角を丸くする */
   text-align: center;
   text-decoration: none;
   cursor: pointer;
}

.rounded-button:hover {
   background-color: #006bdd;
}

/* ----------------- VOICE ENTRY PAGE ----------------- */

.voice-entry .entry_top_title {
   min-height: 521px;
   height: auto;
   background: linear-gradient(0deg, rgba(255, 80, 90, 0) 0, rgba(255, 80, 90, 0) 403px, #ff505a 404px, #ff505a 100%),
      url('images/gbr-voice_bg.png');
   background-position: 0 100%, 50% 100%;
   background-size: cover, 1280px 404px;
   background-repeat: no-repeat, repeat-x;
   overflow: hidden;
}

#voice_entry_top .voice_top_title {
   /* 0825Tori */
   min-height: 410px;
   /**/
   height: auto;
   background: linear-gradient(0deg, rgba(255, 80, 90, 0) 0, rgba(255, 80, 90, 0) 403px, #ff505a 404px, #ff505a 100%),
      url('images/gbr-voice_bg.png');
   background-position: 0 100%, 50% 100%;
   background-size: cover, 1280px 404px;
   background-repeat: no-repeat, repeat-x;
   overflow: hidden;
}

.voice-entry .entry_top_title img {
   display: block;
   height: auto;
   width: 201px;
}

.voice-entry .entry_top_title h2 a {
   color: #fff;
   text-decoration: none;
}

.voice-entry .entry_top_title h2 a:first-child {
   display: inline-block;
}

.voice-entry .entry_top_title h2 p {
   margin: calc(40px - (15px / 2)) 0 calc(20px - (15px / 2)) 0;
   /* 設定したマージンからline-height分の余白を引く */
   font-size: 3rem;
   line-height: 1.5;
}

.voice-entry .entry_top_title h2 p span {
   display: inline-block;
}

/*********** 0821Tori ***********/
.voice_top_list.tb-ver {
   display: none;
}

div.voice_top_list.sp150-ver {
   display: none;
}

div.voice_top_list {
   position: relative;
   top: -150px;
   width: 1100px;
   margin: 0 auto;
   height: 1000px;
}

.voice_link{
   position: absolute;
}

.voice-aerospace{
   top: 90px;
   left: 0%;
}

.voice-construction{
   top: 0px;
   left: 25%;
}

.voice-biomass{
   top: 390px;
   left: 0%;
}

.voice-architecture{
   top: 110px;
   right: 1%;
}

.voice-machine{
   top: 640px;
   left: 0%;
}

.voice-woodworking{
   top: 300px;
   right: 0%;
}

.voice-fishing{
   top: 700px;
   left: 14%;
}

.voice-forestry{
   top: 490px;
   right: 0%;
}

.voice-agriculture{
   top: 680px;
   left: 43%;
}

.voice-dairying{
   top: 700px;
   right: 1%;
}

a.voice_link>img:first-child {
   position: relative;
   z-index: 1;
   transition: all .2s ease-out;
}

a.voice_link>img:first-child:hover {
   opacity: 0;
}

a.voice_link>img:last-child {
   position: absolute;
   left: 0;
}

/* 0821Tori END */

.gbr-com-name,
.gbr-keyword {
   margin: 0;
   text-align: right;
   color: #fff;
}

.gbr-com-name2 {
   background-color: #fff;
   padding: 0.5em 4em;
   color: #ff505a;
   font-weight: bold;
}

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

.gbr-com-name,
.gbr-keyword {
   line-height: 1;
   letter-spacing: 0.1em;
}

.gbr-com-name {
   font-size: 1.8rem;
}

.gbr-keyword {
   margin-top: 16px;
   font-size: 1.4rem;
}

.gbr-keyword a,
.gbr-keyword a:active,
.gbr-keyword a:visited {
   margin-left: 1em;
   color: #fff;
   background-color: linear-gradient(to right, transparent 0, tarnsparent 100%);
   background-position: 50% 100%;
   background-size: 0 0;
   background-repeat: no-repeat;
   transition: background .5s ease-in-out;
}

.gbr-keyword a:first-child,
.gbr-keyword a:active:first-child,
.gbr-keyword a:visited:first-child {
   margin-left: 0;
}

.gbr-keyword a:hover {
   background: linear-gradient(to right, #fff 0, #fff 100%);
   background-position: 50% 100%;
   background-size: 100% 1px;
   background-repeat: no-repeat;
   transition: background .5s ease-in-out;
}

.gbr-entry_txt {
   margin-top: -163px;
}

.bgr-entry_img {
   height: 478px;
   width: 726px;
   border: solid 1px #221714;
}

.bgr-entry_img:first-child {
   margin-bottom: 0px;
}

.bgr-entry_img-s {
   height: 267px;
   width: 726px;
   border: solid 1px #221714;
}

.bgr-entry_img-l {
   height: 629px;
   width: 726px;
   border: solid 1px #221714;
}

.bgr-entry_img-f {
   margin-right: calc(50% - 50vw);
   margin-left: calc(50% - 50vw);
}

.bgr-entry_img-f img {
   display: block;
   height: auto;
   width: 100%;
}

.gbr-entry_h3 {
   width: 100%;
   margin: -6px 0;
   /* line-heightの余白分調整 */
   font-size: 2.4rem;
   line-height: 1.5;
}

.gbr-entry_txt p+.gbr-entry_h3 {
   /* 設定したマージンからline-height分の余白を引く */
   margin-top: calc(80px - 6px);
}

.gbr-entry_txt p {
   width: 100%;
   margin: calc(40px - (15px / 2)) 0;
   /* 設定したマージンからline-height分の余白を引く */
   font-size: 1.8rem;
   text-align: justify;
   word-break: break-all;
   line-height: 1.75;
}

.voice-caption {
   color: #565757;
   display: flex;
   justify-content: flex-end;
   font-size: 1.6rem !important;
}

.voice-caption2 {
   color: #565757;
   display: flex;
   justify-content: flex-end;
   margin-top: 0px !important;
   font-size: 1.6rem !important;
}

.voice-img-center {
   margin-left: auto;
   margin-right: auto;
   text-align: center;
}

.voice-img-s {
   max-width: 100%;
}

.article img {
   max-width: 50%;
   height: auto;
   float: right;
   margin: 0 0 10px 20px;
   vertical-align: bottom;
}

.article::after {
   content: "";
   display: block;
   clear: both;
}

.com-hr {
   max-width: 550px;
   border: 0;
   height: 1px;
   background-color: #565757;
}

.yakusyoku {
   font-size: 14px;
}

.gbr-entry_profile {
   max-width: 800px;
   display: flex;
   margin-bottom: 20px;
   flex-flow: row-reverse nowrap;
   justify-content: center;
   align-items: center;
}

.bgr-entry_img+.gbr-entry_profile {
   margin-top: 40px;
}

.gbr-entry_profile dl {
   display: flex;
   margin: 0 0 0 20px;
   text-align: left;
   flex-flow: column nowrap;
   justify-content: flex-end;
   align-items: flex-start;
   max-width: 270px;
}

.gbr-entry_profile dt {
   margin-right: 0px;
}

.gbr-entry_profile .com-name {
   font-size: 1.4rem;
   margin-bottom: -20px;
}

.gbr-entry_profile .p-name {
   display: flex;
   margin: 0;
   font-size: 1.8rem;
   flex-flow: column wrap;
   justify-content: flex-end;
   align-items: flex-start;
   column-gap: 1em;
}

.gbr-entry_profile .p-name span {
   display: inline-block;
}

.gbr-entry_txt .prfile_ph {
   height: 140px;
   width: 226px;
   border: solid 1px #221714;
}

.kanren-h {
   font-size: 1.8rem;
   color: #565757;
   background: linear-gradient(to top, #565757 0, #565757 100%);
   background-size: 880px 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
}

.tweet-btn {
   display: flex;
   width: 728px;
   margin: 0 auto;
   flex-flow: row nowrap;
   justify-content: flex-end;
   align-items: center;
   column-gap: 1em;
}

.tweet-btn span {
   font-size: 1.4rem;
}

.kanren_ul {
   display: flex;
   flex-flow: row wrap;
   /* 0520_大内修正：関連記事を左詰めに */
   /* justify-content: space-between; */
   justify-content: flex-start;
   align-items: flex-start;
   column-gap: 44px;
}

.kanren_li {
   width: 264px;
}

.kanren_li_ph {
   height: 251px;
   width: 262px;
   border: solid 1px #221714;
}

.kanren .new-icon {
   position: relative;
   top: -252px;
   left: 1px;
   height: 47px;
   width: auto;
   z-index: 9;
}

.kanren_title,
.kanren_li a,
.kanren_info,
.gbr-recent_info {
   color: #565757;
}

.kanren_title {
   margin: 20px 0 0 0;
}

.kanren_com-name-wrap {
   display: flex;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: flex-start;
}

.kanren_com-name {
   font-size: 1.8rem;
   font-weight: bold;
   line-height: 1;
}

a.erea-icon {
   display: flex;
   height: 18px;
   width: 39px;
   font-size: 1.2rem;
   color: #fff;
   border-radius: 3px;
   flex-flow: row nowrap;
   justify-content: center;
   align-items: center;
   flex-shrink: 0;
   flex-grow: 0;
}


.erea-n {
   background-color: #3071b9;
}

a.erea-s {
   background-color: #fdd000;
   color: #565757;
}

.erea-c {
   background-color: #c81528;
}

.erea-e {
   background-color: #1f8956;
}

.kanren_title_txt {
   display: block;
   margin: calc(10px - (7px / 2)) 0;
   /* 設定したマージンからline-height分の余白を引く */
   font-size: 1.4rem;
   font-weight: normal;
   line-height: 1.5;
   text-align: justify;
}

.kanren_info,
.gbr-recent_info {
   font-size: 1rem;
   display: flex;
   letter-spacing: 0.1em;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: center;
   gap: 5px 1em;
}

.kanren_info span:nth-child(2),
.gbr-recent_info span:nth-child(2) {
   display: inline-flex;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
   gap: 0 1em;
}

.kanren_info a.keyword,
.gbr-recent_info a.keyword {
   color: #565757;
   background: linear-gradient(to bottom, transparent 0, transparent 100%);
   background-size: 0 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
   transition: background .5s;
}

.kanren_info a.keyword:hover,
.gbr-recent_info a.keyword:hover {
   background: linear-gradient(to bottom, #565757 0, #565757 100%);
   background-size: 100% 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
   transition: background .5s;
}

.footer-keyword {
   margin-top: -40px;
   background-color: #faf2e1;
}

.footer-keyword {
   margin-top: -40px;
   background-color: #faf2e1;
}

.footer-keyword_inner {
   display: flex;
   flex-flow: row nowrap;
   justify-content: flex-start;
   align-items: stretch;
}

.footer-keyword-h {
   display: flex;
   margin-right: 41px;
   padding-right: 34px;
   background: linear-gradient(to bottom, #221714 0, #221714 100%);
   background-size: 1px calc(100% - 40px);
   background-position: 100% 50%;
   background-repeat: no-repeat;
   flex-flow: row nowrap;
   justify-content: center;
   align-items: center;
}

.footer-keyword-txt {
   margin-left: -1em;
   font-size: 1.4rem;
   font-weight: bold;
   text-align: justify;
   letter-spacing: 0.1em;
}

.footer-keyword-txt a {
   color: #968681;
}

.footer-keyword-txt a {
   display: inline-block;
   margin-left: 1em;
   line-height: 1.6;
   background: linear-gradient(to bottom, transparent 0, transparent 100%);
   background-size: 0 1px;
   background-position: 50% 20px;
   background-repeat: no-repeat;
   transition: background .5s;
}

.footer-keyword-txt a:hover {
   background: linear-gradient(to bottom, #968681 0, #968681 100%);
   background-size: 100% 1px;
   background-position: 50% 20px;
   background-repeat: no-repeat;
   transform: scale(1.1, 1.1);
   transition: background .2s, transform .2s;
}

.footer_inner {
   background-color: #968681;
}

#footer-nav {
   display: flex;
   flex-flow: row wrap;
   justify-content: flex-end;
   align-items: center;
}

.footer-info a:first-child {
   font-size: 1.8rem;
   font-weight: bold;
   color: #fff;
}

.hutomoji {
   font-weight: bold;
}

/* ----------------- Tizai TOP PAGE ----------------- */
#tizai_entry_top .tizai_top_title {
   min-height: 450px;
   height: auto;
   background: linear-gradient(to top, transparent 0, transparent 404px, #4c8dcb 404px, #4c8dcb 100%), url('images/tizai_bg.png');
   background-position: 0 100%, 50% 100%;
   background-size: cover, 1280px 404px;
   background-repeat: no-repeat, repeat-x;
   overflow: hidden;
}

#tizai_entry_top .tizai_entry_top_title {
   width: 401px;
   margin: 70px auto 30px auto;
   text-align: center;
}

#tizai_entry_top .tizai_entry_top_title img {
   display: block;
   height: 73px;
   width: auto;
}

#tizai_entry_top .tizai_entry_top_lead {
   display: block;
   height: 50px;
   width: auto;
   margin: 0 auto;
}

.tizai_entry_top_lead-sp {
   display: none;
}

#tizai_entry_top .tizai-recent_ul {
   display: flex;
   max-width: 876px;
   margin: -170px auto 35px auto;
   padding: 0;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
}

#tizai_entry_top .tizai-recent_li {
   width: 264px;
   margin-right: 42px;
   margin-bottom: 45px;
}

#tizai_entry_top .tizai-recent_li:nth-child(3n) {
   margin-right: 0;
}

.tizai-recent_ph,
.tizai-recent_txt-box {
   display: block;
}

.tizai-recent_ph {
   width: 262px;
   height: 250px;
   border: solid 1px #221714;
}

.tizai-recent_txt-box {
   width: 260px;
   height: 55px;
   margin-top: 10px;
   border-top: 0;
}

.tizai-recent_data {
   display: flex;
   margin: -1.5px 0 8.5px 0;
   margin-bottom: 10px;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: center;
}

.tizai-recent_cp-name {
   font-size: 1.6rem;
   font-weight: bold;
   line-height: 1.17;
   color: #565757;
}

.tizai-recent_txt-box h3,
.tizai-recent_txt-box h3 a {
   margin-top: -3.5px;
   font-size: 1.4rem;
   font-weight: normal;
   line-height: 1.5;
   text-align: justify;
   color: #565757;
}

.tizai-recent_txt-box h3 a {
   display: inline-block;
}

.tizai-recent_info {
   margin-top: 10px;
}

.tizai-recent_info p {
   margin: 0;
   line-height: 1;
}

.kanren_info,
.tizai-recent_info {
   font-size: 1rem;
   display: flex;
   letter-spacing: 0.1em;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: center;
   gap: 5px 1em;
}

.kanren_info span:nth-child(2),
.tizai-recent_info span:nth-child(2) {
   display: inline-flex;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
   gap: 0 1em;
}

.kanren_info a.keyword,
.tizai-recent_info a.keyword {
   color: #565757;
   background: linear-gradient(to bottom, transparent 0, transparent 100%);
   background-size: 0 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
   transition: background .5s;
}

.kanren_info a.keyword:hover,
.tizai-recent_info a.keyword:hover {
   background: linear-gradient(to bottom, #565757 0, #565757 100%);
   background-size: 100% 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
   transition: background .5s;
}

#tizai_entry_top #goto-top {
   display: none;
}

/* ----------------- Tizai ENTRY PAGE ----------------- */

.tizai-entry .tizai_top_title {
   /* 1127修正ここから
   min-height: 521px;
   */
   padding-bottom: 216px;
   /* 1127修正ここまで */
   height: auto;
   background: linear-gradient(to top, transparent 0, transparent 404px, #4c8dcb 404px, #4c8dcb 100%),
      url('images/tizai_bg.png');
   background-position: 0 100%, 50% 100%;
   background-size: cover, 1280px 404px;
   background-repeat: no-repeat, repeat-x;
   overflow: hidden;
}

.tizai-entry .tizai_top_title img {
   display: block;
   height: auto;
   width: 201px;
}

.tizai-entry .tizai_top_title h2 a {
   color: #fff;
   text-decoration: none;
}

.tizai-entry .tizai_top_title h2 a:first-child {
   display: inline-block;
}

.tizai-entry .tizai_top_title h2 p {
   margin: calc(40px - (15px / 2)) 0 calc(20px - (15px / 2)) 0;
   /* 設定したマージンからline-height分の余白を引く */
   font-size: 3rem;
   line-height: 1.5;
}

.tizai-com-name,
.tizai-keyword {
   margin: 0;
   text-align: right;
   color: #fff;
}

.tizai-com-name,
.tizai-keyword {
   line-height: 1;
   letter-spacing: 0.1em;
}

.tizai-com-name {
   font-size: 1.8rem;
}

.tizai-keyword {
   font-size: 1.4rem;
}

.tizai-keyword a,
.tizai-keyword a:active,
.tizai-keyword a:visited {
   margin-left: 1em;
   color: #fff;
   background-color: linear-gradient(to right, transparent 0, tarnsparent 100%);
   background-position: 50% 100%;
   background-size: 0 0;
   background-repeat: no-repeat;
   transition: background .5s ease-in-out;
}

.tizai-keyword a:first-child,
.tizai-keyword a:active:first-child,
.tizai-keyword a:visited:first-child {
   margin-left: 0;
}

.tizai-keyword a:hover {
   background: linear-gradient(to right, #fff 0, #fff 100%);
   background-position: 50% 100%;
   background-size: 100% 1px;
   background-repeat: no-repeat;
   transition: background .5s ease-in-out;
}

.gbr-entry_txt {
   margin-top: -163px;
}

.bgr-entry_img {
   height: 478px;
   width: 726px;
   border: solid 1px #221714;
}

.bgr-entry_img:first-child {
   margin-bottom: 0px;
}

.bgr-entry_img-s {
   height: 267px;
   width: 726px;
   border: solid 1px #221714;
}

.bgr-entry_img-l {
   height: 629px;
   width: 726px;
   border: solid 1px #221714;
}

.gbr-entry_h3 {
   width: 100%;
   margin: -6px 0;
   /* line-heightの余白分調整 */
   font-size: 2.4rem;
   line-height: 1.5;
}

.hatsumei_textbox .gbr-entry_h3 {
   margin-bottom: 1em;
   font-size: 1.8rem;
}

.gbr-entry_txt p+.gbr-entry_h3 {
   /* 設定したマージンからline-height分の余白を引く */
   margin-top: calc(80px - 6px);
}

.gbr-entry_txt p {
   width: 100%;
   margin: calc(40px - (15px / 2)) 0;
   /* 設定したマージンからline-height分の余白を引く */
   font-size: 1.8rem;
   text-align: justify;
   word-break: break-all;
   line-height: 1.75;
}

.tizai-entry_profile {
   display: flex;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: flex-end;
   margin-bottom: 50px;
}

.tizai-entry_profile dl {
   margin: 0 40px 0 0;
   text-align: left;
}

.tizai-entry_profile .com-name {
   font-size: 1.4rem;
}

.tizai-entry_profile .p-name {
   margin: 0;
   font-size: 1.8rem;
}

.gbr-entry_txt .prfile_ph {
   height: 140px;
   width: 226px;
   border: solid 1px #221714;
}

.tizai-h-name {
   margin: 0;
   text-align: right;
   line-height: 1.75;
   color: #fff;
   font-size: 1.6rem;
}

.tizai-btn p {
   font-size: 1.6rem;
   line-height: 1.5;
   font-weight: bold;
   color: #1f2a66;
}

.tizai-link-btn {
   margin-top: -25px;
}

.com-container {
   display: flex;
   flex-flow: row-reverse nowrap;
   justify-content: flex-end;
   align-items: flex-end;
   column-gap: 20px;
}

.tizai-btn {
   order: 1;
}

.com-container {
   order: 2;
}

.prfile_ph {
   order: 3;
}

/* ----------------- Tukurite TOP PAGE ----------------- */
#tukurite_entry_top .tukurite_top_title {
   min-height: 450px;
   height: auto;
   background: linear-gradient(to top, transparent 0, transparent 404px, #32b6a0 404px, #32b6a0 100%),
      url('images/tukurite-title-bg.png');
   background-position: 0 100%, 50% 100%;
   background-size: cover, 1280px 404px;
   background-repeat: no-repeat, repeat-x;
   overflow: hidden;
}

#tukurite_entry_top .tukurite_entry_top_title {
   width: 401px;
   margin: 70px auto 30px auto;
   text-align: center;
}

#tukurite_entry_top .tukurite_entry_top_title img {
   display: block;
   height: 60px;
   width: auto;
}

#tukurite_entry_top .tukurite_entry_top_lead {
   display: block;
   height: 50px;
   width: auto;
   margin: 0 auto;
}

#tukurite_entry_top .tukurite-recent_ul {
   display: flex;
   max-width: 876px;
   margin: -170px auto 35px auto;
   padding: 0;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
}

#tukurite_entry_top .tukurite-recent_li {
   width: 264px;
   margin-right: 42px;
   margin-bottom: 45px;
}

#tukurite_entry_top .tukurite-recent_li:nth-child(3n) {
   margin-right: 0;
}

.tukurite-recent_ph,
.tukurite-recent_txt-box {
   display: block;
}

.tukurite-recent_ph {
   width: 262px;
   height: 250px;
   border: solid 1px #221714;
}

.tukurite-recent_txt-box {
   width: 260px;
   height: 55px;
   margin-top: 10px;
   border-top: 0;
}

.tukurite-recent_data {
   display: flex;
   margin: -1.5px 0 8.5px 0;
   margin-bottom: 10px;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: center;
}

.tukurite-recent_cp-name {
   font-size: 1.6rem;
   font-weight: bold;
   line-height: 1.17;
   color: #565757;
}

.tukurite-recent_txt-box h3,
.tukurite-recent_txt-box h3 a {
   margin-top: -3.5px;
   font-size: 1.4rem;
   font-weight: normal;
   line-height: 1.5;
   text-align: justify;
   color: #565757;
}

.tukurite-recent_txt-box h3 a {
   display: inline-block;
}

.tukurite-recent_info {
   margin-top: 10px;
}

.tukurite-recent_info p {
   margin: 0;
   line-height: 1;
}

.kanren_info,
.tukurite-recent_info {
   font-size: 1rem;
   display: flex;
   letter-spacing: 0.1em;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: center;
   gap: 5px 1em;
}

.kanren_info span:nth-child(2),
.tukurite-recent_info span:nth-child(2) {
   display: inline-flex;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: flex-start;
   gap: 0 1em;
   margin-left: auto;
}

.kanren_info a.keyword,
.tukurite-recent_info a.keyword {
   color: #565757;
   background: linear-gradient(to bottom, transparent 0, transparent 100%);
   background-size: 0 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
   transition: background .5s;
}

.kanren_info a.keyword:hover,
.tukurite-recent_info a.keyword:hover {
   background: linear-gradient(to bottom, #565757 0, #565757 100%);
   background-size: 100% 1px;
   background-position: 50% 100%;
   background-repeat: no-repeat;
   transition: background .5s;
}

#tukurite_entry_top #goto-top {
   display: none;
}

/* ----------------- Tukurite ENTRY PAGE ----------------- */

.tukurite-entry .tukurite_top_title {
   min-height: 521px;
   height: auto;
   background: linear-gradient(to top, transparent 0, transparent 404px, #32b6a0 404px, #32b6a0 100%),
      url('images/tukurite-title-bg.png');
   background-position: 0 100%, 50% 100%;
   background-size: cover, 1280px 404px;
   background-repeat: no-repeat, repeat-x;
   overflow: hidden;
}

.tukurite-entry .tukurite_top_title img {
   display: block;
   height: auto;
   width: 201px;
}

.tukurite-entry .tukurite_top_title h2 a {
   color: #fff;
   text-decoration: none;
}

.tukurite-entry .tukurite_top_title h2 a:first-child {
   display: inline-block;
}

.tukurite-entry .tukurite_top_title h2 p {
   margin: calc(40px - (15px / 2)) 0 calc(20px - (15px / 2)) 0;
   /* 設定したマージンからline-height分の余白を引く */
   font-size: 3rem;
   line-height: 1.5;
}

.tukurite-com-name,
.tukurite-keyword {
   margin: 0;
   text-align: right;
   color: #fff;
}

.tukurite-com-name,
.tukurite-keyword {
   line-height: 1;
   letter-spacing: 0.1em;
}

.tukurite-com-name {
   font-size: 1.8rem;
}

.tukurite-keyword {
   font-size: 1.4rem;
}

.tukurite-keyword a,
.tukurite-keyword a:active,
.tukurite-keyword a:visited {
   color: #fff;
   background-color: linear-gradient(to right, transparent 0, tarnsparent 100%);
   background-position: 50% 100%;
   background-size: 0 0;
   background-repeat: no-repeat;
   transition: background .5s ease-in-out;
}

.tukurite-keyword a:hover {
   background: linear-gradient(to right, #fff 0, #fff 100%);
   background-position: 50% 100%;
   background-size: 100% 1px;
   background-repeat: no-repeat;
   transition: background .5s ease-in-out;
}

.gbr-entry_txt {
   margin-top: -163px;
}

.tukurite-entry_img {
   height: 478px;
   width: 726px;
   border: solid 1px #221714;
}

.tukurite-entry_img:first-child {
   margin-bottom: 80px;
}

.tukurite-entry_h3 {
   /* 1206追加 */
   display: flex;
   width: 100%;
   margin: -6px 0;
   /* line-heightの余白分調整 */
   font-size: 2.4rem;
   line-height: 1.5;
   /* 1206追加 */
   align-items: flex-end;
}

.bgr-entry_img+.tukurite-entry_h3 {
   margin-top: 40px;
}

.tukurite-entry_h3::before {
   display: inline-block;
   content: url('images/tsukurite_Q.jpg');
   height: 36px;
   width: 40px;
   margin-right: 5px;
}

.bgr-entry_txt p+.tukurite-entry_h3 {
   /* 設定したマージンからline-height分の余白を引く */
   margin-top: calc(80px - 6px);
}

.gbr-entry_txt p {
   width: 100%;
   /* 設定したマージンからline-height分の余白を引く */
   margin: calc(40px - (16px * .375)) 0;
   /* 12061206修正
   font-size: 2.5rem;
   */
   font-size: 1.8rem;
   text-align: justify;
   word-break: break-all;
   /* 12061206修正
   line-height: 1.4;
   */
   line-height: 1.75;
}

.gbr-entry_txt .hatsumei_textbox p {
   margin: 0;
   padding: 0;
}

.com-address {
   font-size: 1em;
   margin-top: 5px;
   text-align: justify;
}

.tizai-entry_profile {
   display: flex;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: flex-end;
   margin-bottom: 50px;
}

.tizai-entry_profile dl {
   margin: 0 40px 0 0;
   text-align: left;
}

.tizai-entry_profile .com-name {
   font-size: 1.4rem;
}

.tizai-entry_profile .p-name {
   margin: 0;
   font-size: 1.8rem;
}

.gbr-entry_txt .prfile_ph {
   height: 170px;
   width: 260px;
   border: solid 1px #221714;
}

.tizai-h-name {
   margin: 0;
   text-align: right;
   line-height: 1.75;
   color: #fff;
   font-size: 1.6rem;
}

.tizai-btn p {
   font-size: 1.6rem;
   line-height: 1.5;
   font-weight: bold;
   color: #1f2a66;
}

.tizai-link-btn {
   margin-top: -25px;
}

p.answer-text {
   /* 1206削除変更
   margin-top: 6px;
   */
   margin-top: 20px;
}

.answer-text::before {
   display: inline-block;
   content: url('images/tsukurite_A.jpg');
   height: 24px;
   width: 31px;
}


/* ----------------- Aozora PAGE ----------------- */

.container-aozora {
   width: 100%;
   max-width: 1280px;
   margin-right: auto;
   margin-left: auto;
}

.aozora_story {
   font-size: 1.8rem;
   font-weight: bold;
   line-height: 1;
}

.aozora_title {
   display: block;
   margin: calc(10px - (15px / 2)) 0;
   /* 設定したマージンからline-height分の余白を引く */
   font-size: 1.8rem;
   font-weight: bold;
   line-height: 1.2;
}

.container-manga {
   width: 100%;
   max-width: 921px;
   margin-right: auto;
   margin-left: auto;
}

.manga-nav {
   margin-top: 50px;
   text-align: center;
}

.manga-back {
   margin-right: 100px;
}

.manga-back:hover,
.manga-next:hover {
   opacity: .5;
   transition: .5s;
}

.close-btn {
   position: relative;
   margin-top: 80px;
   margin-bottom: -30px;
   margin-right: 30px;
   font-size: 5rem;
   text-align: right;
}

/* ----------------- Keyword PAGE ----------------- */

#keyword_toppage #keyword_top_content {
   margin-bottom: 80px;
}

.keyword-top {
   margin-top: 85px;
}

.keyword-erea {
   display: flex;
   flex-flow: row wrap;
   justify-content: flex-start;
   align-items: center;
}

.keyword-text {
   margin-left: 20px;
   font-size: 2.8rem;
   color: #565757;
}

.keyword_title_txt {
   display: block;
   margin: calc(10px - (10px / 2)) 0;
   font-size: 1.4rem;
   font-weight: normal;
   line-height: 1.5;
   text-align: justify;
}

/* ----------------- Kagayakou PAGE ----------------- */
.kagayakou-copy h3 {
   color: #565757;
   line-height: 3rem;
}

.kagayakou-copy p {
   color: #565757;
}

.copy-erea {
   text-align: center;
}

.kagayakou-copy {
   text-align: left;
   display: inline-block;
}

.kagayakou-title {
   height: auto;
   background: url('images/kagayakou_bg1.png');
   background-position: 70% 71px;
   background-size: 1980px 279px;
   background-repeat: no-repeat;
   overflow: hidden;
}

.kagayakou-background {
   position: relative;
   background: url('images/kagayakou_bg.png');
   background-position: center 280px;
   background-repeat: no-repeat;
   overflow: hidden;
   z-index: 1;
}

/* 250519修正ここから */
.kagayakou-background::before {
   /* スムーズなアニメーションのためにあらかじめ画像を読み込んでおく*/
   position: absolute;
   display: block;
   content: '';
   top: 0;
   width: 100%;
   height: 100%;
   background: url('images/kagayakou_bg.png'), url('images/kagayakou_bg-1.png'), url('images/kagayakou_bg-2.png'), url('images/kagayakou_bg-3.png'), url('images/kagayakou_bg-4.png'), url('images/kagayakou_bg-5.png'), url('images/kagayakou_bg-6.png'), url('images/kagayakou_bg-7.png');
   background-position: center 280px, -999999px 0, -999999px 0, -999999px 0, -999999px 0, -999999px 0, -999999px 0, -999999px 0;
   background-repeat: no-repeat;
   overflow: hidden;
   animation: twinclestar 8s ease-in-out infinite normal;
   animation-delay: 1s;
   z-index: 1;
}

.kagayakou-background::after {
   position: absolute;
   display: block;
   top: 0;
   content: '';
   width: 100%;
   height: 100%;
   background: url('');
   animation: twinclestar_after 8s ease-in-out infinite normal;
   animation-delay: 1s;
   z-index: 2;
}

@keyframes twinclestar {
   0% {
      /* 星1 きえる */
      background: url('images/kagayakou_bg-1.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   8% {
      /* 星1 きえる */
      background: url('images/kagayakou_bg-1.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   10% {
      /* 星1 ひかる */
      background: url('images/kagayakou_bg-1.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 1;
   }

   14% {
      /* 星1 きえる */
      background: url('images/kagayakou_bg-1.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   36% {
      /* 星3 きえる */
      background: url('images/kagayakou_bg-3.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   38% {
      /* 星3 ひかる */
      background: url('images/kagayakou_bg-3.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 1;
   }

   42% {
      /* 星3 きえる */
      background: url('images/kagayakou_bg-3.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   64% {
      /* 星5 きえる */
      background: url('images/kagayakou_bg-5.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   66% {
      /* 星5 ひかる */
      background: url('images/kagayakou_bg-5.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 1;
   }

   70% {
      /* 星5 きえる */
      background: url('images/kagayakou_bg-5.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   92% {
      /* 星7 きえる */
      background: url('images/kagayakou_bg-7.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   94% {
      /* 星7 ひかる */
      background: url('images/kagayakou_bg-7.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 1;
   }

   98% {
      /* 星7 きえる */
      background: url('images/kagayakou_bg-7.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   100% {
      /* 星全て きえる */
      background: url('images/kagayakou_bg-7.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }
}

@keyframes twinclestar_after {
   0% {
      background: url('images/kagayakou_bg-2.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   22% {
      /* 星2 きえる */
      background: url('images/kagayakou_bg-2.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   24% {
      /* 星2 ひかる */
      background: url('images/kagayakou_bg-2.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 1;
   }

   28% {
      /* 星2 きえる */
      background: url('images/kagayakou_bg-2.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   50% {
      /* 星4 きえる */
      background: url('images/kagayakou_bg-4.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   52% {
      /* 星4 ひかる */
      background: url('images/kagayakou_bg-4.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 1;
   }

   56% {
      /* 星4 きえる */
      background: url('images/kagayakou_bg-4.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   78% {
      /* 星6 きえる */
      background: url('images/kagayakou_bg-6.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   80% {
      /* 星6 ひかる */
      background: url('images/kagayakou_bg-6.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 1;
   }

   84% {
      /* 星6 きえる */
      background: url('images/kagayakou_bg-6.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }

   100% {
      background: url('images/kagayakou_bg-6.png');
      background-position: center 280px;
      background-repeat: no-repeat;
      opacity: 0;
   }
}

/* 250519修正ここまで */

.kagayakou_il1 {
   width: 840px;
   text-align: center;
}

.kagayakou_bg3 {
   position: absolute;
   left: 700px;
   margin-top: -110px;
}

.kagayakou_bg5 {
   position: absolute;
   right: calc((100vw + 550px) / 2);
   margin-top: -130px;
}

.kagayakou_il2 {
   height: 509px;
   background: url('images/kagayakou_bg2.png'), url('images/kagayakou_bg4.png');
   background-repeat: no-repeat;
   background-position: calc((100vw - 100px) / 2) bottom, calc((100vw - 780px) / 2) bottom;
   margin-top: -300px;
   margin-bottom: -5px;
}

.kagayakou-logo {
   position: relative;
   margin-top: 70px;
   z-index: 99;
   opacity: 1;
   z-index: 8;
}

.update_date {
   text-align: right;
   font-size: 1.4rem;
}

.kagayakou_b_text {
   padding: 1px 0.4em;
   position: relative;
   /*上下 左右の余白*/
   color: #494949;
   /*文字色*/
   background: transparent;
   /*背景透明に*/
   border-left: solid 5px #3264b4;
   /*左線*/
   text-align: left;
   font-size: 1.17em;
   font-weight: bold;
   color: #3264b4;
}

/* 0703大内: (順不同)追加 */
.kagayakou_b_text_jun {
   position: absolute;
   right: 0;
   bottom: 0;
   color: #494949;
   font-size: 0.7em;
   font-weight: normal;
}

.kagayakou_text span {
   display: block;
}

.kagayakou-copy span {
   display: inline;
}

.re-link-text {
   text-align: center;
   font-size: 1.4rem;
   color: #565757;
}

.ka-margin {
   margin-top: 80px;
}

.arrow_box {
   position: relative;
   background: #ffffff;
   border: 3px solid #3264b4;
}

.arrow_text span {
   display: inline-block;
}

.arrow_box:after,
.arrow_box:before {
   top: 100%;
   left: 50%;
   border: solid transparent;
   content: "";
   height: 0;
   width: 0;
   position: absolute;
   pointer-events: none;
}

.arrow_box:after {
   border-color: rgba(255, 255, 255, 0);
   border-top-color: #ffffff;
   border-width: 30px;
   margin-left: -30px;
}

.arrow_box:before {
   border-color: rgba(50, 100, 180, 0);
   border-top-color: #3264b4;
   border-width: 34px;
   margin-left: -34px;
}

.arrow_text {
   text-align: center;
   line-height: 3.6rem;
}

.arrow_text p {
   font-size: 2.6rem;
   font-weight: bold;
   color: #3264b4;
   padding: 0 20px;
}

.kagayakou_text {
   text-align: center;
}

.kagayakou_text p {
   font-size: 1.8rem;
   line-height: 3rem;
   color: #565757;
}

.recruit_erea {
   text-align: center;
}

.recruit_erea h3 {
   display: inline-block;
   font-size: 2.6rem;
   font-weight: bold;
   color: #fff;
   border: solid 2px #3264b4;
   background-color: #3264b4;
   padding: 5px 35px;
   border-radius: 5em;
}

.co_logocenter {
   margin: auto 0;
}

.co_logoerea {
   display: flex;
   flex-flow: row wrap;
   justify-content: center;
   align-items: flex-start;
   align-content: flex-start;
   gap: 20px 30px;
}

.sup {
   vertical-align: super;
   font-size: smaller;
}

.co_logo_hr1 {

   border: 0;
   height: 1px;
   background-color: #3264b4;
}

.co_logo_hr2 {
   border: 1px dashed #3264b4;
}

.co_logo {
   max-width: 180px;
}

.kagayakou-border-banner {
   border: 1px solid #3264b4;
}

.text-centering {
   text-align: center;
}

.recruitment_text {
   display: inline-block;
   text-align: center;
   border: solid 2px #3264b4;
   padding: 0px 40px;
   border-radius: 3em;
   transition: opacity .5s;
}

.recruitment_text:hover {
   opacity: .5;
   transition: opacity .5s;
}

.recruitment_text p {
   font-size: 1.6rem;
   line-height: 2.4rem;
   color: #565757;
}

.kagayakou_midashi {
   font-size: 4rem;
   color: #565757;
   font-weight: bold;
   text-align: center;
}

/* 0513_大内追加：フォームページ用CSS */
/* ----------------- FORM PAGE ----------------- */

.form-box {
   margin: 150px auto 100px;
   width: 850px;
}

.form-box h2 {
   text-align: center;
   font-size: 24pt;
   margin-bottom: 30px;
}

.form-box h3 {
   margin: 30px auto 10px;
}

.form-content {
   margin-bottom: 20px;
}

.form-content p {
   margin: 0;
}

input,
textarea {
   /* width: 100%; */
   width: calc(100% - 24px);
   padding: 10px;
   margin: 3px auto 0;
}

input[type="submit"] {
   width: 170px;
   height: 70px;
   display: block;
   margin: 0 auto;
}

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

.form-flex div {
   width: 49%;
}

#remarks {
   resize: none;
   width: calc(100% - 22px);
}

/* #postno1, #postno2 {
   width: 70px;
   margin-bottom: 3px;
}

#date, #date2{
   width: 45%;
} */

/* 0513_大内追加：このサイトについてページ用CSS */
/* ----------------- ABOUT PAGE ----------------- */
.about_wrap {
   margin: 150px auto 100px;
   width: 870px;
   display: flex;
   flex-flow: row nowrap;
   justify-content: space-between;
   align-items: flex-start;
}

.about_head1 {
   font-size: 2.3rem;
   padding-bottom: 10px;
   border-bottom: 1px solid #1f2a66;;
}

.about_head2 {
   font-size: calc(350px / 13);
   margin-top: 20px;
}

.about_head3 {
   font-size: 2.75rem;
   padding: 20px 0 10px;
   border-bottom: 1px solid #1f2a66;;
}

.about_txt {
   margin: 20px 0;
   font-size: 1.8rem;
   line-height: 3rem;
   color: #565757;
}

.about_txtbox1 {
   width: 350px;
}

.about_txtbox2 {
   width: 620px;
   margin: -105px auto 100px;
   padding: 0  40px;
   position: relative;
   z-index: 1;
   border-top: 7px solid #1f2a66;
   border-bottom: 7px solid #e8382f;
   background-color: #f7f7f7;
}

.about_img {
   width: 480px;
   align-self: flex-end;
}



/* ----------------- 404 PAGE / privacy-policy PAGE ----------------- */

#page404,
#privacy {
   display: flex;
   min-height: 100vh;
   flex-flow: column nowrap;
   justify-content: space-between;
}

#page404 main,
#privacy main {
   margin-top: 72px;
   padding: 100px 20px 100px 20px;
   text-align: center;
   line-height: 1.75;
   overflow: hidden;
}

#privacy main {
   max-width: 980px;
   margin-left: auto;
   margin-right: auto;
   text-align: justify;
}

#privacy main ul {
   margin-bottom: 5em;
   list-style-type: none;
   padding-left: 1.2em;
}

#privacy main li+li {
   margin-top: 2em;
}

#privacy h2 {
   text-align: center;
}

#privacy h3,
#privacy h4 {
   margin: 0;
}

#privacy h3 {
   margin-left: -1.2em;
   font-size: 1.2em;
}

#privacy h4 {
   font-size: 1em;
}

#privacy p+h4 {
   margin-top: 2em;
}

#privacy h4+p {
   margin-left: 1.2em;
}

#privacy .ind {
   margin-left: 1.5em;
   text-indent: -1.5em;
}

#page404 main p span {
   display: inline-block;
}

#page404 .gototop404 {
   display: inline-block;
   margin-top: 20px;
   padding: 20px 40px;
   font-size: 1.2em;
   font-weight: bold;
   color: #fff;
   background-color: #32b6a0;
   text-shadow: 0 0 3px rgba(0, 0, 0, .5);
   border-radius: 10px;
}


/* --------------------------------------------------------------------------

   utilities

   -------------------------------------------------------------------------- */

.U-w980m0auto {
   width: 980px;
   margin: 0 auto;
}

.U-bgcwht {
   background-color: #fff;
}

.U-bgcred {
   background-color: #ff505a;
}

.U-bgcblu {
   background-color: #4c8dcb;
}

.U-bgcgrn {
   background-color: #32b6a0;
}

.U-bgcblu2 {
   background-color: #3264b4;
}

.U-bgcnav {
   background-color: #1f2a66;
}

.U-w728mlrauto {
   width: 728px;
   margin-left: auto;
   margin-right: auto;
}

.U-w880m0autop050 {
   width: 880px;
   margin: 0 auto;
   padding: 0 50px;
   box-sizing: content-box;
}

.U-w600m0autop050-1 {
   width: 600px;
   margin: 0 auto;
}

.U-w600m0autop050-2 {
   width: 600px;
   margin: 0 auto;
}

.U-w600m0autop050-voice {
   width: 600px;
   margin: 0 auto;
}

.U-mt-10 {
   margin-top: -10px;
}

.U-mt-30 {
   margin-top: -30px;
}

.U-mt-40 {
   margin-top: -40px;
}

.U-mt-50 {
   margin-top: -50px;
}

.U-mt-250 {
   margin-top: -250px;
}

.U-mt71 {
   margin-top: 71px;
}

.U-mt80 {
   margin-top: 80px;
}

.U-mt74 {
   margin-top: 74px;
}

.U-mt10 {
   margin-top: 10px;
}

.U-mt20 {
   margin-top: 20px;
}

.U-mt30 {
   margin-top: 30px;
}

.U-mt40 {
   margin-top: 40px;
}

.U-mt50 {
   margin-top: 50px;
}

.U-mt80 {
   margin-top: 80px;
}

.U-mt100 {
   margin-top: 100px;
}

.U-mt120 {
   margin-top: 120px;
}

.U-mt150 {
   margin-top: 150px;
}

.U-mt200 {
   margin-top: 200px;
}

.U-mt220 {
   margin-top: 220px;
}

.U-p050 {
   padding: 0 50px;
}

.U-mb70 {
   margin-bottom: 70px;
}

.U-mb50 {
   margin-bottom: 50px;
}

.U-mb30 {
   margin-bottom: 30px;
}

.U-mb100 {
   margin-bottom: 100px;
}

.U-mb150 {
   margin-bottom: 150px;
}

.U-mb32 {
   margin-bottom: 32.5px;
}

.U-mb-10 {
   margin-bottom: -10px;
}

.U-mb-30 {
   margin-bottom: -30px;
}

.U-mb-80 {
   margin-bottom: -80px;
}

.U-bgcred {
   background-color: #ff505a;
}

.U-fcblue {
   color: #1f2a66;
}

.U-fcgray {
   color: #565757;
}

.U-op-anime {
   opacity: 1;
   transition: opacity .5s ease-in-out;
}

.U-op-anime:hover {
   opacity: .5;
}

.U-sc-anime {
   transform: scale(1, 1);
   transition: transform .2s ease-out;
}

.U-sc-anime:hover {
   animation: sc-anime01 0.6s ease-in-out 1 normal;
   transform: scale(1.05, 1.05);
}

@keyframes sc-anime01 {
   0% {
      transform: scale(1, 1);
      opacity: 1;
   }

   20% {
      transform: scale(1.1, 1.1);
      opacity: 0.9;
   }

   100% {
      transform: scale(1.05, 1.05);
      opacity: 1;
   }
}

.top-slider {
   position: relative;
   z-index: 8;
}

.slider {
   position: absolute;
   margin-top: 90px;
   width: 520px;
   display: block;
   padding: 0;
   left: calc((100vw - 920px) / 2);
   border: solid 1px #221714;
   animation: title-anime 1.5s ease-in-out 1 normal;
}

a.slider_wrap {
   color: #fff;
}

a.slider_wrap,
.slider_ph {
   display: block;
   width: 100%;
   height: 485px;
}

.slider_txt {
   display: block;
   position: absolute;
   left: 0;
   right: 0;
   bottom: 0;
   padding: 20px;
   background-color: rgba(0, 0, 0, .5);
}

.slider_ph p {
   margin: 0;
}

.slider_com-name {
   display: block;
   margin: 0 0 calc(10px - .315rem) 0;
   font-size: 2.1rem;
   font-weight: bold;
   line-height: 1.3;
}

.slider_title_txt {
   font-size: 1.8rem;
   font-weight: normal;
   line-height: 1.3;
   text-align: justify;
   margin: -.27rem 0 0 0;
}


.clickable-erea {
   position: relative;
   top: calc(((70vw * 0.2517) + 60px + 9.37vw) - 161.867vw);
   margin-bottom: calc(100vw * 0.8 * -0.9326);
   height: calc(100vw * 0.8 * 0.9326);
   width: calc(100vw * 0.8);
   margin-left: auto;
   margin-right: auto;
   z-index: 9;
   display: block;
}

.clickable-erea a,
.clickable-erea ul {
   width: 100%;
   height: 100%;
   display: block;
   margin: 0;
   padding: 0;
}

.clickable-erea li,
.clickable-erea a {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   margin: 0;
   padding: 0;
}

.clickable-erea ul {
   overflow: hidden;
}

.slide-dots {
   position: absolute;
   /* 240510変更ここから
   margin-left: 120px;
   */
   width: 100%;
   padding: 0;
   text-align: center;
   /* 変更ここまで */
}

.slide-dots li {
   display: inline-block;
   margin: 0 6px;
}

.slide-dots li button {
   position: relative;
   text-indent: -9999px;
}

.slide-dots li button::before {
   background-image: url(images/top-slider_dot.png);
   background-repeat: no-repeat;
   background-size: contain;
   content: "";
   cursor: pointer;
   height: 13.5px;
   left: 0;
   margin: auto;
   position: absolute;
   right: 0;
   top: 12px;
   width: 12px;
}

.slide-dots li.slick-active button::before {
   background-image: url(images/top-slider_dot_active.png);
}

button {
   background: none;
   border: none;
   outline: none;
   padding: 0 7px;
}

.header_before {
   display: block;
}

.header_before.change-color {
   display: none;
}

.header_before.change-color2 {
   display: block;
}

.header_after {
   display: none;
}

.header_after.change-color {
   display: block;
}

.header_after.change-color2 {
   display: none;
}



@media screen and (max-width:1278px) {
   .aozora-il {
      height: auto;
      width: 100%;
   }

   .aozora-top-il {
      height: auto;
      width: 100%;
   }

   .back-ground_ill1 {
      margin-top: -260px;
      margin-left: 25px;
   }

   .back-ground_ill2 {
      max-width: 18%;
      margin-top: 70px;
   }
}


/*************** 0822Tori ***************/

@media screen and (max-width:1150px) {
   .voice_top_list.pc-ver{
      display: none;
   }

   .voice_top_list.tb-ver{
      display: block;
   }

   #voice_entry_top .voice_top_title {
      min-height: 350px;
      height: auto;
   }

   div.voice_top_list {
      top: -100px;
      width: 660px;
      height: 700px;
   }

   .voice-aerospace{
      top: 50px;
      left: 1%;
   }

   .voice-construction{
      left: 23%;
   }

   .voice-biomass{
      top: 250px;
   }

   .voice-architecture{
      top: 60px;
   }

   .voice-machine{
      top: 420px;
   }

   .voice-woodworking{
      top: 200px;
   }

   .voice-fishing{
      top: 470px;
      left: 13%;
   }

   .voice-forestry{
      top: 340px;
   }

   .voice-agriculture{
      top: 460px;
      left: 43%;
   }

   .voice-dairying{
      top: 490px;
      right: 1%;
   }


}

/***** 0822Tori END *****/



@media screen and (max-width:979px) {
   #aozora_entry_top main:hover {
      overflow: hidden;
   }

   /* Header */
   header {
      width: 100%;
   }

   #header-inner {
      width: calc(100% - 60px);
   }

   /* Footer */

   #footer {
      margin-top: 80px;
   }

   #kagayakou #footer {
      margin-top: 40px;
   }

   .footer-keyword_inner,
   #footer-nav,
   .footer-info {
      width: 100%;
      box-sizing: border-box;
   }

   .footer-keyword_inner,
   .footer-info {
      padding: 0 30px;
   }

   #footer-nav {
      padding-right: 30px;
   }

   #goto-top {
      left: 0;
      float: right;
      /* 0826Tori margin-right: 30px; */
   }

   .footer-logo {
      left: 30px;
   }

   /* Top-page */
   .container+.concept-copy {
      width: 100%;
      margin: 0;
   }

   .main-title {
      height: calc(100vw * 0.9375);
      width: 100%;
   }

   .main-title::after {
      top: calc((100vw * 0.9375 * -1) + (100vw * 0.0739));
      height: calc(100vw * 0.9375);
      background-image: url('images/top-ill_sp02.png'), url('images/top-ill_sp01.png');
      /* background-image: image-set(url('images/top-ill_sp02.png') 1x, url('images/top-ill_sp02@2x.png') 2x, url('images/top-ill_sp02@3x.png') 3x), image-set(url('images/top-ill_sp01.png') 1x, url('images/top-ill_sp01@2x.png') 2x, url('images/top-ill_sp01@3x.png') 3x);
      background-image: -webkit-image-set(url('images/top-ill_sp02.png') 1x, url('images/top-ill_sp02@2x.png') 2x, url('images/top-ill_sp02@3x.png') 3x), -webkit-image-set(url('images/top-ill_sp01.png') 1x, url('images/top-ill_sp01@2x.png') 2x, url('images/top-ill_sp01@3x.png') 3x); */
      background-repeat: no-repeat;
      background-size: calc(100vw * .95) auto, calc(100vw * 1.1667) auto;
      background-position: -33px 40%, 50% 50%;

      z-index: 2;
   }

   .gbr-hokkaido-logo {
      height: auto;
      width: calc(100vw * 0.5791);
   }

   .concept-copy img {
      height: auto;
      width: calc(100% - 60px);
   }

   .news {
      width: calc(100% - 120px);
      max-width: calc(100% - 120px);
      margin-right: 60px;
      margin-left: 60px;

   }

   .back-ground {
      background: url(images/gbr-voice_bg.png);
      background-position: 50% 0;
      background-size: contain;
      background-repeat: no-repeat;
      overflow: hidden;
   }

   .back-ground2 {
      background-color: #c0d1d9;
      width: auto;
      height: 330px;
      border-radius: 30px;
      margin-top: 100px;
   }

   .back-ground_ill1 {
      margin-top: -180px;
   }

   .back-ground_ill2 {
      margin-top: 100px;
      margin-left: 30%;
   }

   .ganbaru-copy a img {
      height: auto;
      width: 36.8vw;
   }

   .top-gbr-voice {
      height: auto;
      width: 45.4vw
   }

   .voice.U-w980m0auto {
      width: 100%;
   }

   .voice_ul.U-w880m0autop050 {
      width: calc(100% - 100px);
   }

   .voice_li {
      width: calc((100% - 88px) / 3);
      margin-right: 44px;
   }

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

   .voice_li_ph,
   .gbr-recent_txt-box {
      height: calc(((100vw - 100px - 88px) / 3) * 0.96);
      width: calc(100% - 2px);
   }

   .voice_title {
      padding: 1vw;
      padding: calc(((100vw - 100px - 88px) / 3) * .0378);
   }

   .voice_erea {
      min-height: calc(((100vw - 100px - 88px) / 3) * .4);
      height: auto;
   }

   .voice_com-name,
   .gbr-recent_cp-name {
      font-size: calc(((100vw - 100px - 88px) / 3) * .067);
   }

   .voice_title_txt,
   .gbr-recent_txt-box h3,
   .gbr-recent_txt-box h3 a {
      margin: 0;
      font-size: calc(((100vw - 100px - 88px) / 3) * .052);
   }

   .column.U-w980m0auto,
   .column_ul.U-w880m0autop050 {
      width: 100%;
   }

   .column_ul {
      box-sizing: border-box;
   }

   .column_li {
      width: calc((100% - 88px - 2px) / 3);
   }

   .column_li_ph {
      height: calc(((100vw - 100px - 88px) / 3) * 0.96);
      width: 100%;
   }

   .column_com-name,
   .tizai-recent_cp-name {
      font-size: calc(((100vw - 100px - 88px) / 3) * .067);
   }

   .column_subtext,
   .aozora_story,
   .aozora_title {
      /* aozora-top */
      font-size: calc(((100vw - 100px - 88px) / 3) * .045);
   }

   .column_title_txt {
      font-size: calc(((100vw - 100px - 88px) / 3) * .052);
   }

   .voice_ul {
      gap: 50px 0px;
   }

   .top-h2 {
      font-size: 3.877vw;
   }

   .banner-erea {
      width: 100%;
      /* padding: 0 50px; */
      box-sizing: border-box;
   }

   .sponsors_erea {
      padding: 0 50px;
   }

   #voice_entry_top .gbr-recent_ul {
      width: calc(100% - 100px);
   }

   #voice_entry_top .gbr-recent_li {
      width: calc((100% - 88px) / 3);
      margin-right: 44px;
   }

   #voice_entry_top .gbr-recent_li:nth-child(3n) {
      margin-right: 0;
   }

   .gbr-recent_ph {
      height: calc(((100vw - 100px - 88px) / 3) * 0.96);
      width: calc(100% - 2px);
   }

   a.erea-icon {
      font-size: 1vw;
      height: calc(1.1vw * 1.5);
      width: calc(1.1vw * 3.25);
      border-radius: 0.3vw;
   }

   .slider,
   .slider img,
   a.slider_wrap,
   .slider_ph {
      height: calc(100vw * 0.5416 * 0.9326);
      width: calc(100vw * 0.5416);
   }

   .slider {
      left: 30px;
      margin-top: calc(100vw * 0.0937);
   }

   .slider_com-name {
      font-size: calc(54.16vw * .03984);
   }

   .slider_title_txt {
      font-size: calc(54.16vw * .03415);
      margin-top: calc(54.16vw * 0.3415 * .15 * -1);
   }

   .slide-dots {
      display: flex !important;
      margin: 0 auto;
      padding-left: 0;
      width: 100%;
      flex-flow: row nowrap;
      justify-content: center;
      align-items: center;
   }

   /* Aozora-top */
   .container-aozora,
   .aozora-top {
      width: 100%;
   }

   /* Aozora-article */
   #manga_article .container-manga {
      padding-left: 50px;
      padding-right: 50px;
      box-sizing: border-box;
   }

   /* Kagayakou-page */
   .kagayakou-title {
      background: url(images/kagayakou_bg1.png);
      background-position: 70% 5.546875vw;
      background-size: 137.421875vw auto;
      background-repeat: no-repeat;
   }

   #kagayakou .title-logo.U-mt100 {
      margin-top: 12vw;
   }

   .kagayakou-logo {
      width: 35vw;
      margin-top: 5.46875vw;
   }

   /* 0619大内追加:トップの輝こうロゴを拡大(タブレット版) */
   .back-ground2>.title-logo>.kagayakou-logo {
      width: 50vw;
   }

   /* 250519修正ここから */
   .kagayakou-background {
      /* 星1 スムーズなアニメーションのためにあらかじめ画像を読み込んでおく */
      background: url('images/kagayakou_bg_sp01.png'), url('images/kagayakou_bg_sp02.png'), url('images/kagayakou_bg_sp03.png'), url('images/kagayakou_bg_sp04.png'), url('images/kagayakou_bg_sp01-1.png'), url('images/kagayakou_bg_sp01-2.png'), url('images/kagayakou_bg_sp01-3.png'), url('images/kagayakou_bg_sp01-4.png'), url('images/kagayakou_bg_sp01-5.png'), url('images/kagayakou_bg_sp01-6.png'), url('images/kagayakou_bg_sp01-7.png');
      background-size: 148.44375vw auto, 148.44375vw auto, 148.44375vw auto, 15.703vw auto, 148.44375vw auto, 148.44375vw auto, 148.44375vw auto, 148.44375vw auto, 148.44375vw auto, 148.44375vw auto, 148.44375vw auto;
      background-position: center 21.875vw, center calc(21.875vw + (148.44375vw * .2873) + 200px), center calc(21.875vw + (148.44375vw * .2873) + 1200px), -20px calc(21.875vw + (148.44375vw * .2873) + 640px), -99999px 0, -99999px 0, -99999px 0, -99999px 0, -99999px 0, -99999px 0, -99999px 0;
      background-repeat: no-repeat;
      overflow: hidden;
   }

   .kagayakou-background::before {
      position: absolute;
      display: block;
      content: '';
      top: 0;
      width: 100%;
      height: 100%;
      background: url('');
      overflow: hidden;
      animation: twinclestar979 8s ease-in-out infinite normal;
      animation-delay: 1s;
      z-index: -999;
   }

   .kagayakou-background::after {
      position: absolute;
      display: block;
      top: 0;
      content: '';
      width: 100%;
      height: 100%;
      background: url('');
      animation: twinclestar979_after 8s ease-in-out infinite normal;
      animation-delay: 1s;
      z-index: -998;
   }

   @keyframes twinclestar979 {
      0% {
         /* 星1 きえる */
         background: url('images/kagayakou_bg_sp01-1.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      8% {
         /* 星1 きえる */
         background: url('images/kagayakou_bg_sp01-1.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      10% {
         /* 星1 ひかる */
         background: url('images/kagayakou_bg_sp01-1.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      14% {
         /* 星1 きえる */
         background: url('images/kagayakou_bg_sp01-1.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      36% {
         /* 星3 きえる */
         background: url('images/kagayakou_bg_sp01-3.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      38% {
         /* 星3 ひかる */
         background: url('images/kagayakou_bg_sp01-3.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      42% {
         /* 星3 きえる */
         background: url('images/kagayakou_bg_sp01-3.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      64% {
         /* 星5 きえる */
         background: url('images/kagayakou_bg_sp01-5.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      66% {
         /* 星5 ひかる */
         background: url('images/kagayakou_bg_sp01-5.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      70% {
         /* 星5 きえる */
         background: url('images/kagayakou_bg_sp01-5.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      92% {
         /* 星7 きえる */
         background: url('images/kagayakou_bg_sp01-7.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      94% {
         /* 星7 ひかる */
         background: url('images/kagayakou_bg_sp01-7.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      98% {
         /* 星7 きえる */
         background: url('images/kagayakou_bg_sp01-7.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      100% {
         /* 星7 きえる */
         background: url('images/kagayakou_bg_sp01-7.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }
   }

   @keyframes twinclestar979_after {
      0% {
         /* 星2 きえる */
         background: url('images/kagayakou_bg_sp01-2.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      22% {
         /* 星2 きえる */
         background: url('images/kagayakou_bg_sp01-2.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      24% {
         /* 星2 ひかる */
         background: url('images/kagayakou_bg_sp01-2.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      28% {
         /* 星2 きえる */
         background: url('images/kagayakou_bg_sp01-2.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      50% {
         /* 星4 きえる */
         background: url('images/kagayakou_bg_sp01-4.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      52% {
         /* 星4 ひかる */
         background: url('images/kagayakou_bg_sp01-4.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      56% {
         /* 星4 きえる */
         background: url('images/kagayakou_bg_sp01-4.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      78% {
         /* 星6 きえる */
         background: url('images/kagayakou_bg_sp01-6.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      80% {
         /* 星6 ひかる */
         background: url('images/kagayakou_bg_sp01-6.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      84% {
         /* 星6 きえる */
         background: url('images/kagayakou_bg_sp01-6.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      100% {
         /* 星6 きえる */
         background: url('images/kagayakou_bg_sp01-6.png');
         background-size: 148.44375vw auto;
         background-position: center 21.875vw;
         background-repeat: no-repeat;
         opacity: 0;
      }
   }

   /* 250519修正ここまで */

   .kagayakou-copy {
      margin-top: 15.625vw;
   }

   .kagayakou-copy_top_sp {
      margin-top: 10px;
   }

   .kagayakou-copy h3 {
      font-size: 1.14625vw;
      font-size: 14px;
      line-height: 2.34375vw;
      line-height: 2.142em;
   }

   .kagayakou-copy h3 span {
      display: inline-block;
   }

   #kagayakou .update_date {
      font-size: 1.09375vw;
      font-size: 12px;
   }

   .kagayakou_il1 {
      width: calc(100% + 100px);
   }

   .arrow_text p {
      font-size: 21px;
   }

   .kagayakou_text p {
      font-size: 16px;
      line-height: 1.67;
   }

   .kagayakou_il2 {
      background: url(images/kagayakou_bg2.png), url(images/kagayakou_bg4.png);
      background: image-set(url(images/kagayakou_bg2.png) 1x, url(images/kagayakou_bg2@2x.png) 2x, url(images/kagayakou_bg2@3x.png) 3x), image-set(url(images/kagayakou_bg4.png) 1x, url(images/kagayakou_bg4@2x.png) 2x, url(images/kagayakou_bg4@3x.png) 3x);
      background: -webkit-image-set(url(images/kagayakou_bg2.png) 1x, url(images/kagayakou_bg2@2x.png) 2x, url(images/kagayakou_bg2@3x.png) 3x), -webkit-image-set(url(images/kagayakou_bg4.png) 1x, url(images/kagayakou_bg4@2x.png) 2x, url(images/kagayakou_bg4@3x.png) 3x);
      background-repeat: no-repeat;
      background-position: calc(100vw - 570px) bottom, calc((100vw - 780px) / 2) bottom;
   }

   /* VoiceTop-page */
   .gbr-recent_data,
   .gbr-recent_txt-box h3 a {
      width: 100%;
   }

   .gbr-recent_txt-box {
      width: 100%;
      height: auto;
      box-sizing: border-box;
      padding: calc(((100vw - 100px - 88px) / 3) * .0378);
   }

   .gbr-recent_data {
      margin: 0;
   }

   .voice-img-center {
      margin-left: 50px;
      margin-right: 50px;
   }

   .voice-img-s {
      max-width: 100%;
   }

   .voice_list13up {
      width: calc(100vw - 100px);
   }

   .voice_ul13up-left {
      display: flex;
      width: calc(100% - 44px - ((100% - 88px) / 3));
      margin: 0 44px 0 0;
      padding: 0;
      flex-flow: row wrap;
      justify-content: flex-start;
      align-items: flex-start;
      gap: 50px 0px;
      flex: 0 0 calc(100% - 44px - ((100% - 88px) / 3));
   }

   .voice_ul13up-left li {
      width: calc((100% - 44px) / 2);
   }

   .voice_ul13up-right {
      width: calc((100% - 88px) / 3);
      flex: 0 0 calc((100% - 88px) / 3);
   }

   /*************** 0826Tori ***************/

   .voice_top_list.tb-ver{
      margin-bottom: -120px;
   }

   /* 0826Tori END */


   /* TizaiTop-page */
   #tizai_entry_top .tizai-recent_ul {
      padding: 0 50px;
      box-sizing: border-box;
   }

   #tizai_entry_top .tizai-recent_li {
      width: calc((100% - 84px) / 3);
   }

   .tizai-recent_ph {
      width: calc(100% - 2px);
      height: calc(((100vw - 100px - 84px) / 3) * 0.96);
   }

   .tizai-recent_txt-box h3 a {
      margin: 0;
      font-size: calc(((100vw - 100px - 88px) / 3) * .052);
   }

   .tizai-recent_txt-box {
      height: auto;
      width: 100%;
      box-sizing: border-box;
   }

   /* TukuriteTop-page */
   #tukurite_entry_top .tukurite-recent_ul {
      padding: 0 50px;
      box-sizing: border-box;
   }

   #tukurite_entry_top .tukurite-recent_li {
      width: calc((100% - 84px) / 3);
   }

   .tukurite-recent_ph {
      width: calc(100% - 2px);
      height: calc(((100vw - 100px - 84px) / 3) * 0.96);
   }

   .tukurite-recent_txt-box {
      width: 100%;
   }

   .tukurite-recent_txt-box h3 a {
      margin: 0;
      font-size: calc(((100vw - 100px - 88px) / 3) * .052);
   }

   .kanren.U-w980m0auto {
      width: 100%;
      margin-bottom: 110px;
   }

   .U-w880m0autop050 {
      width: calc(100% - 100px);
   }

   .kanren_li {
      width: calc((100% - 88px) / 3);
   }

   .kanren_li_ph {
      height: calc((100vw) / 3 * .7);
      width: 100%;
   }

   .kanren_com-name {
      margin: 0;
      font-size: calc(((100vw - 100px - 88px) / 3) * .067);
   }

   .kanren_title_txt {
      font-size: calc(((100vw - 100px - 88px) / 3) * .052);
   }

   .kanren-h {
      color: #565757;
      background: linear-gradient(to top, #565757 0, #565757 100%);
      background-size: calc(100vw - 100px) 1px;
      background-position: 50% 100%;
      background-repeat: no-repeat;
   }

   /* Tizai-entry-page */
   .tizai-entry_profile {
      display: flex;
      flex-flow: row wrap;
      justify-content: flex-end;
      align-items: flex-end;
      gap: 10px 20px;
      margin-bottom: 50px;
   }

   .tizai-btn {
      order: 1;
      min-height: 3em;
      min-width: 294px;
   }

   .com-container {
      order: 3;
      display: flex;
      flex-flow: column nowrap;
      justify-content: flex-start;
      align-items: center;
      row-gap: 10px;
   }

   .prfile_ph {
      order: 2;
   }

   .com-container dl,
   .com-container dt {
      margin-right: 0;
   }

   .column.U-w980m0auto {
      margin-bottom: 100px;
   }

   .aozora-top,
   #aozora_entry_top .column.U-w980m0auto {
      margin-bottom: 40px;
   }

   /* Keyword */
   .container-keyword {
      margin-left: 50px;
      width: auto;
   }

   #page404 .footer-keyword {
      background-color: transparent;
   }

   #page404 .footer-keyword_inner {
      background-color: #faf2e1;
   }
}

@media screen and (max-width: 883px) {

   #header,
   #header_inner {
      overflow: visible;
   }

   #header.active:before {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      height: 100vh;
      width: 100vw;
      z-index: 5;
      background-color: rgba(255, 255, 255, .5);

   }

   #main-nav {
      display: none;
   }

   #HM {
      display: block;
      margin-top: 2px;
   }

   .HM-btn {
      display: block;
      height: 49px;
      width: 40px;
   }

   .HM-btn.active {
      position: relative;
      top: 0;
      right: 0;
      height: 30px;
      width: 30px;
      z-index: 10;
   }

   .HM-btn .f-line,
   .HM-btn .s-line,
   .HM-btn .t-line {
      display: block;
      height: 2px;
      width: 40px;
      background-color: #221714;
      transition: all .5s;
   }

   #header.change-color .HM-btn .f-line,
   #header.change-color .HM-btn .s-line,
   #header.change-color .HM-btn .t-line {
      background-color: #fff;
      transition: all .5s;
   }

   #header.change-color2 .HM-btn .f-line,
   #header.change-color2 .HM-btn .s-line,
   #header.change-color2 .HM-btn .t-line {
      background-color: #221714;
      transition: all .5s;
   }

   .HM-btn.active .f-line,
   .HM-btn.active .t-line,
   #header.change-color2 .HM-btn.active .f-line,
   #header.change-color2 .HM-btn.active .t-line {
      height: 2px;
      right: 5px;
      width: 42px;
      background-color: #fff;
      transition: all .5s;
   }

   .HM-btn.active .f-line {
      top: 15px;
      right: 5px;
      transform: rotate(45deg);
      transition: all .5s;
   }

   .HM-btn.active .t-line {
      top: 10px;
      transform: rotate(-45deg);
      transition: all .5s;
   }

   .HM-btn.active .s-line {
      opacity: 0;
      transition: opacity .5s;
   }

   .HM-btn .f-line {
      position: relative;
      top: 0;
   }

   .HM-btn .s-line {
      position: relative;
      top: 10px;
   }

   .HM-btn .t-line {
      position: relative;
      top: 20px;
   }

   .HM-btn .f-line-w,
   .HM-btn .s-line-w,
   .HM-btn .t-line-w {
      display: block;
      height: 2px;
      width: 40px;
      background-color: #fff;
      transition: all .5s;
   }

   .HM-btn.active .f-line-w,
   .HM-btn.active .t-line-w {
      height: 2px;
      right: 5px;
      width: 42px;
      background-color: #fff;
      transition: all .5s;
   }

   .HM-btn.active .f-line-w {
      top: 15px;
      right: 5px;
      transform: rotate(45deg);
      transition: all .5s;
   }

   .HM-btn.active .t-line-w {
      top: 10px;
      transform: rotate(-45deg);
      transition: all .5s;
   }

   .HM-btn.active .s-line-w {
      opacity: 0;
      transition: opacity .5s;
   }

   .HM-btn .f-line-w {
      position: relative;
      top: 0;
   }

   .HM-btn .s-line-w {
      position: relative;
      top: 10px;
   }

   .HM-btn .t-line-w {
      position: relative;
      top: 20px;
   }

   .HM-btn .HM-t {
      position: relative;
      top: 25px;
      height: auto;
      width: 40px;
      transition: opacity .5s;
   }

   .HM-btn.active .HM-t {
      opacity: 0;
      transition: opacity .5s;
   }

   #header.change-color .HM-btn .HM-t {
      filter: invert(100%) brightness(200%);
      transition: all .5s;
   }

   #header.change-color2 .HM-btn .HM-t {
      filter: none;
      transition: all .5s;
   }

   #HM>ul {
      position: absolute;
      top: 0;
      right: -100vw;
      height: 100vh;
      width: auto;
      margin: 0;
      padding: 0;
      background-color: #1f2a66;
      box-sizing: border-box;
      overflow: visible;
      transition: all .5s;
   }

   #HM>ul.active {
      right: 0;
      padding: 0 50px;
      transition: all .5s;
      z-index: 9;
   }


   #HM>ul a {
      font-weight: bold;
      color: #fff;
   }

   #HM li {
      line-height: 58px;
   }

   #HM li:first-child {
      margin-top: 110px;
   }

   #HM li:last-child {
      margin-top: 25px;
      line-height: 1;
   }

   #HM li,
   #HM li a {
      display: block;
      width: auto;
   }

   #footer-nav {
      display: none;
   }

   .footer-info {
      margin-top: 37px;
   }

   .footer_small_wrap {
      margin-top: -29px;
   }

   #footer small:first-child {
      display: inline-block;
      margin-bottom: 5px;
   }

   #footer small:first-child,
   #footer small:first-child a {
      font-weight: normal;
   }

   .form-box {
      width: calc(100% - 30px);
   }

   .about_wrap {
      width: calc(100% - 100px);
   }

   .about_txt {
      margin-bottom: 40px;
   }

   .about_head2 {
      font-size: calc((100vw - 100px) * 0.54 / 13);
   }

   .about_img {
      width: calc((100vw - 100px) * 0.45);
   }

   .about_txtbox1 {
      width: calc((100vw - 100px) * 0.54);
   }

   .about_txtbox2 {
      width: calc(100% - 180px);
   }

   /* 0825Tori */
   #voice_entry_top .voice_entry_top_lead.sp-ver {
      display: block;
   }

   #voice_entry_top .voice_entry_top_lead.pc-ver {
      display: none;
   }

   /* 0825Tori END */
}

@media screen and (max-width:880px) {
   .gbr-entry_h3 span {
      display: inline-block;
   }

   .voice-entry .entry_top_title h2 p {
      font-size: 29px;
   }

   .entry_top_title_inner.U-w880m0autop050 {
      width: 100%;
      /* 0516_大内修正：多行タイトル対応のため1行コメントアウト */
      /* padding: 0 50px; */
      box-sizing: border-box;
   }
}

@media screen and (max-width:828px) {
   .gbr-entry_txt.U-w728mlrauto {
      width: 100%;
      padding: 0 20px;
      box-sizing: border-box;
   }

   .bgr-entry_img:first-child,
   .bgr-entry_img {
      width: calc(100% - 2px);
      height: calc(((100vw - 100px) * 0.75));
   }

   .bgr-entry_img-s:first-child,
   .bgr-entry_img-s {
      /* 変更07/28 */
      width: calc(100% - 2px);
      height: calc(((100vw - 100px) * 0.4));
   /* height: calc(((100vw - 100px) * 0.65934)); */
   }

   .bgr-entry_img-l:first-child,
   .bgr-entry_img-l {
      width: calc(100% - 2px);
      height: calc(((100vw - 100px) * 0.65934));
   }

   .voice-entry {
      overflow: hidden;
   }

   .entry_top_title_inner,
   .tizai_top_title_inner,
   .tukurite_top_title_inner {
      padding-bottom: 200px;
   }

   /* 1127追記ここから */
   .tizai-entry .tizai_top_title {
      padding-bottom: 0;
   }

   /* 1127追記ここまで */
   .hatsumei-map {
      width: 100%;
      height: calc((100vw - 100px) * .76);
   }

   .h-sapporo,
   .h-otaru,
   .h-asahikawa,
   .h-hakodate,
   .h-obihiro {
      width: calc((100vw - 100px) * 0.0741);
   }

   .h-sapporo+.h-name+.h-sapporo-txt,
   .h-otaru+.h-name+.h-otaru-txt,
   .h-asahikawa+.h-name+.h-asahikawa-txt,
   .h-hakodate+.h-name+.h-hakodate-txt,
   .h-obihiro+.h-name+.h-obihiro-txt,
   .h-sapporo.active+.h-name+.h-sapporo-txt,
   .h-otaru.active+.h-name+.h-otaru-txt,
   .h-asahikawa.active+.h-name+.h-asahikawa-txt,
   .h-hakodate.active+.h-name+.h-hakodate-txt,
   .h-obihiro.active+.h-name+.h-obihiro-txt {
      width: calc(100vw - 100px);
      height: auto;
   }

   .h-sapporo+.h-name+.h-sapporo-txt,
   .h-sapporo.active+.h-name+.h-sapporo-txt {
      left: calc((100vw - 100px) * -0.323);
   }

   .h-otaru+.h-name+.h-otaru-txt,
   .h-otaru.active+.h-name+.h-otaru-txt {
      left: calc((100vw - 100px) * -0.282);
   }

   .h-asahikawa+.h-name+.h-asahikawa-txt,
   .h-asahikawa.active+.h-name+.h-asahikawa-txt {
      left: calc((100vw - 100px) * -0.426);
   }

   .h-hakodate+.h-name+.h-hakodate-txt,
   .h-hakodate.active+.h-name+.h-hakodate-txt {
      left: calc((100vw - 100px) * -0.254);
   }

   .h-obihiro+.h-name+.h-obihiro-txt,
   .h-obihiro.active+.h-name+.h-obihiro-txt {
      position: absolute;
      left: calc((100vw - 100px) * -0.618);
   }

   .container-hatsumei_popup {
      max-width: calc(100% - 80px);
      margin-right: 40px;
      margin-left: 40px;
   }

   .hatsume_textbox {
      width: 100%;
      margin: 0;
   }

   .hatsume_mapbox {
      flex-flow: column nowrap;
   }

   .hatsume_mapbox iframe {
      width: 100%;
   }

   .tweet-btn {
      width: calc(100% - 100px);
      margin: 0 50px;
   }
}

@media screen and (max-width: 939px) {
   .container-840 {
      padding: 0 50px;
      box-sizing: border-box;
   }

   .kagayakou_bg3 {
      position: absolute;
      left: calc(100% - 115px - 100px);
      margin-top: -80px;
      /* 0619大内修正:人のイラストが下の吹き出しにくっつくよう調整 */
   }

   .kagayakou_il1+.arrow_box.U-mt50 {
      margin-top: 80px;
      /* 0619大内修正:人のイラストが下の吹き出しにくっつくよう調整 */
   }
}

@media screen and (max-width: 800px) {
   .U-w600m0autop050-voice {
      width: auto;
      margin: auto 0px;
   }
}

/* スマートフォン版 */
@media screen and (max-width: 700px) {

   /* トップページ */
   .pc-ver {
      display: none !important;
   }

   .hatsumei-map .pc-ver {
      display: none !important;
   }

   .hatsumei_pho_box {
      margin-top: 20px;
      flex-direction: column-reverse;
      /* 1207変更
     align-items: center; */
      align-items: flex-end;
   }

   .gbr-entry_txt p.hatsumei_pho_name {
      /* 1207変更
    text-align: center; */
      text-align: right;
      /* 1207追加 */
      margin: 5px 0 0 0;
   }

   /* 1207追加ここから */
   .gbr-entry_txt p.hatsumei_pho_name br {
      display: none;
   }

   /* 1207追加ここまで */

   .sp-ver {
      display: block;
   }

   .U-w600m0autop050-voice {
      width: auto;
      margin: auto 0px;
   }

   .main-title::after {
      display: none;
   }

   .gbr-hokkaido-logo {
      height: auto;
      width: calc(100vw * 0.7);
      margin-top: 50px;
   }

   .top-slider {
      display: none;
   }

   .main-title {
      display: none;
   }

   .main-title-sp {
      display: block;
      margin-top: 71px;
      position: relative;
      height: 161.867vw;
      width: 100%;
      background-image: url('images/top-ill-bg.jpg');
      background-repeat: no-repeat;
      background-size: cover;
      background-position: 50% 50%;
      z-index: 1;
   }

   .main-title-sp::after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      height: 100%;
      width: 100vw;
      z-index: 10;
      background-image: url('images/top-ill_sp04.png'), url('images/top-ill_sp03.png');
      /* 0619山田コメントアウト */
      /* background-image: image-set(url('images/top-ill_sp04.png') 1x, url('images/top-ill_sp04@2x.png') 2x, url('images/top-ill_sp04@3x.png') 3x), image-set(url('images/top-ill_sp03.png') 1x, url('images/top-ill_sp03@2x.png') 2x, url('images/top-ill_sp03@3x.png') 3x);
      background-image: -webkit-image-set(url('images/top-ill_sp04.png') 1x, url('images/top-ill_sp04@2x.png') 2x, url('images/top-ill_sp04@3x.png') 3x), -webkit-image-set(url('images/top-ill_sp03.png') 1x, url('images/top-ill_sp03@2x.png') 2x, url('images/top-ill_sp03@3x.png') 3x); */
      background-repeat: no-repeat;
      background-size: 38.9333vw auto, 112vw auto;
      background-position: -4vw 20vw, -0.8vw 60vw;
      animation: title-anime 3s ease-in-out 1 normal;
   }

   .top-slider-sp {
      position: relative;
      text-align: center;
      animation: title-anime 1.5s ease-in-out 1 normal;
   }

   .slider-sp,
   .slider-sp_ph {
      height: calc(100vw * 0.8 * 0.9326);
      width: calc(100vw * 0.8);
      padding-inline-start: 0;
      margin-left: auto;
      margin-right: auto;
   }

   .slider-sp {
      position: relative;
      margin-top: calc(100vw * 0.0937);
      border: solid 1px #221714;
   }

   .slider_txt {
      display: flex;
      position: absolute;
      bottom: 0;
      width: 100%;
      padding: 2.67vw;
      background-color: rgba(0, 0, 0, .5);
      flex-flow: column nowrap;
      justify-content: flex-start;
      align-items: flex-start;
   }

   .slider_title {
      width: 57%;
      margin: 0 auto 0 0;
      text-align: justify;
   }

   .slider_com-name,
   .slider_title_txt {
      display: block;
      color: #fff;
   }

   .slider_title_txt {
      display: block;
      margin-top: .48em;
      font-size: 2.9333vw;
      line-height: 1.4;
   }

   .slider_com-name {
      font-size: 3.467vw;
      font-weight: bold;
      line-height: 1.3;
      margin-bottom: -0.52vw;
   }

   .slide-dots {
      display: none !important;
   }

   .concept-copy {
      display: none;
   }

   .concept-copy-sp {
      display: block;
      text-align: center;
      margin-bottom: 20px;
   }

   .concept-copy-sp img {
      height: auto;
      width: calc(100% - 80px);
   }

   .back-ground {
      min-height: calc(12.437vw + 4vw + 8.863vw + 21.883vw);
      height: calc(12.437vw + 4vw + 8.863vw + 21.883vw);
      background: url(images/gbr-voice_bg_sp.png);
      background-position: 50% 100%;
      background-size: contain;
      background-size: cover;
      background-repeat: no-repeat;
      overflow: hidden;
   }

   .back-ground2 {
      height: 320px;
      margin-top: 100px;
      position: relative;
      z-index: 0;
   }

   .back-ground_ill1 {
      position: absolute;
      height: auto;
      z-index: -900;
      max-width: 130px;
      margin-top: -170px;
      margin-left: -15px;
   }

   .back-ground_ill2 {
      display: none;
   }

   .news {
      width: calc(100% - 80px);
      max-width: calc(100% - 80px);
      margin-right: auto;
      margin-left: auto;
   }

   .news br {
      display: block;
   }

   .news dl {
      font-size: 1.4rem;
   }

   .ganbaru-copy {
      width: 100%;
      padding: 0 calc((100% - 69.333vw) / 2);
      box-sizing: border-box;
   }

   .ganbaru-copy a img {
      height: auto;
      width: 100%;
      max-width: 100%;
      margin-right: auto;
      margin-left: auto;
   }

   .top-gbr-voice {
      height: auto;
      width: 100%;
      margin-top: 4vw;
      margin-right: auto;
      margin-left: auto;
   }

   .voice.U-w980m0auto {
      width: 100%;
   }

   .voice_ul.sp-ver {
      display: block;
   }

   .voice_ul.U-w880m0autop050 {
      width: 69.333vw;
      padding: 0;
   }

   .voice_ul.U-mt-250 {
      margin-top: calc(-19vw + 30px + 3vw);
   }

   .voice_li {
      width: 100%;
      margin: 40px 0 0 0;
   }

   .voice_li:first-child {
      margin-top: 0;
   }

   .voice_li_ph,
   .gbr-recent_txt-box {
      height: calc((100vw - 100px - 88px) * 0.96);
      width: calc(100% - 2px);
      max-width: calc(100% - 2px);
   }

   .voice_title {
      padding: 1vw;
      padding: calc((100vw - 100px - 88px) * .0378);
   }

   .voice_erea {
      min-height: calc((100vw - 100px - 88px) * .4);
      height: auto;
   }

   .voice_com-name,
   .gbr-recent_cp-name {
      font-size: calc((100vw - 100px - 88px) * .067);
   }

   .voice_title_txt,
   .gbr-recent_txt-box h3,
   .gbr-recent_txt-box h3 a {
      margin: 0;
      font-size: calc((100vw - 100px - 88px) * .052);
   }

   .gbr-entry_h3,
   .tukurite-entry_h3 span {
      text-align: justify;
   }

   .gbr-entry_h3 span,
   .tukurite-entry_h3 span {
      display: inline;
   }

   .voice-img-center {
      margin-left: 20px;
      margin-right: 20px;
   }



   /*********** 0821Tori ***********/
   .voice_top_list.tb-ver {
      display: none;
   }

   div.voice_top_list.sp150-ver {
      display: flex;
   }
   
   div.voice_top_list.sp-ver {
      display: none;
   }

   #voice_entry_top .voice_top_title{
      min-height: 360px;
   }


   div.voice_top_list {
      position: relative;
      top: -110px;
      width: 90%;
      margin: 0 auto;
      height: 1250px;
      display: flex;
      justify-content: space-around;
      flex-wrap: wrap;
      align-items: end;
   }

   .voice_link{
      position: static;
      align-items: end;
      top: auto;
      left: auto;
   }
   

   a.voice_link{
      position: relative;
   }

   

   /* 0821Tori END */


   a.erea-icon {
      display: flex;
      height: 18px;
      width: 39px;
      font-size: 1.2rem;
      color: #fff;
      border-radius: 3px;
      flex-flow: row nowrap;
      justify-content: center;
      align-items: center;
      flex-shrink: 0;
      flex-grow: 0;
   }

   .column.U-w980m0auto {
      width: 100%;
   }

   .column_ul.U-w880m0autop050 {
      /* 0619大内修正:青空教室スマホ版バックナンバーを逆順に */
      /* display: block; */
      flex-flow: column wrap;
      gap: 0;
      width: 69.333vw;
      padding: 0;
   }

   .column_ul.pc-ver {
      display: none;
   }

   .column_li {
      width: 100%;
      margin: 40px 0 0 0;
   }

   .column_li_ph {
      height: calc((100vw - 100px - 88px) * 0.96);
      width: calc(100% - 2px);
   }

   .column_com-name,
   .tizai-recent_cp-name {
      font-size: calc((100vw - 100px - 88px) * .067);
   }

   .column_subtext,
   .aozora_story,
   .aozora_title {
      font-size: calc((100vw - 100px - 88px) * .045);
   }

   .column_title_txt {
      font-size: calc((100vw - 100px - 88px) * .052);
   }

   .voice_info,
   .column_info,
   .gbr-recent_info,
   .tizai-recent_info,
   .tukurite-recent_info {
      font-size: 1.4rem;
   }

   .top-h2 {
      font-size: 7vw;
      margin-top: 0px;
   }

   .sp-btn img {
      width: calc(100vw - 80px);
      height: auto;
   }

   .sp-btn {
      text-align: center;
   }

   .sp-btn a {
      display: block;
   }

   .column.U-w980m0auto {
      margin-bottom: 0px;
   }

   #voice_entry_top .gbr-recent_ul.sp-ver {
      display: flex;
      margin-top: -200px;
      margin-left: auto;
      margin-right: auto;
   }

   #aozora_entry_top .column.U-w980m0auto {
      margin-bottom: 100px;
   }

   .h-sapporo:hover,
   .h-otaru:hover,
   .h-asahikawa:hover,
   .h-hakodate:hover,
   .h-obihiro:hover {
      animation-play-state: paused;
   }

   .hatsumei-ul {
      display: flex;
      padding: 0;
      flex-flow: row wrap;
   }

   .hatsumei-ul li {
      margin: 0.25em 0.7em;
   }

   .hatsumei-ul .sapporo,
   .hatsumei-ul .otaru,
   .hatsumei-ul .asahikawa {
      width: calc((100% - (0.7em * 6)) / 3);
   }

   .banner-erea {
      padding: 0px;
   }

   .banner-erea img {
      width: calc(100vw - 80px);
      height: auto;
   }

   .border-banner {
      margin-top: 60px;
      text-align: center;
   }

   .copytext {
      max-width: calc(100vw - 80px);
   }

   .kagayakou_bannar img {
      width: calc(100vw - 80px);
      height: auto;
      text-align: center;
   }

   .column-banner {
      border: 1px solid #221714;
   }

   .kagayakou_bannar {
      margin-bottom: 79px;
      padding-bottom: 1px;
   }

   /* sponsors_erea */
   .sponsors_inner {
      display: none;
      height: auto;
      flex-flow: column nowrap;
      justify-content: flex-start;
      align-items: flex-start;
   }

   .sponsors_inner:last-child {
      margin-bottom: 80px;
   }

   .sponsors_inner p {
      display: block;
      margin-bottom: 12px;
      line-height: 1;
   }

   /* 0619大内追加:お問い合わせボタン上部の会社リンクが押せない問題を解消 */
   .sponsors_inner_kagayakou {
      flex-flow: column wrap;
      position: relative;
      z-index: 1;
   }

   .sponsors_erea {
      width: 100%;
      margin-bottom: 40px;
      padding: 0;
   }

   .sponsors_erea_inner {
      display: none;
      height: auto;
      /* 0826Tori margin-top: 40px;*/
   }

   .sponsors_h {
      width: 100%;
      background-color: #1f2a66;
   }

   .sponsors_erea h3 {
      display: flex;
      height: 115px;
      margin-bottom: 0;
      padding: 0 30px;
      font-size: 3rem;
      border: none;
      color: #fff;
      flex-flow: row nowrap;
      justify-content: flex-end;
      align-items: center;
   }

   .sponsors_erea h3 span,
   .sponsors_erea img.sp-ver {
      display: inline-block;
   }

   .sponsors_erea h3 span {
      width: 10em;
      margin: 0 calc((100% - 9.5em - 60px - 25px) / 2);
      text-align: middle;
   }

   .sponsors_erea h3 span span {
      display: inline;
      font-size: .8em;
   }

   .sponsors_btnSP {
      transition: transform .2s;
   }

   .sponsors_btnSP.active {
      transform: rotate(45deg);
      transition: transform .2s;
   }

   .erea-border-c,
   .erea-border-e,
   .erea-border-n,
   .erea-border-s,
   .sponsors_inner .sponsors_inner_kagayakou {
      margin-top: -30px;
      margin-left: 50px;
      margin-right: 50px;
      margin-bottom: 50px;
   }

   /* 0826Tori */
   .sponsors_erea_inner .erea-border-c{
      margin: 0 50px;
      padding: 10px 0;
   }
   /* 0826Tori END */

   .erea-border-c,
   .erea-border-e,
   .erea-border-n,
   .erea-border-s {
      flex-flow: row wrap;
      justify-content: space-between;
      align-items: center;
      gap: 10px 20px;
   }

   .erea-c_btn,
   .erea-e_btn,
   .erea-n_btn,
   .erea-s_btn {
      display: inline-block;
      height: 0;
      width: 0;
      border-top: solid 9px rgba(255, 255, 255, 0);
      border-right: solid 16px rgba(255, 255, 255, 0);
      ;
      border-bottom: solid 9px rgba(255, 255, 255, 0);
      ;
      background-color: rgba(255, 255, 255, 0);
      flex-grow: 0;
   }

   .erea-c_btn {
      position: relative;
      top: 0;
      left: 16px;
      border-left: solid 16px #c81528;
      transition: transform .2s, top .2s, left .2s;
   }

   .erea-e_btn {
      position: relative;
      top: 0;
      left: 16px;
      border-left: solid 16px #1f8956;
      transition: transform .2s, top .2s, left .2s;
   }

   .erea-n_btn {
      position: relative;
      top: 0;
      left: 16px;
      border-left: solid 16px #3071b9;
      transition: transform .2s, top .2s, left .2s;
   }

   .erea-s_btn {
      position: relative;
      top: 0;
      left: 16px;
      border-left: solid 16px #fdd000;
      transition: transform .2s, top .2s, left .2s;
   }

   .erea-c_btn.active,
   .erea-e_btn.active,
   .erea-n_btn.active,
   .erea-s_btn.active {
      top: 8px;
      left: 8px;
      transform: rotate(90deg);
      transition: transform .2s, top .2s, left .2s;
   }

   .erea-border-c::after,
   .erea-border-e::after,
   .erea-border-n::after,
   .erea-border-s::after {
      display: none;
   }

   /* footer */
   #footer,
   #kagayakou #footer {
      height: auto;
      margin-top: 0;
   }

   .footer-keyword_inner {
      display: flex;
      flex-flow: column nowrap;
   }

   .footer-keyword-h {
      height: 115px;
      margin: 0;
      padding: 0;
      background: none;
      flex-flow: row nowrap;
      justify-content: flex-end;
      align-items: center;
   }

   .footer-keyword-h img:first-child {
      display: none;
   }

   .footer-keyword .keyword_btnSP {
      height: 50px;
      width: 50px;
      margin: 0;
      transition: transform .2s;
   }

   .footer-keyword .keyword_btnSP.active {
      transform: rotate(45deg);
      transition: transform .2s;
   }

   .footer-keyword-h img {
      /* 100% - (見出し画像の幅) - (左右マージンの幅) - (ボタン画像の幅の半分) を2で割って左右マージンを割り出す */
      margin: 0 calc((100% - 292px - 60px - 25px) / 2);
   }

   .footer-keyword-txt {
      display: none;
      height: auto;
      /* 0826Tori */
      margin: 0 0 0 -1em;
      /* 0826Tori END */
      overflow: hidden;
   }

   /* 0826Tori */
   p.keyword-area{
      margin: 40px 0 14px;
   }
   /* 0826Tori END */

   .footer-keyword-txt a {
      font-size: 3rem;
      line-height: 2.5;
      background-position: 50% 53px;
   }

   .footer-keyword-txt a:hover {
      background-position: 50% 53px;
   }

   .footer_inner {
      height: 298px;
      /* 0826Tori */
      padding: 50px 0;
      /* 0826Tori END */
   }

   #voice_entry_top #goto-top,
   #tizai_entry_top #goto-top,
   #tukurite_entry_top #goto-top {
      display: block;
   }

   .footer-logo {
      display: none;
   }

   .footer-logo-s,
   .footer-logo-s img {
      display: block;
      height: auto;
      width: 313px;
   }

   .footer-logo-s {
      margin: 0 auto;
   }

   #footer-nav {
      display: none;
   }

   .footer-info {
      margin-top: 50px;
      flex-flow: column-reverse nowrap;
      justify-content: flex-start;
      align-items: center;
   }

   .footer-info a:last-child {
      margin-bottom: 64px;
   }

   .footer-info a:last-child img {
      height: auto;
      width: calc(100vw - 100px)
   }

   small {
      font-size: 2.6rem;
   }

   /* Voice topページ */
   #voice_entry_top .gbr-recent_ul {
      justify-content: center;
      margin-top: -200px;
   }

   #voice_entry_top .gbr-recent_li {
      width: calc(100% - 88px);
      margin-right: 0px;
   }

   .gbr-recent_txt-box {
      height: calc((100vw - 100px - 88px) * 0.325);
   }

   .gbr-recent_ph {
      height: calc((100vw - 100px - 88px) * 0.96);
      width: calc(100% - 4px);
   }

   .voice-pagination ul {
      padding: 0px;
   }

   .pagination,
   #voice_entry_top .nav-links,
   #tizai_entry_top .nav-links,
   #tukurite_entry_top .nav-links,
   #aozora_entry_top .nav-links {
      display: flex;
      justify-content: center;
      align-items: center;
      margin-bottom: 80px;
   }

   .voice-pagination-item-link,
   #voice_entry_top .page-numbers {
      width: 35px;
      height: 35px;
      border-radius: 50%;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      overflow: hidden;
      background: #fff;
      border: solid 1px #ff505a;
      font-size: 1.8rem;
      color: #ff505a;
      font-weight: bold;
      transition: all 0.15s linear;
   }

   .voice-pagination-item-link-icon {
      width: 20px;
   }

   .voice-pagination-item-link.active,
   #voice_entry_top .page-numbers.current {
      background: #ff505a;
      color: #fff;
      pointer-events: none;
   }

   .voice-pagination-item-link:not(.active):hover,
   #voice_entry_top .page-numbers:not(.current):hover {
      background: #ff505a;
      color: #fff;
   }

   .pagination>*+*,
   .nav-links>*+* {
      margin-left: 8px;
   }

   /* Tukurite topページ */
   #tukurite_entry_top .tukurite-recent_ul {
      justify-content: center;
      margin-top: -200px;
   }

   #tukurite_entry_top .tukurite-recent_li {
      width: calc(100% - 84px);
      margin-right: 0px;
   }

   .tukurite-recent_ph {
      height: calc((100vw - 100px - 84px) * 0.96);
   }

   .tukurite-pagination-item-link,
   #tukurite_entry_top .page-numbers {
      width: 35px;
      height: 35px;
      border-radius: 50%;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      overflow: hidden;
      background: #fff;
      border: solid 1px #32b6a0;
      font-size: 1.8rem;
      color: #32b6a0;
      font-weight: bold;
      transition: all 0.15s linear;
   }

   .tukurite-pagination-item-link-icon {
      width: 20px;
   }

   .tukurite-pagination-item-link.active,
   #tukurite_entry_top .page-numbers.current {
      background: #32b6a0;
      color: #fff;
      pointer-events: none;
   }

   .tukurite-pagination-item-link:not(.active):hover,
   #tukurite_entry_top .page-numbers:not(.current):hover {
      background: #32b6a0;
      color: #fff;
   }

   .tizai-recent_txt-box,
   .tukurite-recent_txt-box {
      height: 100%;
   }

   .tizai-recent_txt-box h3 a,
   .tukurite-recent_txt-box h3 a {
      font-size: calc((100vw - 100px - 88px) * .052);
   }

   /* Tizai topページ */
   #tizai_entry_top .tizai-recent_ul {
      justify-content: center;
      margin-top: -140px;
   }

   #tizai_entry_top .tizai-recent_li {
      width: calc(100% - 84px);
      margin-right: 0px;
   }

   .tizai-recent_ph {
      height: calc((100vw - 100px - 84px) * 0.96);
   }

   .tizai-pagination-item-link,
   #tizai_entry_top .page-numbers {
      width: 35px;
      height: 35px;
      border-radius: 50%;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      overflow: hidden;
      background: #fff;
      border: solid 1px #4c8dcb;
      font-size: 1.8rem;
      color: #4c8dcb;
      font-weight: bold;
      transition: all 0.15s linear;
   }

   .tizai-pagination-item-link-icon {
      width: 20px;
   }

   .tizai-pagination-item-link.active,
   #tizai_entry_top .page-numbers.current {
      background: #4c8dcb;
      color: #fff;
      pointer-events: none;
   }

   .tizai-pagination-item-link:not(.active):hover {
      background: #4c8dcb;
      color: #fff;
   }

   #tizai_entry_top .tizai_entry_top_lead {
      display: none;
   }

   .tizai_entry_top_lead-sp {
      display: block;
      height: 110px;
      width: auto;
      margin: 0 auto;
   }

   /* Voice entryページ */
   .voice-entry .entry_top_title h2 p,
   .tizai-entry .tizai_top_title h2 p {
      font-size: 22px;
   }

   .voice-entry .entry_top_title h2 p span,
   .tizai-entry .tizai_top_title h2 p span {
      display: inline;
   }

   .gbr-com-name {
      text-align: left;
   }

   .gbr-com-name2 {
      padding: 0.5em 1em;
      text-align: left;
   }

   .entry-com-erea {
      display: flex;
      flex-flow: row wrap;
      justify-content: space-between;
      align-items: baseline;
      gap: 0 1em;
   }

   .gbr-entry_txt {
      margin-top: -200px;
   }

   .entry_top_title_inner,
   .tizai_top_title_inner,
   .tukurite_top_title_inner {
      padding-bottom: 220px;
   }

   .gbr-keyword {
      margin-top: 5px;
   }

   /* Tizai entryページ */
   .tizai-entry_profile {
      display: flex;
      flex-flow: row wrap;
      justify-content: space-between;
      align-items: flex-end;
      margin-bottom: 50px;
   }

   .tizai-btn {
      order: 1;
      width: 100%;
   }

   .com-container {
      order: 2;
      width: 100%;
      flex-flow: row-reverse wrap;
      justify-content: space-between;
      align-items: flex-end;
   }

   .prfile_ph {
      order: 3;
      min-width: 226px;
   }

   /* 1206追加ここから */
   /* 発明協会ページ */
   .hatumei_txtprof {
      flex-flow: column-reverse nowrap;
      align-items: center;
      gap: 10px;
   }

   /* 1206追加ここまで */


   /* Aozora Topページ */
   .aozora-pagination-item-link,
   #aozora_entry_top .page-numbers {
      width: 35px;
      height: 35px;
      border-radius: 50%;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      overflow: hidden;
      background: #fff;
      border: solid 1px #3264b4;
      font-size: 1.8rem;
      color: #3264b4;
      font-weight: bold;
      transition: all 0.15s linear;
   }

   .aozora-pagination-item-link-icon {
      width: 20px;
   }

   .aozora-pagination-item-link.active,
   #aozora_entry_top .page-numbers.current {
      background: #3264b4;
      color: #fff;
      pointer-events: none;
   }

   .aozora-pagination-item-link:not(.active):hover,
   #aozora_entry_top .page-numbers:not(.current):hover {
      background: #3264b4;
      color: #fff;
   }

   .container-keyword {
      margin-left: 0px;
   }

   .keyword-erea {
      justify-content: center;
      margin-bottom: -50px;
   }

   #aozora_entry_top main {
      margin-bottom: 0px;
   }

   #manga_article .container-manga {
      padding: 0;
   }

   .aozora-il {
      width: calc(100vw - 40px);
      margin-left: auto;
      margin-right: auto;
   }

   /* 北海道で輝こうページ */
   /* 250519修正ここから */
   .kagayakou-background {
      /* スムーズなアニメーションのためにあらかじめ画像を読み込んでおく*/
      margin-top: 30px;
      background: url('images/kagayakou_bg_sp05.png'), url('images/kagayakou_bg_sp02.png'), url('images/kagayakou_bg_sp03.png'), url('images/kagayakou_bg_sp04.png'), url('images/kagayakou_bg_sp05-1.png'), url('images/kagayakou_bg_sp05-2.png'), url('images/kagayakou_bg_sp05-4.png'), url('images/kagayakou_bg_sp05-5.png'), url('images/kagayakou_bg_sp05-6.png'), url('images/kagayakou_bg_sp05-7.png');
      background-size: 100vw auto, 148.44375vw auto, 148.44375vw auto, 28vw auto, 100vw auto, 100vw auto, 100vw auto, 100vw auto, 100vw auto, 100vw auto;
      background-position: 5vw 45vw, center calc(21.875vw + (148.44375vw * .2873) + 600px), center calc(21.875vw + (148.44375vw * .2873) + 1700px), -40px calc(21.875vw + (148.44375vw * .2873) + 380px), -99999px 0, -99999px 0, -99999px 0, -99999px 0, -99999px 0, -99999px 0;
      background-repeat: no-repeat;
      overflow: hidden;
   }

   .kagayakou-background::before {
      position: absolute;
      display: block;
      content: '';
      top: 0;
      width: 100%;
      height: 100%;
      background: url('');
      overflow: hidden;
      animation: twinclestar700 8s ease-in-out infinite normal;
      animation-delay: 1s;
      z-index: -999;
   }

   .kagayakou-background::after {
      position: absolute;
      display: block;
      top: 0;
      content: '';
      width: 100%;
      height: 100%;
      background: url('');
      animation: twinclestar700_after 8s ease-in-out infinite normal;
      animation-delay: 1s;
      z-index: -998;
   }


   @keyframes twinclestar700 {
      0% {
         /* 星1 きえる */
         background: url('images/kagayakou_bg_sp05-1.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      8% {
         /* 星1 きえる */
         background: url('images/kagayakou_bg_sp05-1.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      10% {
         /* 星1 ひかる */
         background: url('images/kagayakou_bg_sp05-1.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      14% {
         /* 星1 きえる */
         background: url('images/kagayakou_bg_sp05-1.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      64% {
         /* 星5 きえる */
         background: url('images/kagayakou_bg_sp05-5.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      66% {
         /* 星5 ひかる */
         background: url('images/kagayakou_bg_sp05-5.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      70% {
         /* 星5 きえる */
         background: url('images/kagayakou_bg_sp05-5.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      92% {
         /* 星7 きえる */
         background: url('images/kagayakou_bg_sp05-7.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      94% {
         /* 星7 ひかる */
         background: url('images/kagayakou_bg_sp05-7.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      98% {
         /* 星7 きえる */
         background: url('images/kagayakou_bg_sp05-7.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      100% {
         /* 星7 きえる */
         background: url('images/kagayakou_bg_sp05-7.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }
   }

   @keyframes twinclestar700_after {
      0% {
         /* 星2 きえる */
         background: url('images/kagayakou_bg_sp05-2.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      22% {
         /* 星2 きえる */
         background: url('images/kagayakou_bg_sp05-2.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      24% {
         /* 星2 ひかる */
         background: url('images/kagayakou_bg_sp05-2.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      28% {
         /* 星2 きえる */
         background: url('images/kagayakou_bg_sp05-2.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      50% {
         /* 星4 きえる */
         background: url('images/kagayakou_bg_sp05-4.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      52% {
         /* 星4 ひかる */
         background: url('images/kagayakou_bg_sp05-4.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      56% {
         /* 星4 きえる */
         background: url('images/kagayakou_bg_sp05-4.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      78% {
         /* 星6 きえる */
         background: url('images/kagayakou_bg_sp05-6.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      80% {
         /* 星6 ひかる */
         background: url('images/kagayakou_bg_sp05-6.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 1;
      }

      84% {
         /* 星6 きえる */
         background: url('images/kagayakou_bg_sp05-6.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }

      100% {
         /* 星6 きえる */
         background: url('images/kagayakou_bg_sp05-6.png');
         background-size: 100vw auto;
         background-position: 5vw 45vw;
         background-repeat: no-repeat;
         opacity: 0;
      }
   }

   /* 250519修正ここまで */

   .kagayakou-logo {
      width: 55.3vw;
   }

   /* 0619大内追加:トップの輝こうロゴを拡大(スマホ版) */
   .back-ground2>.title-logo>.kagayakou-logo {
      width: 70vw;
   }

   .kagayakou-copy {
      margin-top: 47vw;
      text-align: center;
      margin-left: 40px;
      margin-right: 40px;
   }

   .kagayakou-copy_top_sp {
      margin-top: 0vw;
   }

   .kagayakou_text span {
      display: inline;
   }

   .kagayakou-copy span {
      display: inline-block;
   }

   /* 0619大内修正:人のイラストが下の吹き出しにくっつくよう調整 */
   .kagayakou_bg3 {
      left: calc(100% - 115px - 60px);
   }

   .kagayakou_text {
      text-align: justify;
      text-justify: inter-ideograph;
   }

   .kagayakou_text p {
      font-size: 16px;
      line-height: 1.67;
   }

   .line_break {
      display: block;
   }

   .small_text {
      font-size: 0.9em;
   }

   /* 0619大内修正:青半円くくり見出し調整 */
   .recruit_erea h3 {
      font-size: 2rem;
      padding: 7px 35px;
   }

   .ka-margin {
      margin-top: 50px;
   }

   .arrow_text {
      line-height: 1.3;
   }

   .kagayakou_il2 {
      background: url(images/kagayakou_bg2.png), url(images/kagayakou_bg4.png);
      background: image-set(url(images/kagayakou_bg2.png) 1x, url(images/kagayakou_bg2@2x.png) 2x, url(images/kagayakou_bg2@3x.png) 3x), image-set(url(images/kagayakou_bg4.png) 1x, url(images/kagayakou_bg4@2x.png) 2x, url(images/kagayakou_bg4@3x.png) 3x);
      background: -webkit-image-set(url(images/kagayakou_bg2.png) 1x, url(images/kagayakou_bg2@2x.png) 2x, url(images/kagayakou_bg2@3x.png) 3x), -webkit-image-set(url(images/kagayakou_bg4.png) 1x, url(images/kagayakou_bg4@2x.png) 2x, url(images/kagayakou_bg4@3x.png) 3x);
      background-size: 750px auto, 60vw auto;
      background-repeat: no-repeat;
      background-position: calc(100vw - 490px) bottom, -20px 250px;
   }

   .text-centering {
      position: relative;
      top: -100px;
      width: 55vw;
   }

   .recruitment_text {
      display: inline-block;
      text-align: center;
      border: solid 2px #3264b4;
      padding: 0px 40px;
      border-radius: 3em;
   }

   .recruitment_text p {
      font-size: 1.8rem;
      line-height: 2.4rem;
      color: #565757;
   }

   .recruitment_text span {
      display: inline-block;
   }

   .footer_small_wrap {
      text-align: center;
      /* 0826Tori */
      margin-top: -60px;
      /* 0826Tori END */
   }

   #footer small:first-child,
   #footer small:first-child a {
      font-size: 2rem;
   }

   .about_wrap {
      width: calc(100vw - 40px);
      margin:120px 20px 50px;
      flex-direction: column;
      align-items: center;
   }

   .about_head2 {
      font-size: calc((100vw - 40px) / 13);
   }

   .about_txtbox1 {
      width: 100%;
   }

   .about_txtbox2 {
      width: calc(100% - 80px);
      padding: 0 20px;
      margin: -55px auto 50px;
   }

   .about_img {
      align-self: auto;
      width: 100%;
   }


   /* NEWアイコン */
   /* 
   .voice_li_ph,
   .column_li_ph,
   .gbr-recent_ph,
   .tizai-recent_ph,
   .tukurite-recent_ph {
      background-size: 17.8% auto, cover !important;
   }
    */
}

@media screen and (max-width: 499px) {

   .header_logo_white,
   .header_logo_white a,
   .header_logo_white a img {
      width: 150px;
      margin-top: 6px;
   }

   small {
      font-size: 1.6rem;
   }

   .voice_li_ph {
      height: calc((100vw - 100px - 88px) * 1.3);
   }

   .gbr-recent_txt-box {
      height: auto;
   }

   .column_li_ph {
      height: calc((100vw - 100px - 88px) * 1.3);
   }

   .voice_com-name,
   .gbr-recent_cp-name,
   .column_com-name,
   .tizai-recent_cp-name {
      font-size: 16px;
   }

   .column_subtext,
   .aozora_story,
   .aozora_title {
      font-size: 13.5px;
   }

   .voice_title_txt,
   .column_title_txt,
   .gbr-recent_txt-box h3,
   .gbr-recent_txt-box h3 a,
   .tizai-recent_txt-box h3 a,
   .tukurite-recent_txt-box h3 a {
      font-size: 14px;
   }

   .hatsumei-ul {
      flex-flow: column nowrap;
   }

   .hatsumei-ul .sapporo,
   .hatsumei-ul .otaru,
   .hatsumei-ul .asahikawa,
   .hatsumei-ul .hakodate,
   .hatsumei-ul .obihiro {
      display: block;
      margin: 0.25em 0;
      width: calc(100% - 1em);
      height: auto;
   }

   .hatsumei-ul .h-sapporo-txt,
   .hatsumei-ul .h-otaru-txt,
   .hatsumei-ul .h-asahikawa-txt,
   .hatsumei-ul .h-hakodate-txt,
   .hatsumei-ul .h-obihiro-txt {
      display: none;
      height: 400px;
   }

   /* 1207追加ここから */
   .gbr-entry_txt p.hatsumei_pho_name br {
      display: inline;
   }

   /* 1207追加ここまで */

   .sponsors_erea h3 {
      height: 70px;
      font-size: 2rem;
      justify-content: space-between;
   }

   .sponsors_erea h3 span {
      width: 11em;
   }

   .sponsors_btnSP,
   .footer-keyword .keyword_btnSP {
      height: 40px;
      width: 40px;
   }

   .sponsors_erea h4.erea-c-txt span,
   .sponsors_erea h4.erea-s-txt span,
   .sponsors_erea h4.erea-e-txt span,
   .sponsors_erea h4.erea-n-txt span {
      display: inline-block;
   }

   .recruit_erea h3 span {
      display: block;
   }

   .footer-keyword h2 {
      height: 70px;
   }

   .footer-keyword-h {
      justify-content: space-between;
   }

   .footer-keyword-h img:nth-child(2) {
      height: auto;
      width: 175px;
      margin: 0 calc((100% - 175px) / 2 - .2em) 0 auto;
   }

   .kagayakou_bannar {
      margin-bottom: 0px;
   }

   .footer-keyword-h img {
      margin: 0 calc((100% - 210px - 60px - 25px) / 2);
      width: calc(100% - 100px);
   }

   .footer-keyword-txt a {
      font-size: 1.4rem;
   }

   #voice_entry_top .voice_entry_top_title img,
   #voice_entry_top .voice_entry_top_lead,
   #tizai_entry_top .tizai_entry_top_title img,
   #tizai_entry_top .tizai_entry_top_lead-sp,
   #tukurite_entry_top .tukurite_entry_top_title img,
   #tukurite_entry_top .tukurite_entry_top_lead {
      width: calc(100vw - 80px);
      height: auto;
      margin-top: 40px;
      margin-left: 40px;
      margin-right: 40px;
   }

   /* 0825Tori */
   #voice_entry_top .voice_entry_top_lead{
      margin-top: 30px;
   }

   #voice_entry_top .voice_entry_top_title {
      width: auto;
      margin-bottom: 30px;
   }

   #voice_entry_top .voice_entry_top_title img{
      margin-right: auto;
      margin-left: auto;
   }
   /* 0825Tori END */

   #voice_entry_top .voice_entry_top_title,
   #tizai_entry_top .tizai_entry_top_title,
   #tukurite_entry_top .tukurite_entry_top_title {
      margin-top: 40px;
   }

   #voice_entry_top .gbr-recent_ul {
      margin-top: -240px;
      width: calc(100% - 25px);
   }

   .voice-entry .entry_top_title h2 p,
   .gbr-entry_h3 {
      text-align: justify;
   }

   .voice-entry .entry_top_title h2 p span {
      display: inline;
   }

   .voice-img-center {
      margin-left: 10px;
      margin-right: 10px;
   }

   #tizai_entry_top .tizai-recent_ul {
      margin-top: -190px;
      width: calc(100% - 33px);
      padding: 0;
   }

   #tukurite_entry_top .tukurite-recent_ul {
      margin-top: -250px;
      width: calc(100% - 33px);
      padding: 0;
   }

   #voice_entry_single .bgr-entry_img:first-child,
   #tizai_entry_single .bgr-entry_img:first-child {
      margin-bottom: 0px;
   }

   #tukurite_entry_single .bgr-entry_img:first-child {
      margin-bottom: 70px;
   }

   #voice_entry_single .bgr-entry_img-s:first-child,
   #tizai_entry_single .bgr-entry_img-s:first-child {
      margin-bottom: 50px;
   }

   #tukurite_entry_single .bgr-entry_img-s:first-child {
      margin-bottom: 70px;
   }

   #tukurite_entry_single .bgr-entry_img-l:first-child {
      margin-bottom: 70px;
   }

   #voice_entry_single .gbr-entry_txt {
      margin-top: -180px;
   }

   #tizai_entry_single .gbr-entry_txt,
   #tukurite_entry_single .gbr-entry_txt {
      margin-top: -200px;
   }


   /*********** 0821Tori ***********/
   #voice_entry_top .voice_top_title{
      min-height: 320px;
   }

   div.voice_top_list.sp150-ver {
      display: none;
   }

   div.voice_top_list.sp-ver{
      display: flex;
      margin-bottom: -50px;
   }

   div.voice_top_list {
      position: relative;
      top: -110px;
      width: 90%;
      margin: 0 auto;
      height: 850px;
      display: flex;
      justify-content: space-around;
      flex-wrap: wrap;
      align-items: end;
   }

   .voice_link{
      position: static;
      align-items: end;
   }

   .voice-machine{
      top: auto;
      left: auto;
   }
      

   /* 0821Tori END */


   .gbr-entry_txt p+.gbr-entry_h3 {
      margin-top: calc(50px - 6px);
   }

   .gbr-recent_ph,
   .tizai-recent_ph,
   .tukurite-recent_ph {
      height: calc(((100vw - 100px - 88px)) * 1.25);
   }

   .entry_top_title_inner.U-w880m0autop050.U-mt80,
   .tizai_top_title_inner.U-w880m0autop050.U-mt80,
   .tukurite_top_title_inner.U-w880m0autop050.U-mt80 {
      margin-top: 50px;
   }

   .com-hr {
      max-width: 265px;
   }

   .p-name span {
      display: block;
   }

   .gbr-entry_profile {
      margin-left: 50px;
      margin-right: 50px;
      flex-flow: column-reverse nowrap;
      align-items: center;
   }

   .gbr-entry_profile dl {
      text-align: left;
      margin-left: 500px;
   }

   .tizai-entry_profile {
      justify-content: center;
   }

   .gbr-entry_profile dl {
      margin: 10px 0 0 0;
   }

   .com-container {
      flex-flow: column nowrap;
      justify-content: flex-start;
      align-items: center;
      order: 3;
   }

   .prfile_ph {
      order: 2;
   }

   .aozora-il2 {
      margin-left: 25px;
      margin-right: auto;
   }

   .footer_inner {
      height: auto;
      padding: 30px 0;
      overflow: hidden;
   }

   .footer-logo-s {
      display: none;
   }

   .footer-info {
      margin-top: 0;
      margin-bottom: 0;
   }

   .footer-info a:last-child {
      margin: 0 0 10px 0;
   }

   #footer small {
      font-size: 1.2rem;
   }

   .footer_small_wrap {
      display: flex;
      width: 290px;
      margin-top: 0;
      margin-left: auto;
      margin-right: auto;
      flex-flow: row wrap;
      justify-content: flex-start;
      align-items: center;
   }

   .footer_small_wrap br {
      display: none;
   }

   #footer small:first-child,
   #footer small:first-child a {
      font-size: 1.4rem;
   }

   /* 0514追加ここから */
   .hatsumei_textbox {
      padding: 20px;
   }

   .h-sapporo+.h-name+.h-sapporo-txt,
   .h-otaru+.h-name+.h-otaru-txt,
   .h-asahikawa+.h-name+.h-asahikawa-txt,
   .h-hakodate+.h-name+.h-hakodate-txt,
   .h-obihiro+.h-name+.h-obihiro-txt,
   .h-sapporo.active+.h-name+.h-sapporo-txt,
   .h-otaru.active+.h-name+.h-otaru-txt,
   .h-asahikawa.active+.h-name+.h-asahikawa-txt,
   .h-hakodate.active+.h-name+.h-hakodate-txt,
   .h-obihiro.active+.h-name+.h-obihiro-txt {
      width: calc(100vw - 40px);
      height: auto;
   }

   .h-sapporo+.h-name+.h-sapporo-txt,
   .h-sapporo.active+.h-name+.h-sapporo-txt {
      left: calc((100vw - 40px) * -0.376);
   }

   .h-otaru+.h-name+.h-otaru-txt,
   .h-otaru.active+.h-name+.h-otaru-txt {
      left: calc((100vw - 40px) * -0.32);
   }

   .h-asahikawa+.h-name+.h-asahikawa-txt,
   .h-asahikawa.active+.h-name+.h-asahikawa-txt {
      left: calc((100vw - 40px) * -0.46);
   }

   .h-hakodate+.h-name+.h-hakodate-txt,
   .h-hakodate.active+.h-name+.h-hakodate-txt {
      left: calc((100vw - 100px) * -0.355);
   }

   .h-obihiro+.h-name+.h-obihiro-txt,
   .h-obihiro.active+.h-name+.h-obihiro-txt {
      position: absolute;
      left: calc((100vw - 40px) * -0.595);
   }

   .container-hatsumei_popup {
      max-width: calc(100% - 40px);
      margin-right: 20px;
      margin-left: 20px;
      margin-bottom: 20px;
   }

   .hatsume_mapbox {
      padding: 20px;
   }

   /* 追加ここまで */

   /* NEWアイコン */
   /* 
     .voice_li_ph,
     .column_li_ph,
     .gbr-recent_ph,
     .tizai-recent_ph,
     .tukurite-recent_ph {
        background-size: calc(((100vw - 100px - 88px)) * .25) auto, cover !important;
     }
   */
}

/*********** 0826Tori ***********/
@media screen and (max-width: 440px) {
   #voice_entry_top .voice_top_title {
      min-height: 300px;
   }
}

@media screen and (max-width: 390px) {
   #voice_entry_top .voice_top_title {
      min-height: 280px;
   }
}

@media screen and (max-width: 357px) {
   div.voice_top_list.sp150-ver {
      display: block;
      height: 2350px;
      text-align: center;
   }

   div.voice_top_list.sp-ver {
      display: none;
   }

   .voice_link{
      margin: 10px auto 20px;
   }
}