@charset "utf-8";
/*
Theme Name: Maslow design
Description: https://hyogen.jp/ 2021/09
Version: 1
Author: LLC JIRIKI
Author URI: https://www.jiriki.co.jp/
*/
html {
  font-size: 16px;
}

body {
  margin: 0;
  padding: 0;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  background: #fff;
  width: 100%
}
body {
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
}
@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

.wpcf7 .wpcf7-submit:disabled {
  background: #d8d8d8;
  color: #fff;
  border: solid 1px #333;
}

.wpcf7-form input[type="submit"] {
  min-width: 100%!important;
  margin: 2em auto;
  max-width: 100%;
  box-sizing: border-box;
}

.shutter{
  position:fixed;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background-color:#1e1e1e;
  z-index:9999;
}
.logo-img-open {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 400px;
}
.shutter::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  margin: auto;
  background-color: #fff;
  width: 0;
  height: 1px;
}
.shutter {
  -webkit-animation: byeShutter 2.6s forwards;
          animation: byeShutter 2.6s forwards;
}
.shutter::before {
  -webkit-animation: shutterOpen 2.6s forwards;
          animation: shutterOpen 2.6s forwards;
}
@keyframes byeShutter {
  70% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    display: none;
    z-index: -1;
  }
}
@keyframes shutterOpen {
  0% {
    width: 0;
    height: 1px;
  }
  50% {
    width: 100%;
    height: 1px;
  }
  90% {
    width: 100%;
    height: 100%;
  }
  100% {
    width: 100%;
    height: 100%;
  }
}
:target {
  -webkit-animation: targetmodify 0.1s;
  animation: targetmodify 0.1s;
}
@-webkit-keyframes targetmodify{
    0% { padding-top: 180px; margin-top: -180px; }
  100% { padding-top: 0; margin-top: 0; }
}
@keyframes  targetmodify{
    0% { padding-top: 180px; margin-top: -180px; }
  100% { padding-top: 0; margin-top: 0; }
}
.mask-bg {
  color: transparent;
  display: inline-block;
  overflow: hidden;
  position: relative;
  transition: color 0ms 450ms;
}
.mask-bg::after {
  background: linear-gradient(to right, #362ae0 0%,#3b79cc 50%,#42d3ed 100%);
  bottom: 0;
  content: '';
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transform: translate(0, 100%);
}
 
.mask-bg.is-animated {
  color: #362ae0;
}
.mask-bg.is-animated::after {
  animation: mask-bg 1.2s cubic-bezier(0.8, 0, 0.170, 1);
}
 
@keyframes mask-bg {
  0% {
    transform: translate(0, 101%)
  }
  40%, 60% {
    transform: translate(0, 0%)
  }
  100% {
    transform: translate(0, -100%)
  }
}
.line {
  display: block;
  position: relative;
}
.line::after {
  background: linear-gradient(to right, #362ae0 0%,#3b79cc 50%,#42d3ed 100%);
  content: '';
  display: block;
  height: 1px;
  width: 0;
  transform: translateX(-50%);
  transition: 1.2s cubic-bezier(0.22, 1, 0.36, 1);
  position: absolute;
  bottom: 0;
  left: 50%;
}
.line.is-animated::after {
  width: 100%;
}
/*下からフェードイン*/
.fade-in-bottom {
  opacity: 0;
  animation-name: fadein-bottom;
  animation-duration: 1.5s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}
@keyframes fadein-bottom {
  0% {
     opacity: 0;
     transform: translateY(20px);
  }
  100% {
     opacity: 1;
     transform: translateY(0);
  }
}

.b {
  font-weight: bold;
}

.cookiemodal {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 99;
  width: 100%;
  padding: 1em;
  background: rgba(0,0,0,0.7);
  color: #fff;
  font-size: 70%;
}
.cookiemodal .w60 {
  width: 50%;
  margin: 10px auto;
}
.cookiemodal .close {
  position: absolute;
  left: -20%;
  top: 12%;
  background: #fff;
  color: #000;
  padding: 4px;
  text-align: center;
  width: 60px;
  cursor: pointer;
}
.cookiemodal a {
  color: #fff;
  display: inline!important;
  text-decoration: underline;
}

.fadein, .case {
    opacity : 0;
    transform : translate(0, 50px);
    -webkit-transform: translate(0, 50px);
    transition : all 1s;
    -webkit-transition: all 1s;
}
.fadein.scrollin, .case.scrollin {
    opacity : 1;
    transform : translate(0, 0);
    -webkit-transform: translate(0, 0);
}

.clearfix {
  position: relative;
}

.clearfix::after {
  content: ".";
  display: block;
  height: 0;
  font-size:0;
  clear: both;
  visibility:hidden;
}

.newicon {
  position: absolute;
  display: inline-block;
  margin: 1rem 0 1rem -10px;
  padding: 7px 4px;
  font-size: 10px;
  color: #000;
  background: #fff73e;
  -webkit-box-shadow: 3px 3px 5px rgb(0 0 0 / 20%);
  box-shadow: 3px 3px 5px rgb(0 0 0 / 20%);
  z-index: 2;
  top: -11px;
  border-radius: 50px;
  height: 29px;
}

#pc-right .newicon {
  padding: 15px 10px;
  top: 85px;
}

#pc-right .newicon {
  top: 0;
}



.sns {
  margin-top: 2em;
  margin-bottom: 2em;
}

.sns-single {
  margin: 1em 0;
  transition: all 0.5s;
}

.sns-text {
  text-align: center;
  font-size: 12px;
  margin-bottom: 1em;
}

.siteh .sns-text, footer .sns-text {
  color: #000;
}

.sns .button-area {
  display: flex;
  justify-content: center;
  align-items: center;
}

.hm_menu_wrap .sns .button-area {
  justify-content: space-evenly;
  width: 220px;
  margin: 0 auto;
}

body header .hm_menu_wrap .sns .tw, body header .hm_menu_wrap .sns .fb, body header .hm_menu_wrap .sns .youtube {
  background-size: 40px;
}

.sns.sns-single .button-area {
  justify-content: flex-start;
}

.sns .button-whole {
  width: auto;
  margin-right: 6%;
}

.sns .button-whole span {
  font-size: 10px;
  text-align: center;
  display: block!important;
}

.sns .button-whole:last-child {
  margin-right: 0;
}

.sns .button-whole a {
  padding: 20px;
  display: block;
  color: #fff;
  transition: all 0.5s;
}

.sns .button-whole a:hover {
  opacity: 0.5;
}

.sns .button-whole i {
  margin-right: 10px;
}

.sns .tw {
  background: url(img/sns-twitter.svg) no-repeat center top;
  background-size: 40px;
}

.sns .fb {
  background: url(img/sns-fb.svg) no-repeat center top;
  background-size: 40px;
}


.sns .youtube {
  background: url(img/sns-youtube.svg) no-repeat center top;
  background-size: 40px;
}

.sns .line {
  background: url(img/sns-line.svg) no-repeat center top;
  background-size: 40px;
}

.sns .urlcopy {
  background: url(img/sns-copy.svg) no-repeat center top;
  background-size: 40px;
}

.sns .more {
  background: url(img/share.svg) no-repeat center top;
  background-size: 40px;
}

.fixed-share {
  position: fixed;
  right: 4%;
  bottom: 0;
  z-index: 8;
}

.modal_sns {
  opacity: 0;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100px;
  background: rgba(255,255,255,0.8);
  transition: all 0.4s;
  z-index: 9;
  bottom: -200px;
}

.show-share {
  bottom: 0;
  opacity: 1;
}

#pc-right {
  display: none;
}

.pc-show, .pc-only {
  display: none;
}

.sp-show {
  display: block;
}

/*RESET*/
p, h2, h3, h4, h5, h6 {
  margin: 0;
}

img {
  max-width: 100%;
  height: auto;
  transition: all 0.5s;
}

a img:hover {
  opacity: 0.5;
}

ul, li {
  margin: 0;
  padding: 0;
}

li {
  list-style: none;
}

ol li {
  list-style: decimal;
}

dl {
  position: relative;
}


a {
  color: #111;
  text-decoration: none;
  transition: all 0.5s;
}

input[type="submit"] {
  border: none;
  background: none;
  cursor: pointer;
  display: block;
  width: 100%;
}

input[type="submit"]:hover {
  color: #fff;
}

/*BASE*/
section {
  position: relative;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

iframe {
  margin-top: 1em;
  width: 100%;
}

p iframe {
  width: 100%;
  height: 260px;
}

div {
  position: relative;
  margin: 0;
  padding: 0;
}

*, :after, :before {
  box-sizing: inherit;
}

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

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

.text-left, .text_left {
  text-align: left;
}

.mauto {
  margin: 1em auto!important;
}


.md10 {
  margin: 0 5%!important;
}

.mb0 {
  margin-bottom: 0!important;
}

.mb1em {
  margin-bottom: 1em;
}

.mb2em {
  margin-bottom: 2em;
}

.mb3em {
  margin-bottom: 3em;
}

.mt0 {
  margin-top: 0!important;
}

.mt1em {
  margin-top: 1em;
}

.mt2em {
  margin-top: 2em;
}

.mt3em {
  margin-top: 3em;
}

.pt0 {
  padding-top: 0!important;
}

.pb0 {
  padding-bottom: 0!important;
}

.pt10 {
  padding-top: 10px!important;
}

.pt20 {
  padding-top: 20px!important;
}

.pb10 {
  padding-bottom: 10px!important;
}

.pb20 {
  padding-bottom: 20px!important;
}

.ml2em {
  margin-left: 2em;
}

.ml0-5em {
  margin-left: 0.5em;
}

.mw330 {
  min-width: 330px;
}

.hidden {
  display: none;
}

.blockshow {
  display: block!important;
}

.min-width10 {
  min-width: 10%;
}

.min-width20 {
  min-width: 20%;
}

.min-width30 {
  min-width: 30%;
}

.min-width40 {
  min-width: 40%;
}

.min-width45 {
  min-width: 45%;
}

.min-width50 {
  min-width: 49%;
}

.min-width60 {
  min-width: 60%;
}

.min-width70 {
  min-width: 70%;
}

.min-width80 {
  min-width: 80%;
}

.max-width840 {
  max-width: 840px;
  margin: 0 auto;
}

.max-width980 {
  max-width: 980px;
}

.max-width1024 {
  max-width: 1024px;
  margin: 0 auto;
}

.max-width1280 {
  max-width: 1200px;
  margin: 0 auto;
}

.max-width1480 {
  max-width: 1480px;
  margin: 0 auto;
}

.exsmall {
  font-size: 50%;
}

.small {
  font-size: 70%;
}

.big {
  font-size: 140%;
}

.exbig {
  font-size: 160%;
}

.wbr {
  margin-bottom: 2em;
}

.text-white {
  color: #fff;
}

.center {
  text-align: center;
}

.left {
  text-align: left
}

.right {
  text-align: right;
}

.no-block {
  display: inline!important;
}

.clearfix {
  clear: both;
}

.z-index9 {
  position: relative;
  z-index: 9;
}

.text-padding {
  width: 70%;
  margin: 40px auto;
}

.button {
  display: block;
  width: 160px;
  margin: 10px auto;
  font-size: 80%;
  text-align: center;
  text-decoration: none;
  outline: none;
}
.button::before,
.button::after {
  position: absolute;
  z-index: -1;
  display: block;
  content: '';
}
.button,
.button::before,
.button::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.button {
  position: relative;
  z-index: 2;
  background-color: #fff;
  border: 2px solid #333;
  color: #333;
  line-height: 30px;
  overflow: hidden;
}
.button:hover {
  color: #fff;
}
.button::after {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.button:hover::after {
  -webkit-transform: scale(2) rotate(180deg);
  transform: scale(2) rotate(180deg);
  background: #4c4948;
}

.more-contents .button {
  margin: 40px auto;
  font-size: 100%;
  width: 300px;
}

.l50 {
  line-height: 50px;
}

.border-t1 {
  border-top: 1px solid #d8d8d8;
  padding-bottom: 1em;
}

.no-radius, .no-radius a {
  border-radius: 0!important;
}

.no-margin {
  margin: 0!important;
}

.no-padding {
  padding: 0!important;
}

/*bread*/
.breadcrumb {
  margin: 1em auto;
  width: auto;
  overflow-x: scroll;
  overflow-y: hidden;
  white-space: nowrap;
  max-width: 1200px;
  padding-left: 14px;
}

.breadcrumb ul {
  display: flex;
  justify-content: flex-start!important;
  flex-wrap: nowrap;
}

.breadcrumb::-webkit-scrollbar {
  display: none;
}

.breadcrumb ul li {
  margin-right: 4%;
  font-size: 80%;
  padding-top: 3px;
  position: relative;
}

.breadcrumb ul li:nth-child(n+2) span::before {
  content: '>';
  position: absolute;
  left: 0;
  top: 3px
}


.breadcrumb ul li:nth-child(n+2) {
  margin-left: 1%;
  padding-left: 10px;
}



.breadcrumb ul li:first-child::before {
  content: '';
}

.breadcrumb ul li a {
  transition: all 1s;
}

.breadcrumb ul li a:hover {
  color: #003174;
}

.single .breadcrumb ul li:last-child {
  max-width: 180px;
  padding-right: 20px;
  overflow: hidden;
  text-overflow: ellipsis; 
}

.swiper-button-next {
  right: 12px!important;
}

/*menu*/
header {
  background: #fff;
  width: 100%;
  top: 0;
  left: 0;
  padding: 2px;
  transition: all 0.5s;
  z-index: 3;
  box-sizing: border-box;
  transition: all 1s;
  height: 40px;
}

header h1 {
  margin: 0;
  font-size: 1em;
}

header h1 img {
  width: 160px;
}

.siteh {
  padding: 0 2%;
  display: flex;
  justify-content: space-between;
  position: relative;
}

.header-contact {
  position: absolute;
  right: 6em;
  top: 4px;
}

.isFixed .header-contact {
  top: 0;
}

.header-contact ul.contact-box li a {
   background: #1E8442;
   padding: 10px;
   height: 24px;
   transition: all 1s;
}

.header-contact ul.contact-box li:last-child a {
  background: #EA5504;
}

.header-contact ul.contact-box li a:hover {
  opacity: 0.8;
}

.header-contact .contact-box {
  color: #fff;
  padding: 0;
  border-radius: 0 0 2px 2px;
  display: flex;
  justify-content: space-around;
}

.header-contact ul li:first-child {
  border-right: 2px solid #fff;
}

.header-contact ul li a {
  color: #fff;
}

.header-contact ul li img {
  width: 18px;
  position: relative;
  top: 3px;
  margin-right: 4px;
}

.header-contact-sp {
  display: none;
}


.logo-area {
  position: relative;
  left: 0;
  top: 10px;
}

header .logo-area {
  top: 2px;
}

.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9;
  -webkit-animation: sweep-from-top 0.2s ease-out;
  animation: sweep-from-top 0.2s ease-out;
}

.fixed h1 img {
  width: 100px;
}

.menu_area {
  position: relative;
  left: 0;
  transition: all 1s;
}

.menu-innner-block {
  background: #EEEEEE;
  padding: 6% 4% 2%;
}

header .menu-innner-block {
  padding: 6% 4% 7%;
}

header .menu-innner-block .ft-left {
  top: -20px;
}

header .menu-innner-block h3 {
  font-size: 24px;
}

footer .menu-innner-block {
  padding: 6% 0 2%;
}

.fixed .menu_area {
  padding-top: 1.5vh;
}

.fixed .menu_area li a {
  font-size: 90%;
}

.hm_menu_check {/* チェックボックスを隠す */
  display: none;
}

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

#menu-headmenu {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#menu-headmenu li {
  margin-right: 2rem;
}

#menu-headmenu li:last-child {
  margin-right: 0;
}

.menu li {
  line-height: 2em;
}

.menu li a {
  display: block;
  position: relative;
  color: #ED6C00;
  font-weight: bold;
}

#menu-headmenu .sub-menu li a {
  font-family: '游ゴシック体' , 'Yu Gothic' , YuGothic, sans-serif;
  font-weight: 500;
}

#menu-headmenu li a::after {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  content: "";
  width: 0%;
  height: 2px;
  background: #000;
  transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

#menu-headmenu li a:hover::after {
  width: 100%;
}

/*sub-menu*/
#menu-headmenu .sub-menu {
  visibility: hidden;
  width: 100%;
  box-sizing: border-box;
  opacity: 0;
  position: absolute;
  background: #fff;
  z-index: 999;
  transition: all 0.2s;
  box-shadow: 0px 2px 3px #d8d8d8;
}

#menu-headmenu li:hover > .sub-menu {
  visibility: visible;
  opacity: 1;
  width: 100%;
  transition: all 0.2s;
}

#menu-headmenu li .sub-menu li {
  width: 100%;
  margin-right: 0;
}

#menu-headmenu li .sub-menu li a {
  color: #333;
  display: block;
  padding: 6px 0 6px 10px;
  margin: 10px;
}

.hm_menu_wrap {
  top: 10px;
}

.menu ul li {
  margin-bottom: 0.6em;
}

.menu ul li a {
  font-weight: bold;
}

.menu + .tag-section {
  margin-top: 1.5em;
}

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

.tag-section .flex li {
  width: 49%;
}

.menu + .tag-section .flex.tag li, .menu + .tag-section + .tag-section .flex.tag li {
  margin-right: 2%;
}

.menu + .tag-section .flex.tag li a, .menu + .tag-section + .tag-section .flex.tag li a {
  padding: 0 10px;
}

footer .tag-section .flex li a {
  font-size: 11px;
  display: block;
  background: #ED6C00;
  text-align: center;
  color: #fff;
  line-height: 32px;
  border-radius: 4px;
}



.tag-section .flex.tag {
  justify-content: flex-start
}

.tag-section .flex.tag li {
  width: auto;
  margin-right: 1%;
}

footer .tag-section .flex.tag li a {
  border-radius: 50px;
  border: 1px solid #ED6C00;
  color: #ED6C00;
  background: transparent;
  padding: 0 10px;
  font-size: 12px;
}

footer .tag-section .flex.tag li a:hover {
  opacity: 1!important;
}

body .tag-section .flex.tag li a {
  padding: 0 10px;
}

.s-form div {
  display: flex;
  padding: 0 4%;
}

/* ▽▽ハンバーガーメニュー▽▽
  ------------------------------------------------------- */

.hm_wrap {
  	display: inline-block;
  	position :fixed;
  	top : 0;
  	left :0;
  	width :100%;
  	padding :10px;
  	background :rgba(0,0,0,0.5);
}

#menu-headmenu {
    display: block;
}

  .menu ul {
    height: 100%;
    margin: 0;
    padding: 0;
}

.hm_title {/* ハンバーガーメニューオープン時の見出し */
  	position: relative;
  	color: #333;
  	display: inline-block;
  	float: left;
  	font-weight: 100;
  	line-height: 30px;
  	margin: 0 0 0 15px;
  	opacity: 0;
  	-webkit-transform: translate3d(0, -15px, 0);
  	transform: translate3d(0, -15px, 0);
  	-webkit-transition: -webkit-transform 0.6s, opacity 0.5s;
  	transition: transform 0.6s, opacity 0.5s;
  	z-index: 2;
}

/* ▽▽メニューボタン▽▽ */

.hm_btn {
  	position: absolute;
  	width: 30px;
  	height: 24px;
  	cursor: pointer;
  	display: block;
  	float: left;
  	z-index: 999;
    top: 2vh;
    right: 0;
    transition: all 1s;
}
.hm_btn::before {
  	-webkit-box-shadow: #000 0 9px 0;
  	box-shadow: #000 0 9px 0;
}
.hm_btn::after {
  	bottom: 4px;
}
.hm_btn::before,
.hm_btn::after {
  	width: 23px;
  	height: 2px;
  	background: #000;
  	display: block;
  	content: '';
  	position: absolute;
  	-webkit-transition: -webkit-box-shadow 0.2s linear, -webkit-transform 0.2s 0.2s;
  	transition: box-shadow 0.2s linear, transform 0.2s 0.2s;
}
/* △△メニューボタン△△ */

.hm_menu_wrap {
  	width :100%;
  	height :auto;
  	background: #fff;
  	position: fixed;
  	left: 0;
  	top: -300%;
  	-webkit-transition: top 0.3s;
  	transition: top 0.3s;
    z-index: 99;
}

.hm_menu_wrap li {
    list-style: none;
    width: 100%;
    height: auto;
    display: block;
    text-align: left;
    transition: all 1s;
    margin-top: 0.5em;
}

.hm_menu_wrap li a {
    color: #ED6C00;
    display: block;
    text-align: left;
    transition: all 1s;
}

.hm_menu_wrap .tag-section .flex li a {
    font-size: 11px;
    display: block;
    padding: 2px;
    background: #ED6C00;
    text-align: center;
    color: #fff;
    line-height: 32px;
    border-radius: 4px;
}

.hm_menu_wrap .tag-section .flex.tag {
    margin-top: 1.5em;
}

.hm_menu_wrap .tag-section .flex.tag li a {
    border-radius: 50px;
    border: 1px solid #ED6C00;
    color: #ED6C00;
    background: transparent;
    padding: 0 10px;
}

.hm_menu_wrap li a:hover {
    color: #333;
}

/* ▽▽開閉時のアニメーション▽▽ */
.hm_menu_check:checked ~ .hm_title {
  	opacity: 1;
  	-webkit-transform: none;
  	-ms-transform: none;
  	transform: none;
}
.hm_menu_check:checked ~ .hm_btn::before {
  	-webkit-box-shadow: transparent 0 0 0;
  	box-shadow: transparent 0 0 0;
  	-webkit-transform: rotate(45deg) translate3d(6px, 11px, 0);
  	transform: rotate(45deg) translate3d(5px, 11px, 0);
    background: #ED6C00;
    top: -8px;
}
.hm_menu_check:checked ~ .hm_btn::after {
  	-webkit-transform: rotate(-45deg) translate3d(6px, -11px, 0);
  	transform: rotate(-45deg) translate3d(5px, -11px, 0);
    background: #ED6C00;
    bottom: 7px;
}
.hm_menu_check:checked ~ .hm_menu_wrap {
  	top: 0;
    overflow-y: scroll;
    height:100%;
    -webkit-overflow-scrolling: touch;
    background: #fff;
}
.search-icon {
    position: absolute;
    top: 8px;
    right: 44px;
    width: 30px;
    display: block;
}
.hide-icon {
    display: none;
}
.search-form {
    display: none;
    position: relative;
    top: -0;
}
.txt-area {
    height: 40px;
    width: 300px;
    padding: 0 4%;
    font-size: 16px;
}
.s-ico-btn {
    position: relative;
    right: 40px;
    top: 5px;
}
.s-close {
  position: absolute;
  right: -10px;
  top: 9px;
  width: 18px;
}
header input[type="image" i] {
  opacity: 0.5;
}


/*デザインレイアウト編集メイン***************************************************************************************************************/
.category-roll {
  position: relative;
  margin: 0 0 0.5em 0;
}

.category-roll .category-list li {
  border-bottom: 2px solid #d8d8d8;
  padding: 0 4px 10px;
  margin: 0;
}

.category-roll .category-list li:first-child {
  color: #ED6C00;
  border-bottom: 2px solid #ED6C00;
}

.category-roll .tag-list li:first-child a {
  border-radius: 50px;
  border: 1px solid #ED6C00;
  color: #fff;
  background: #ED6C00;
  padding: 2px 10px;
  text-align: center;
  display: block;
  color: #fff;  
}

.single .category-roll {
  display: none;
}

.home .category-roll {
  display: none;
}

.category-list, .tag-list {
  display: flex;
  justify-content: flex-start;
  flex-wrap: nowrap;
  width: auto;
  margin: 0 auto;
  padding: 2%;
  overflow-x: scroll;
  overflow-y: hidden;
  white-space: nowrap;
}

.text-root .title {
  margin-top: 0.5em;
}

.archives-title {
  width: 96%;
  margin-top: 0.2em;
  font-size: 12px;
}

.archives-page-taglist {
  display: flex;
  justify-content: flex-start;
}

.home .tag-list {
  flex-wrap: wrap;
}

/*
.scroll-category {
  display: flex;
  overflow-x: auto;
  width: auto;
  padding: 0;
}

.scroll-category::-webkit-scrollbar {
  display:none;
}
*/

.gallery-cell {
  margin-right: 16px;
  box-shadow: 2px 2px 6px #d8d8d8;
  position: relative;
}

.gallery-cell a {
  display: flex;
  justify-content: flex-start;
  width: 240px;
  font-size: 14px;
  align-items: center;
  height: 80px;
}

.gallery-cell a:hover {
  opacity: 0.5;
}

.gallery-cell a .bgtxt {
  word-break: break-all;
  overflow-wrap: break-word;
}

.gallery-cell a .bgimg {
  width: 80px;
  background: #FEDDC3;
  margin-right: 8%;
}

.gallery-cell a .bgimg img {
  width: 80px;
  padding: 0;
}

.tag-list {
  border: none;
}

.category-list::-webkit-scrollbar, .tag-list::-webkit-scrollbar {
  display: none;
}

.category-roll li {
  margin-right: 2%;
  font-size: 12px;
}

.category-list li a, .tag-list li a {
  color: #777;
  font-size: 12px;
}

.category-roll .tag-list li a {
  border-radius: 50px;
  border: 1px solid #ED6C00;
  color: #ED6C00;
  background: transparent;
  padding: 2px 10px;
  text-align: center;
  display: block;
}

.swiper-wrapper div {
  width: 100%;
}

.swiper-wrapper div a {
  width: 250px;
  display: block;
}

.active {
  border-bottom: 2px solid #333;
}

.key-visual {
  background: #d8d8d8;
  height: 300px;
}

.index-menu {
  background: #ED6C00;
  padding: 2%;
}

#menu-index-menu {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
  height: 100px;
  line-height: 20px;
  padding: 5% 0 0;
}

.index-menu li {
  width: 33%;
  margin-bottom: 1em;
  text-align: center;
}

.index-menu li:nth-child(n+3) {
  margin-bottom: 0;
}

.index-menu li.ico-q a {
  background: url(img/ico-q.svg) no-repeat center top;
  background-size: 16px;
  padding-top: 20px;
}

.index-menu li.ico-book a {
  background: url(img/ico-book.svg) no-repeat center top;
  background-size: 16px;
  padding-top: 20px;
}

.index-menu li.ico-tweeter a {
  background: url(img/ico-tweeter.svg) no-repeat center top;
  background-size: 16px;
  padding-top: 20px;
}

.index-menu li.ico-trophy a {
  background: url(img/ico-trophy.svg) no-repeat center top;
  background-size: 16px;
  padding-top: 20px;
}

.index-menu li.ico-beam a {
  background: url(img/ico-beam.svg) no-repeat center top;
  background-size: 13px;
  padding-top: 20px;
}

.index-menu li.ico-cal a {
  background: url(img/ico-cal.svg) no-repeat center top;
  background-size: 16px;
  padding-top: 20px;
}

.index-menu li a {
  font-size: 10px;
  color: #fff;
  text-align: center;
}

.newsarea .area-title, .c-title {
  font-size: 18px;
  border-left: 4px solid #ED6C00;
  padding-left: 0.4em;
  margin-bottom: 1em;
}

.c-title {
  font-size: 18px;
}

.category-card .category-list, .category-card .tag-list {
  border: none;
}

.category-card .category-list {
  margin-bottom: 1em;
}

.category-card .category-list li {
  margin-right: 1em;
}

.category-card .category-list a {
  box-shadow: 2px 2px 3px #d8d8d8;
  line-height: 80px;
}

.category-card .tag-list { 
  padding: 0 5%;
}

.category-card .category-list li:first-child ,.category-card .tag-list li:first-child {
  display: none;
}

.category-card .tag-list li {
  margin-bottom: 0.5em;
  margin-right: 1%;
}



.category-card .tag-list li a {
  display: inline-block;
  padding: 0 10px;
  font-size: 11px;
  border: 1px solid #ED6C00;
  color: #ED6C00;
  border-radius: 50px;
  line-height: 30px; 
}

.category-card .tag-list li a:hover {
  opacity: 1;
}

.news-list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 2em;
}

.news-list {
  line-height: 1em;
}

.news-list li:nth-child(-n+2) {
  width: 48%;
  margin-right: 4%;
}

.news-list li:nth-child(-n+2):nth-child(n+2) {
  margin-right: 0;
}

.news-list li {
  width: 31%;
  margin-bottom: 2em;
  position: relative;
  margin-right: 2%;
}

.news-list.colm2 li {
  width: 48%;
  margin-right: 4%;  
}



.news-list.colm2 li:nth-child(n+3):nth-child(even) {
  margin: 0;
}

.news-list .thumbnail {
  margin-bottom: 3%;
}

.news-list .thumbnail img, .card-box .thumbnail img {
  object-fit: cover;
  width: 100%;
  height: 96px;
  transition: all 0.8s;
  overflow: hidden;
}

.news-list li:nth-child(n+3) .thumbnail img, .related .news-list .thumbnail img {
  height: 64px;
}

.news-list li h2 {
  line-height: 0.5em;
}

span.txt a {
  width: 97%;
  letter-spacing: 0.8px;
}

.hide {
  display: none;
}

.newsarea .flex-title {
  display: flex;
  justify-content: space-between;
}

.flex-title .more-txt {
  font-size: 14px;
  border-bottom: 1px solid #000;
  padding-bottom: 0;
  height: 22px;
}

.tag-area {
  margin: 3% 0;
  overflow-x: auto;
  white-space: nowrap;
  display: flex;
  flex-wrap: nowrap;
}

.tag-area::-webkit-scrollbar {
  display: none;
}

.related .tag-area .cat-tag:nth-child(n+3), .news-list .tag-area .cat-tag:nth-child(n+3), .archive .tag-area .cat-tag:nth-child(n+3) {
  display: none;
}

.txt a {
  font-size: 12px;
}

.sec-C,.single-page.page-block,.blog-page.page-block {
  padding: 0 4%;
  padding-bottom: 4em;
}

.sec-C .flex-layout {
  justify-content: flex-start;
  flex-wrap: wrap;
}

.sec-C .card-box {
  width: 48%;
  margin-bottom: 1em;
}

.sec-C .card-box:nth-child(even) {
  margin-left: 2%;
}

.page .the_content_main ul, .single .the_content_main ul {
  padding-left: 1.5em;
  margin-bottom: 1em;
}

.page .the_content_main ul li, .single .the_content_main ul li {
  list-style-type: disc;
  padding-left: 0.5em;
  font-size: 16px;
  padding-bottom: 0.8em;
}

.page .the_content_main ul {
  margin: 0 0 2em 1.5em;
}

.page .the_content_main p {
  font-size: 14px;
}

.page .the_content_main p a {
  color: #329bd2;
}

.single p a {
  color: #329bd2;
}

/*デザインレイアウト編集メイン***************************************************************************************************************/
.container-box {
  min-width: 300px;
  margin: 3em auto;
  display: block;
  box-sizing: border-box;
}

.pagination {
	clear: both;
	padding: 20px 0;
	position: relative;
	font-size: 14px;
	line-height: 14px;
  text-align: center;
}
.pagination-box {
	display: inline-block;
}
.pagination span, .pagination a {
	display: block;
	float: left;
	margin: 2px 2px 2px 0;
	padding: 10px 15px 10px 15px;
	text-decoration: none;
	width: auto;
	color: #fff; /* 通常の文字色 */
	background: #d8d8d8; /* 通常の背景色 */
}
.pagination a:hover{
	color: #fff; /* マウスホバー時の文字色 */
	background: #ED6C00; /* マウスホバー時の背景色 */
}
.pagination .current{
	padding: 10px 15px 10px 15px;
	color: #fff; /* 現在のページの文字色 */
  background: #ED6C00; /* 現在のページの背景色 */
}

.pagination span, .pagination a {
  background: transparent;
  color: #000;
  border-radius: 4px;
}

.page-numbers li:last-child a, .page-numbers li a.prev.page-numbers {
  background-color: #ED6C00;
  color: #fff;
  box-shadow: 0 3px 0 #883e02;
}

.page-numbers li:last-child a:hover, .page-numbers li a.prev.page-numbers:hover {
  position: relative;
  box-shadow: none;
  top: 3px;
}


.scroll {
  margin: 0 auto;
  width: 100%;
  max-width: 1280px;
}


.ab50-50 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.mainblock {
  padding: 0 5%;
}

.outer.page-mv h1 {
  font-size: 24px;
}

.single h1 {
  margin-bottom: 0.5em;
}

.single h2 {
  margin-bottom: 0.5em;
}

.single #pc-layout #pc-left p {
  margin-bottom: 3em;
  line-height: 2em;
  letter-spacing: 1px;
}

.mainblock.newsarea.related .excerpt.pc-only p {
  line-height: 1.5em!important;
}

.single .img .thumbnail {
  margin: 0 -4%;
}

.single #pc-layout .date {
  margin-bottom: 1.5em;
  font-size: 12px;
}

.single .outer.page-mv + p {
  margin-bottom: 0;
}

.txt-white {
  color: #fff!important;
}

.block-inner {
  max-width: 1200px;
  margin: 0 auto;
}

.wp-block-table {
  margin: 1.5em 0;
  border-collapse: collapse;
  width: 100%;
}

.wp-block-table th, .wp-block-table td {
  text-align: left;
  border: 1px solid #d8d8d8;
  padding: 2%;
}

.wp-block-table th {
  width: 15%;
}

.blocks-gallery-grid, .wp-block-gallery {
  width: 50%;
  flex-wrap: nowrap;
}

.tag-flex {
  display: flex;
  justify-content: flex-start;
}

.tag-flex li {
  margin-right: 4px;
}

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

.tag-flex li a {
  display: block;
  padding: 2px 4px;
  font-size: 12px
}

.flex-block {
  margin: 2em auto;
}

.flex-layout {
  display: flex;
  padding-bottom: 4em;
}

.more-btn {
  display: block;
  width: 80%;
  margin: 1em auto;
  background: #ff9900;
  color: #fff;
  cursor: pointer;
  padding: 1em 0;
  border-radius: 4px;
  border-bottom: 4px solid #7b4804;
}

.btn-more {
    position: relative;
    display: block;
    width: 100%;
    max-width: 260px;
    height: 60px;
    line-height: 58px;
    font-family: "EB Garamond", serif;
    font-size: 1.3rem;
    text-align: center;
    color: #040456!important;
    border: 1px solid #040456;
    margin: 0 auto;
}



.btn-more:hover {
    background: #040456;
    color: #fff!important;
}

.btn-more.txt-white {
  position: relative;
  display: block;
  width: 100%;
  max-width: 260px;
  height: 60px;
  line-height: 58px;
  font-family: "EB Garamond", serif;
  font-size: 1.3rem;
  text-align: center;
  color: #040456;
  border: 1px solid #fff;
  margin: 0 auto;
  background: #fff;
}



.btn-more.txt-white:hover {
  background: #040456;
  color: #fff!important;
}

.btn-link li a {
  transition: all 1s;
  display: block;
  width: 80%;
  margin: 4em auto;
  background: rgba(255,255,255,0.8);
  color: #000;
  cursor: pointer;
  padding: 1em 0;
  border-radius: 4px;
  box-shadow: 0px 3px 0 #110e1f;  
  position: relative;
}

.btn-link li a:hover {
  opacity: 0.8;
  top: 2px;
  box-shadow: none
}


.bg-white {
  background: #fff;
}

.bg-eee {
  background: #eee;
}

.bg-eee .sns {
  padding: 6% 2%;
}

.cat-tag {
  text-align: center;
  margin: 0 2px;
}

.cat-tag a {
  display: inline-block;
  padding: 0 10px;
  margin-bottom: 4px;
  font-size: 10px;
  border: 1px solid #ED6C00;
  border-radius: 50px;
  line-height: 30px;
  color: #ED6C00;
}

.cat-tag a:hover {
  background: #ED6C00;
  color: #fff;
}


.cat-tag.tag-news a, .cat-tag.tag-welfare a, .cat-tag.tag-works a, .cat-tag.tag-water a, .cat-tag.tag-civil a, .cat-tag.tag-employee a {
  color: #fff;
}

.btn-more-box span {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  border: 1px solid #fff;
  padding: 10px;
  width: 220px;
  text-align: center;
  background: rgba(0,0,0,0.5);
}

.support-area {
  background: url(img/add-banner.svg) no-repeat;
  background-size: cover;
  min-height: 151px;
  margin-bottom: 1em;
}

.matome {
  background: #ED6C00;
}

.matome div {
  padding: 4%;
  margin: 0 auto;
}

.fixed-support {
  background: url(img/support-img-tr.png) no-repeat;
  background-size: cover;
  background-position: center center;
  min-height: 66px;
  margin-bottom: 1em;  
  position: relative;
  transition: all 1s;
}

.fixed-support.clear {
  background: transparent;
}

.fixed-support p {
  text-align: center;
  font-size: 12px;
}

.fixed-support .register {
  transition: all 1s;
}

.fixed-support .register a {
  width: 70%;
}

.hm_menu_wrap .support-area {
  margin-bottom: 0;
}

.register-area {
  text-align: center;
  padding: 3% 0;
}

.register-area p {
  font-size: 12px;
}

.register-area span {
  font-size: 20px;
  margin: 0 4px;
  font-weight: bold;
}

.register {
  margin-top: 0.5em;
}

.register-area a, .register a {
  display: block;
  background: linear-gradient(180deg, #00B900 0%, #00A800 100%);
  color: #fff;
  text-align: center;
  width: 80%;
  margin: 0 auto;
  border-radius: 4px;
  line-height: 48px;
  top: 1px;
}

.register-area a:hover {
  opacity: 0.5;
}

.privacylink {
  color: #001AFF;
  display: inline;
}

.matome-header {
  background: url(img/matome.png) no-repeat center;
  background-size: cover;
  height: 80px;
  text-align: center;
  margin-top: -16px;
}

.matome-header h1 {
  position: relative;
  top: 5px;
  font-size: 20px;
}

.obi-twitter {
  background: #55ACEE;
  position: relative;
  text-align: center;
  height: 40px;
  margin-bottom: 2em;
}

.obi-twitter::before {
  content: '';
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  top: -15px;
  display: block;
  width: 0;
  height: 0;
  border-right: 15px solid transparent;
  border-bottom: 15px solid #55ACEE;
  border-left: 15px solid transparent;  
}

.obi-twitter p {
  font-size: 16px;
  color: #fff;
  line-height: 40px;
}

.bgtw {
  background: url(img/tw-white.svg) no-repeat 26%;
  color: #fff;
  font-size: 12px;
  line-height: 37px;
  background-size: 20px;
}

.btn-arrow {
  position: relative;
  top: 2px;
  left: 12px;
}

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

.marquee {
  width: 100%;
  padding: 0 0;
  overflow: hidden;
  background-color:#fff;
  position: relative;
  }
  
.marquee p:after {
  content:"";
  white-space:nowrap;
  padding-right:50px;
  }
  
.marquee p {
  margin:0;
  font-size: 16px!important;
  padding-left:600px;
  display:inline-block;
  white-space:nowrap;
    -webkit-animation-name:marquee;
    -webkit-animation-timing-function:linear;
    -webkit-animation-duration:30s;
    -webkit-animation-iteration-count:infinite;
    -moz-animation-name:marquee;
    -moz-animation-timing-function:linear;
    -moz-animation-duration:30s;
    -moz-animation-iteration-count:infinite;
    -ms-animation-name:marquee;
    -ms-animation-timing-function:linear;
    -ms-animation-duration:30s;
    -ms-animation-iteration-count:infinite;
    -o-animation-name:marquee;
    -o-animation-timing-function:linear;
    -o-animation-duration:30s;
    -o-animation-iteration-count:infinite;
    animation-name:marquee;
    animation-timing-function:linear;
    animation-duration:30s;
    animation-iteration-count:infinite;
    -webkit-text-size-adjust: 100%;
  }
  @-webkit-keyframes marquee {
    from   { -webkit-transform: translate(0%);}
    99%,to { -webkit-transform: translate(-100%);}
  }
  @-moz-keyframes marquee {
    from   { -moz-transform: translate(0%);}
    99%,to { -moz-transform: translate(-100%);}
  }
  @-ms-keyframes marquee {
    from   { -ms-transform: translate(0%);}
    99%,to { -ms-transform: translate(-100%);}
  }
  @-o-keyframes marquee {
    from   { -o-transform: translate(0%);}
    99%,to { -o-transform: translate(-100%);}
  }
  @keyframes marquee {
    from   { transform: translate(0%);}
    99%,to { transform: translate(-100%);}
  }

.marquee a {
  font-size: 16px!important;
  display: inline-block;
  color: #2F80ED;
  text-decoration: none;
  -webkit-text-size-adjust: 100%;
}

.marquee p a:link, .marquee p a:hover, .marquee p a:visited, .marquee p a:focus, .marquee p a:target, .marquee p a:hover {
  font-size: 16px!important;
  color: #2F80ED;
  text-decoration: none;
  -webkit-text-size-adjust: 100%;
}

.marquee p strong, .marquee p span {
  font-size: 16px!important;
  margin: 0 4px;
  -webkit-text-size-adjust: 100%;
}


.isFixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  transition: all 1s;
  z-index: 98;
}




.cvfixed {
  position: fixed;
  bottom: 0;
  width: 100%;
  background: rgba(255,255,255,0.8);
  z-index: 9;
  padding-bottom: 0.2em;
}

/**WP機能＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊*/
#toc_container {
  display: block!important;
  box-sizing: border-box!important;
  border: none!important;
  background: #EEEEEE!important;
}

.single #toc_container {
  margin: 1.5em 0;
}

#toc_container p.toc_title {
  text-align: left!important;
  color: #000;
  margin-bottom: 0!important;
}

#toc_container .toc_list li {
  border-bottom: 1px solid #777;
}

#toc_container .toc_list li:last-child {
  border: none;
}

#toc_container a {
  padding: 8px 0;
  display: block;
  color: #777777;
  font-size: 14px;
}

.page #toc_container .toc_list li {
  border: none;
}

#toc_container .toc_list ul li a {
  padding-bottom: 0;
}

#toc_container .toc_list ul li {
  list-style: disc!important;
}

.page #toc_container ul ul {
  border-bottom: 1px solid #777;
  margin-left: 0;
  padding-left: 1.5em;
  padding-bottom: 1em;
}

.page #toc_container ul li:last-child ul {
  border: none;
}

#toc_container span.toc_toggle {
  display: none!important;
}

/**フォーム＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊*/
.contact-header {
  background: #FEDDC3 url(img/contactheaderimg.png) repeat-y center;
  background-size: cover;
  height: 80px;
  text-align: center;
  margin-top: -18px;
}

.contact-header h1 {
  position: relative;
  top: 20px;
}

.support-count {
  background: #ED6C00;
  position: relative;
  text-align: center;
  height: 40px;
}

.support-count::before {
  content: '';
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
  top: -15px;
  display: block;
  width: 0;
  height: 0;
  border-right: 15px solid transparent;
  border-bottom: 15px solid #ED6C00;
  border-left: 15px solid transparent;  
}

.support-count p {
  font-size: 16px;
  color: #fff;
  line-height: 40px;
}

.register-block h2 {
  font-size: 20px;
  margin: 2em 0;
}

.register span {
  font-size: 20px;
  font-weight: bold;
}

.orange-border-title span {
  border-bottom: 2px solid #ED6C00;
}

.orange-border {
  border: 2px solid #ED6C00;
  padding: 4%;
  position: relative;
}

.orange-border::before {
  height: 0;
  display: block;
  position: absolute;
  right: -2px;
  top: -2px;
  content: "";
  border-top: solid 20px #fff;
  border-left: solid 20px transparent;
}

.orange-border::after {
  height: 0;
  display: block;
  position: absolute;
  right: -2px;
  content: "";
  border-bottom: solid 20px #ED6C00;
  border-right: solid 20px transparent;
  top: -2px;
}

.area-ab-title {
  position: absolute;
  left: 50%;
  top: -14px;
  background: #fff;
  transform: translate(-50%,0);
  color: #ED6C00;
  border: 2px solid #ED6C00;
  font-size: 14px;
  padding: 2px 4%;
}

.orange-border dt {
  border-bottom: 1px solid #000;
  padding-bottom: 1em;
  font-size: 14px;
  font-weight: bold;
}

.orange-border dd {
  font-size: 12px;
  padding-top: 1.5em;
  margin-bottom: 2em;
  margin-left: 0;
}

.r-01-ico {
  background: url(img/r-01.png) no-repeat left top;
  background-size: 22px;
  padding-left: 40px;
}

.r-02-ico {
  background: url(img/r-02.png) no-repeat left top;
  background-size: 22px;
  padding-left: 40px;
}

.r-03-ico {
  background: url(img/r-03.png) no-repeat left top;
  background-size: 22px;
  padding-left: 40px;
}

.card-sample {
  position: absolute;
  right: -19px;
  bottom: -26px;
}

.black-border {
  border: 2px solid #000;
  border-radius: 12px;
  padding: 4%;
  position: relative;
}


.area-strict-title {
  font-size: 16px;
  text-align: center;
  margin-bottom: 1em;
}

.black-border h4 {
  font-size: 14px;
  margin: 1em 0 1em;
}

.black-border p {
  font-size: 12px;
}

section.form {
  padding: 0 4%;
  padding-bottom: 2em;
  width: 100%;
}

.form {
  margin-top: 2em;
}

section.form h2 {
  font-size: 16px;
  margin-top: 1em;
}

.form .orange-border-title {
  font-size: 16px;
}

.form .orange-border-title span {
  border-bottom: 2px solid #ED6C00;
  font-size: 16px;
}

section.form h2 span {
  font-size: 8px;
}

section.form input[type=text], section.form textarea {
  width: 98%;
  height: 44px;
  margin-top: 1em;
  border: 1px solid #d8d8d8;
  border-radius: 4px;
  padding: 0 4%;
}

section.form textarea {
  height: 100px;
}

.im, .im span {
  position: relative;
}

.im span::after {
  content: '必須';
  background: #D72500;
  color: #fff;
  padding: 2px 4px;
  text-align: center;
  display: block;
  position: absolute;
  right: -47px;
  top: -3px;
  font-size: 8px;
  width: 30px;
}

.form .policy {
  text-align: center;
  margin: 1em auto;
  font-size: 12px;
}

.form .msg {
  margin-bottom: 2em;
}

.form .msg p {
  font-size: 10px;
}

.form .green-btn {
  position: relative;
  display: block;
  background: linear-gradient(180deg, #00B900 0%, #00A800 100%);
  color: #fff;
  text-align: center;
  width: 100%;
  margin: 0 auto;
  border-radius: 4px;
  line-height: 48px;
  transition: all 0.5s;
}
.arrow-white {
  position: relative;
}
.arrow-white::after {
  content: '';
  display: block;
  width: 10px;
  height: 12px;
  position: absolute;
  right: 18px;
  z-index: 2;
  background: url(img/ico-arrow.svg) no-repeat center center;
  background-size: contain;
  top: 18px;
  z-index: 2;
}

.orange-border {
  padding: 4% 10%;
}

.form .green-btn:hover {
  opacity: 0.5;
}

.form .green-btn:disabled {
  position: relative;
 display: block;
 background: linear-gradient(180deg, #cccccc 0%, #cccccc 100%);
 color: #fff;
 text-align: center;
 width: 100%;
 margin: 0 auto;
 border-radius: 4px;
 line-height: 48px;
 transition: all 0.5s;
 }

section.thanks-header {
  background: url(img/support-bg.svg) no-repeat center 113%;
  background-size: contain;
  padding: 3% 4%;
  padding-bottom: 4em;
  text-align: center;
  margin-top: 4em;
}

.support-bg {
  background: url(img/support-bg.svg) no-repeat center 68%;
  background-size: cover;
  height: 60px;
}

section.thanks-header h1 {
  font-size: 24px;
}

section.thanks-header p {
  font-size: 14px;
}

section.thanks {
  background: #ED6C00;
}

.thanks-block {
  padding: 2% 2%;
  padding-bottom: 3em;
  position: relative;
  max-width: 480px;
}

.main-card {
  position: absolute;
  top: -80px;
  left: 50%;
  transform: translate(-50%,0);
  width: 310px;
}

.thanks-block p {
  color: #fff;
  padding: 4%;
  font-size: 13px;
}

section.card .tw-btn, section.thanks .tw-btn {
  text-align: center;
  margin: 2em 0;
  top: 63px;
  position: relative;
  z-index: 9;
}

section.card .tw-btn a, section.thanks .tw-btn a {
  display: block;
  border: 2px solid #55ACEE;
  background: #fff;
  color: #55ACEE;
  border-radius: 4px;
  text-align: center;
  padding: 2px 4%;
  width: 60%;
  margin: 0 auto;
  height: 40px;
  line-height: 40px;
  font-weight: bold;
  z-index: 9;
}

section.card .tw-btn a span, section.thanks .tw-btn a span {
  position: relative;
  top: -2px;
}

.the_content_main h2, .the_content_main h3, .the_content_main h4 {
  margin-bottom: 1em;
}

.the_content_main h2 {
  font-size: 20px;
}

.the_content_main h3 {
  font-size: 16px;
  border-bottom: 1px solid #ED6C00;
  padding-bottom: 0.5em;
}

.the_content_main h4 {
  font-size: 14px;
}

.the_content_main p {
  margin-bottom: 1.5em;
  overflow-wrap: break-word;
}

/*IE Hack!!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media all and (-ms-high-contrast: none) {
  body {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "メイリオ";
    background: #edf1f4;
  }
  h2, h3, h4 {
    font-family: "Yu Gothic", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "メイリオ";
  }
  .no-hack {
    display: none;
  }
  .ie-hack {
    display: block;
  }
  p {
    line-height: 1.5em;
  }
}
/*IE Hack!!++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/




/*footer*/

footer {
  position: relative;
  background: #fff;
  color: #333;
}


footer a {
  color: #ED6C00;
}

footer .flex {
  justify-content: flex-start;
  flex-wrap: wrap;
}

footer .menu-innner-block {
  padding: 6% 4% 2%; 
}

footer .footer-left {
  margin-right: 5%;
  width: 25%;
}

footer .footer-left img {
  width: 300px;
}

footer .footer-right {
  width: 70%;
}

footer .tag-section {
  padding: 0;
  margin: 1.5em 0;
}

footer .tag-section .flex li {
  margin-bottom: 2%;
}

footer .tag-section .flex.tag {
  margin-top: 1em;
}

footer .sub-menu {
  margin-bottom: 1em;
  padding-left: 1em;
}

footer .menublock {
  width: 33%;
  margin-bottom: 2em;
}

.footer-logo {
  background: #fff;
  text-align: center;
  padding: 2% 0;
}

#menu-footermenu {
  display: flex;
  justify-content: space-evenly;
  margin-bottom: 2em;
  flex-wrap: nowrap;
}

#menu-footermenu .sub-menu {
  padding-left: 1em;
  margin-bottom: 1em;
  padding-top: 0.5em;
}

#menu-footermenu li a, footer li a {
  transition: all 0.8s;
  color: #ED6C00;
}

#menu-footermenu li a:hover, footer li a:hover {
  opacity: 0.8;
  color: #ED6C00
}

/*インフォグラフィック*/
.wp-block-embed {
  width: 100%;
  margin: 0 auto!important;
}

.wp-block-embed iframe {
  max-width: 100%!important;
}

.twitter-tweet.twitter-tweet-rendered {
  max-width: 100%!important;
}

.wp-block-embed + p {
  display: flex;
  justify-content: space-evenly;
  flex-wrap: wrap;
  margin: 0 auto;
}

.wp-block-embed + p a {
  border: 2px solid #55ACEE;
  color: #55ACEE;
  border-radius: 4px;
  width: 48%;
  height: 44px;
  line-height: 40px;
  text-align: center;
  position: relative;
  padding-left: 13px;
  box-shadow: 0px 3px 3px #d8d8d8;
}

.wp-block-embed + p a:hover {
  opacity: 0.5;
}

.wp-block-embed + p a::after {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  left: 28px;
  z-index: 2;
  background: url(img/infort.svg) no-repeat center center;
  background-size: contain;
  top: 10px;
  z-index: 2;  
}


.wp-block-embed + p a:last-child {
  background: #55ACEE;
  color: #fff!important;
  border-radius: 4px;
  width: 48%;
  height: 44px;
  line-height: 38px;
  text-align: center;
  margin-left: 10px;
}

.wp-block-embed + p a:last-child::after {
  content: '';
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  left: 22px;
  z-index: 2;
  background: url(img/infoirt.svg) no-repeat center center;
  background-size: contain;
  top: 11px;
  z-index: 2;  
}

.wp-block-embed + p + p a {
  border-radius: 4px;
  width: 100%;
  height: 44px;
  line-height: 40px;
  margin: 1em auto;
  text-align: center;  
  background: #eee;
  color: #55ACEE;
  display: block;
}

.the_content_main p + h3 {
  margin-top: 3em;
}

.page-id-28 .the_content_main p a {
  color: #55ACEE;
}


.page-id-28 .breadcrumb {
  margin-bottom: 1em;
}

/*外部機能など*/
.slick-list.draggable {
  margin: 10px 0!important;
  height: 86px;
  overflow-x: hidden;
}
.gallery-cell.slick-slide {
  min-width: 240px!important;
  margin-bottom: 20px;
}

.scroll .slick-next {
  right: 20px;
  background: rgba(0,0,0,0.8);
  width: 64px!important;
  height: 64px!important;
  border-radius: 50px;
  border: navajowhite;
  z-index: 88;
}
.scroll .slick-next:hover, .scroll .slick-next:active, .scroll .slick-next:visited, .scroll .slick-next:focus {
background: rgba(0,0,0,0.4);
}
.scroll .slick-prev {
  left: 20px;
  background: rgba(0,0,0,0.8);
  width: 64px!important;
  height: 64px!important;
  border-radius: 50px;
  border: navajowhite;
  z-index: 88;
}
.scroll .slick-prev:hover, .scroll .slick-prev:active, .scroll .slick-prev:visited, .scroll .slick-prev:focus {
background: rgba(0,0,0,0.4);
}
.scroll .slick-prev::before, .scroll .slick-next::before {
font-family: '';
}
.scroll .slick-prev::before {
  content: '';
  background: url(img/toparrow.svg) no-repeat;
  display: block;
  width: 24px;
  height: 24px;
  transform: scale(-1, 1);
  position: absolute;
  right: 27px;
  top: 20px;  
}

.scroll .slick-next::before {
  content: '';
  background: url(img/toparrow.svg) no-repeat;
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 20px;
  right: 12px;
}

/*守る会とはページ*/

.page-header {
  height: 80px;
  background: #feddc3 url(img/kaiheader.svg) no-repeat;
  background-size: cover;
  height: 80px;
  margin-top: -16px;
}

.page-header h1 {
  font-size: 24px;
  position: relative;
  top: 22px;
  text-align: center;
}

.page-id-7 .the_content_main h3 {
  border: none;
  margin-bottom: 0.5em;
  margin-top: 1em;
}

.page-nav {
  margin-top: 1em;
  margin-bottom: 2.5em;
}

.page-nav ul {
  list-style: none!important;
  display: flex;
  justify-content: center;
  margin: 0!important;
  padding: 0!important;
}

.page-nav ul li {
  list-style: none!important;
  margin-right: 1em;
}

.page-nav ul li a {
  display: block;
  text-decoration: underline;
  background: url(img/arrow-down.svg) no-repeat right 60%;
  background-size: 14px;
  padding-right: 24px;
  font-size: 14px;
  font-weight: bold;
}

.kai-box #t-1 {
  margin-bottom: 1.5em;
}

.kai-box p {
  border-bottom: 1px solid #777;
  padding-bottom: 1.5em;
  margin-bottom: 0;
  color: #777;
}

.kai-box p a {
  color: #2F80ED;
  text-decoration: underline;
}

.kai-box p.border-none {
  border-bottom: none;
}

.kai-box .border-bottom {
  position: relative;
}

.kai-box .border-bottom::after {
  content: '';
  display: block;
  border-bottom: 1px solid #ED6C00!important;
  width: 28%;
  margin-top: 0.5em;
}

.kai-box.bg-feddc3 {
  background: #FEDDC3;
  margin: 2em -4%;
  padding: 2em 4%;
}

.bg-img1 {
  background: url(img/akamatsu.png) no-repeat;
  height: auto;
  width: 100%;
  height: 221px;
  background-size: cover;
  position: relative;
  top: -48px;
}

.bg-img2 {
  background: url(img/yamada.png) no-repeat;
  height: auto;
  width: 100%;
  height: 221px;
  background-size: cover;
  position: relative;
  top: -48px;
}


.kai-box.bg-feddc3 p, .kai-box.sengen p {
  border-bottom: none;
  color: #111;
  font-size: 16px;
  letter-spacing: 1.4px;
  font-family: YuMincho, /* Mac用 */ 'Yu Mincho', /* Windows用 */ serif,'Noto Serif JP';
}

/*
.kai-box.bg-feddc3::before, .kai-box.bg-feddc3::after {
  content: '';
  display: none;
  visibility: hidden;
}
*/
.kai-box.sengen h2 {
  margin-bottom: 2em;
}

/*PC+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media screen and (min-width: 1024px) {
  header {
    width: 100%;
    top: 0;
    left: 0;
    z-index: 99;
    height: 80px;
  }

  .marquee p {
    padding-left: 3600px;
    font-size: 18px;
    padding: 0.5em 10%;
  }

  #pc-layout {
    display: flex;
    margin: 1.5em auto;
    max-width: 1200px;
    justify-content: space-between;
    padding: 0 4%;
  }

  .single #pc-layout {
    max-width: 1000px;
  }

  .page #pc-layout, .single  #pc-layout {
    justify-content: space-between;
  }

  .page #pc-layout {
    display: block;
  }

  #pc-left {
    max-width: 837px;
    margin-right: 2em;
  }

  #pc-right {
    display: block;
    max-width: 346px;
    min-width: 346px;
  }

  #pc-right section {
    margin-bottom: 2em;
  }

  .page-id-103 .max-width1280.flex-layout {
    padding: 0 4%;
  }

  #pc-right section h3 {
    margin-bottom: 1em;
    margin-top: 1.5em;
    font-size: 24px;
  }

  .side-news-list a {
    font-size: 14px;
  }

  .sp-show, .sp-only {
    display: none;
  }

  .pc-only {
    display: block;
  }

  .main-visual {
    background: url(img/main.svg) no-repeat center top;
    height: 240px;
    background-size: contain;
    width: 980px;
    margin: 0 auto 0;
  }

  .siteh {
    margin: 0 auto;
    max-width: 1200px;
    height: 80px;
    padding: 0;
  }

  header h1 {
    margin: 0;
    padding: 0;
  }

  header h1 img {
    width: 200px;
  }

  .breadcrumb {
    margin: 0 auto;
    padding: 0;
  }

  .breadcrumb ul li {
    margin-right: 1%;
    font-size: 14px;
  }

  .search-form {
    display: block;
    top: 8px;
    left: 140px;
  }

  header .logo-area {
    display: flex;
    justify-content: flex-start;
    top: 10px;
  }

  header .logo-area {
    min-width: 990px;
  }

  header .register {
    position: absolute;
    right: -68px;
    top: -13px;
    margin: 0;
  }
  .page header .register, .error404 header .register {
    top: -9px;
  }
  .page-id-28 header .register {
    top: -34px;
  }
  .error404 header .register {
    top: -34px;
  }
  header .register p {
    font-size: 12px;
    text-align: center;
  }
  
  header .register a {
    display: block;
    background: linear-gradient(180deg, #00B900 0%, #00A800 100%);
    color: #fff;
    text-align: center;
    margin: 0 auto;
    border-radius: 4px;
    line-height: 40px;
    padding: 0 36px;
    width: 100%;
  }

  header .register a:hover {
    opacity: 0.5;
  }



  .sns.logo-side {
    margin: 0;
    position: relative;
    top: -20px;
    left: 48px;
  }

  header .logo-area .sns .tw, header .logo-area .sns .fb, header .logo-area .sns .youtube {
    background-size: 32px;
  }

  #pc-layout .sns .button-whole {
    margin-right: 2%;
  }



  .hm_btn {
    display: block;
    top: 2vh;
    width: 50px;
    height: 50px;
    border-radius: 50px;
    padding: 15px;
    box-sizing: border-box;
    background: #ED6C00;
    top: 1.5vh;
  }

  .hm_menu_wrap {
    width: 1060px;
    right: 0;
    left: unset;
    background: #eee;
  }

  .hm_menu_wrap .menu {
    margin: 3em 0 0;
  }

  .hm_menu_check:checked ~ .hm_menu_wrap {
    height: 100vh;
  }

  .hm_menu_check:checked ~ .hm_btn::before {
    background: #eee;
    top: 12px;
    left: 20px;
  }

  .hm_menu_check:checked ~ .hm_btn::after {
    background: #fff;
    top: 35px;
    left: 20px;    
  }

  .hm_menu_wrap .menu li a {
    font-weight: bold;
  }

  .menu li {
    line-height: 3.1em;
  }

  .hm_menu_wrap li {
    text-align: left;
    margin-right: 2%;
  }

  .hm_menu_wrap .tag-section {
    max-width: 400px;
  }

  .hm_menu_wrap .tag-section .flex {
    margin-bottom: 1em;
  }

  .hm_menu_wrap .tag-section .flex li a {
    text-align: left;
    padding: 0 10px;
    font-size: 14px;
  }

  .hm_menu_wrap .tag-section .flex.tag li a {
    font-size: 12px;
  }

  .hm_menu_wrap .tag-section .flex.tag li a:hover {
    background: #ED6C00;
    color: #fff;
    opacity: 1;
  }

  .hm_menu_wrap .tag-section a:hover {
    opacity: 0.5;
  }

  .hm_btn::before, .hm_btn::after {
    background: #fff;
    width: 19px;
  }

  .hm_btn::before {
    box-shadow: #fff 0 8px 0;
  }

  .hm_btn::after {
    bottom: 16px;
  }

  header .menu-innner-block .ft-left {
    top: -20px;
  }

  header .hm_menu_wrap .sns .tw, header .hm_menu_wrap .sns .fb, header .hm_menu_wrap .sns .youtube {
    background-size: 32px;
  }

  header .hm_menu_wrap .sns .tw, header .hm_menu_wrap .sns .fb, header .hm_menu_wrap .sns .youtube {
    background-size: 40px;
  }

  .menu-innner-block {
    display: flex;
    justify-content: space-around;
    height: 100vh;
  }

  #menu-headmenu .sub-menu {
    visibility: visible;
    opacity: 1;
    position: relative;
    background: none;
    box-shadow: none;
    display: flex;
  }

  #menu-headmenu li .sub-menu li a {
    padding: 0;
    margin: 0;
    background: #f4f4f4;
    display: block;
  }

  #menu-headmenu li a {
    margin-bottom: 0.5em;
    font-size: 32px;
  }

  header .menu-innner-block h3 {
    margin-bottom: 0.8em;
  }

  header .menu-innner-block .flex.ml-cat + h3 {
    margin-top: 1em;
  }

  .category-card .tag-list {
    padding: 0;
  }

  .category-roll {
    max-width: 1200px;
    margin: 0 auto;
  }

  .single .category-roll {
    display: block;
    max-width: 1000px;
  }

  .category-roll li {
    margin-right: 0.5%;
    margin-top: 2em;
  }

  .scroll-category {
    padding: 0;
    display: flex;
    overflow-x: scroll;
    width: auto;
    white-space: nowrap;
  }

  .scroll-category::-webkit-scrollbar {  /* Chrome, Safari 対応 */
    display:none;
  }

  .gallery-cell a {
    font-size: 16px;
    font-weight: 700;
  }

  .gallery-cell {
    margin-right: 16px;
  }

  .tag-area {
    margin: 2px 0;
    display: flex;
    flex-wrap: wrap;
  }

  .tag-section .flex {
    display: block;
  }

  .tag-section .flex.tag {
    display: flex;
  }

  .tag-section .flex li {
    width: 400px;
  }

  .tag-section .flex li:nth-child(even) {
    margin-left: 0;
  }

  .tag-section .flex li a {
    font-size: 14px;
    text-align: left;
    padding-left: 1em;
  }

  #menu-index-menu {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
    height: auto;
  }

  .index-menu {
    padding: 0;
  }

  .index-menu li {
    width: 16%;
    margin: 0;
  }

  .index-menu li:hover {
    opacity: 0.5;
    background: #ff9f4f;
  }

  .index-menu li a {
    font-size: 14px;
    height: 80px;
    line-height: 60px;
    padding: 0;
    display: block;
  }

  .index-menu li a:hover {
    opacity: 0.7;
    background-color: #ffd0a9;
  }

  .index-menu li.ico-q a {
    background: url(img/ico-q.svg) no-repeat center 30%;
    background-size: 20px;
    padding-top: 30px;
  }
  
  .index-menu li.ico-book a {
    background: url(img/ico-book.svg) no-repeat center 30%;
    background-size: 20px;
    padding-top: 30px;
  }
  
  .index-menu li.ico-tweeter a {
    background: url(img/ico-tweeter.svg) no-repeat center 30%;
    background-size: 20px;
    padding-top: 30px;
  }
  
  .index-menu li.ico-trophy a {
    background: url(img/ico-trophy.svg) no-repeat center 30%;
    background-size: 20px;
    padding-top: 30px;
  }
  
  .index-menu li.ico-beam a {
    background: url(img/ico-beam.svg) no-repeat center 30%;
    background-size: 15px;
    padding-top: 30px;
  }
  
  .index-menu li.ico-cal a {
    background: url(img/ico-cal.svg) no-repeat center 30%;
    background-size: 20px;
    padding-top: 30px;
  }

  #pc-right .tag-section .flex li {
    width: 100%;
    margin-bottom: 3.4%;
  }

  #pc-right .tag-section .flex.tag li {
    width: auto;
    margin-right: 2%;
  }

  #pc-right .tag-section .flex li a {
    font-size: 14px;
    display: block;
    background: #ED6C00;
    text-align: left;
    color: #fff;
    line-height: 32px;
    border-radius: 4px;
    padding: 0 10px;
  }

  #pc-right .tag-section .flex li a:hover, .category-card .tag-list li a:hover, footer .tag-section .flex.tag li a:hover {
    opacity: 0.5;
    background: #ED6C00;
    color: #fff;
  }

  #pc-right .tag-section .flex.ml-cat li, footer .tag-section .flex.ml-cat li, header .hm_menu_wrap .tag-section .flex.ml-cat li {
    margin-bottom: 3.4%;
    height: 40px;
  }

  #pc-right .tag-section .flex.ml-cat li a, footer .tag-section .flex.ml-cat li a, header .hm_menu_wrap .tag-section .flex.ml-cat li a {
    line-height: 38px;
    padding-left: 30px;
    height: 40px
  }

  #pc-right .tag-section .flex.ml-cat li a:hover, footer .tag-section .flex.ml-cat li a:hover, header .hm_menu_wrap .tag-section .flex.ml-cat li a:hover {
    background: transparent;
    border: 2px solid #ED6C00;
    color: #ED6C00;
    font-weight: bold;
    opacity: 1;
    transition: none;
    line-height: 38px;
    height: 40px;
  }

  #pc-right .flex-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  #pc-right .flex-title span {
    position: relative;
    top: 6px;
    text-decoration: underline;
    font-size: 16px;
    font-weight: bold;
  }

  .category-card .tag-list li a {
    opacity: 1!important;
    font-size: 12px;
  }

  #pc-right .tag-section .flex.tag li a {
    border-radius: 50px;
    border: 1px solid #ED6C00;
    color: #ED6C00;
    background: transparent;
    text-align: center;
  }

  #pc-right .tag-section .flex.tag li a:hover {
    background: #ED6C00;
    color: #fff;
    opacity: 1;
  }

  #pc-right .side-news-list li {
    display: flex;
    border-top: 1px solid #eee;
    padding-bottom: 10px;
    align-items: center;
    position: relative;
    line-height: 1.3em;
  }

  #pc-right .side-news-list li:first-child {
    border-top: none;
  }

  #pc-right .side-news-list li {
    padding-bottom: 10px;
    padding-top: 10px;
  }

  #pc-right .side-news-list li:last-child {
    padding-bottom: 0;
  }

  #pc-right .side-news-list li .thumbnail{
    min-width: 110px;
    max-width: 110px;
    margin-right: 2%;
  }

  #pc-right .side-news-list li .thumbnail img {
    width: 100%;
    display: block;
    height: 64px;
    object-fit: cover;
    border-radius: 4px;
  }

  .sec-C, .single-page.page-block, .blog-page.page-block {
    margin-top: 2em;
    padding: 0 2% 0 0;
  }

  .archive .sec-C .card-box:nth-child(even) {
    margin-right: 0;
  }
  .archive .sec-C .card-box:nth-child(even) {
    margin-left: 0;
  }

  body.archive .sec-C .card-box {
    width: 32%;
    margin-right: 1%!important;
  }
  .archive .sec-C .card-box:nth-of-type(3n) {
    margin-right: 0!important;
  }



  .archive .flex-layout {
    flex-wrap: wrap;
  }

  .news-list .thumbnail {
    margin-bottom: 3.4%;
    width: 100%;
  }

  .news-list li {
    width: 31%;
    margin-right: 2%;
  }



  .news-list li:nth-child(n+3) .thumbnail img,  .related .news-list .thumbnail img {
    height: 100px;
  }

  .news-list .thumbnail img, .card-box .thumbnail img {
    width: 100%;
    display: block;
    height: 156px;
    object-fit: cover;
  }

  .archive .news-list .thumbnail img, .archive .card-box .thumbnail img {
    height: 100px;
  }

  .outer.page-mv h1 {
    font-size: 32px;
    margin-bottom: 0.5em;
  }

  .single #pc-layout .date {
    font: 24px;
  }

  .page .outer.page-mv h1 {
    font-size: 32px;
    text-align: center;
  }

  .page .the_content_main ul li {
    list-style-type: disc;
    padding-left: 0.5em;
  }

  .page .the_content_main ul {
    margin: 0 0 2em 1.5em;
  }

  .sp-section {
    padding: 0;
  }

  .the_content_main {
    margin-top: 3em;
    padding-bottom: 4em;
  }

  .page .the_content_main {
    margin-top: 0;
  }

  .the_content_main p {
    font-size: 16px;
  }

  .related .news-list.colm2 li {
    width: 32%!important;
    margin-right: 2%;
  }

  .related .news-list.colm2 li:nth-child(n+3):nth-child(even) {
    margin-right: 2%;
  }

  .related .news-list li:nth-child(-n+2):nth-child(n+2) {
    margin-right: 2%;
  }

  .box {
    margin-bottom: 3.2em;
  }

  .news-list {
    margin-bottom: 0;
  }

  .newicon {
    font-size: 16px;
    padding: 19px 10px;
    height: 54px;
  }

  .term-txm-event #pc-left .newicon, .category #pc-left .newicon, .tax-custom_taxonomy #pc-left .newicon {
    padding: 14px 10px;
  }


  .the_content_main h2 {
    font-size: 32px;
  }
  
  .the_content_main h3 {
    font-size: 24px;
    border-bottom: 1px solid #ED6C00;
    padding-bottom: 0.5em;
  }
  
  .the_content_main h4 {
    font-size: 20px;
  }

  .page .the_content_main h2 {
    font-size: 32px;
  }

  .newsarea .area-title {
    font-size: 32px;
  }

  .c-title {
    font-size: 32px;
  }

  .single .img .thumbnail {
    margin: 0;
  }

  .news-list h2, .news-list h2 .txt a, .archives-title {
    font-size: 24px;
    margin-bottom: 0.8em;
    font-weight: bold;
    line-height: 1.3em;
    letter-spacing: 0.8px;
  }

  .excerpt.pc-only {
    margin-top: 1em;
  }

  .excerpt p {
    font-size: 12px;
    letter-spacing: 0.8px;
  }

  .cat-tag a {
    font-size: 12px;
  }

  .news-list.colm2 li:nth-of-type(3n) {
    margin-right: 0!important;
  }

  .obi {
    background: #ED6C00;
    display: flex;
    justify-content: center;
    position: relative;
    padding: 2% 0;
  }

  .obi div {
    width: 350px;
    margin-right: 4%;
  }

  .obi .support-area {
    min-height: auto;
    height: 217px;
    margin: 0 4%;
  }

  .more-txt.pc-only {
    width: 240px;
    height: 48px;
    font-size: 14px;
    line-height: 48px;
    margin: 0 auto;
    display: block;
    border: 1px solid #ED6C00;
    color: #ED6C00;
    border-radius: 4px;
    text-align: center;
    position: relative;
  }

  .more-txt.pc-only span {
    left: -2px;
    position: relative;
  }

  .more-txt.pc-only::after {
    content: '';
    display: block;
    width: 10px;
    height: 12px;
    position: absolute;
    right: 60px;
    z-index: 2;
    background: url(img/arrow-orange.svg) no-repeat center center;
    background-size: contain;
    top: 19px;
    z-index: 2;
  }

  .more-txt.pc-only .btn-arrow {
    position: relative;
    top: 2px;
    left: 12px;
  }

  .more-txt.pc-only:hover {
    background: #ED6C00;
    color: #fff;
  }

  footer {
    background: #eee;
  }

  .footer-menu {
    max-width: 1200px;
    margin: 0 auto;
  }

  footer .menu-innner-block {
    padding: 3.5% 4% 2%;
    justify-content: space-between;
    height: 100%;
  }

  footer .tag-section, footer .tag-section .flex.tag, .menu + .tag-section {
    margin: 0;
  }

  footer .tag-section .flex.tag li {
    margin-bottom: 0.5em;
    margin-right: 2%;
  }

  footer .tag-section .flex li a {
    border-radius: 4px;
    text-align: left;
    font-size: 14px;
    letter-spacing: 1px!important;
  }

  footer .tag-section .flex.tag li a {
    font-size: 12px;
    padding: 0 10px;
  }


  footer h3 {
    margin-bottom: 1em;
    font-size: 24px;
  }

  footer .last-colm {
    width: 300px;
  }

  .tag-section .flex.tag li a {
    padding: 2px 4px;
    text-align: center;
  }

  .trim {
    width: 100%;
  }

  .title.flex {
    display: block;
  }

  .category-list, .tag-list {
    padding: 0;
  }

  .category-list {
    border-bottom: 1px solid #eee;
    height: 40px;
    line-height: 40px;
  }

  .category-roll .category-list li {
    border: none;
    margin-right: 2%;
  }

  .category-roll .tag-list li a {
    border-radius: 50px;
    border: 1px solid #ED6C00;
    color: #ED6C00;
    background: transparent;
    padding: 2px 10px;
    text-align: center;
    display: block;
  }

  .category-card {
    max-width: 1200px;
    margin: 0.5em auto;
    padding: 0 4%;
  }

  .support-area {
    min-height: 210px;
    margin-bottom: 1em;
    margin: 0 auto;    
  }

  #pc-right .register-area {
    padding: 10% 0;
  }

  .obi .support-area .register-area {
    padding-top: 10%;
  }

  .mainblock {
    padding: 0;
    margin: 0 auto;
  }

  #pc-right .sns .button-area, .hm_menu_wrap .sns .button-area {
    justify-content: space-evenly;
    width: 200px;
    margin: 0 auto;
  }

  .pc-flex {
    display: flex;
    justify-content: space-between;
    padding: 2% 0;
  }

  #pc-layout.flex-page {
    display: flex;
    margin: 1.5em auto;
    max-width: 1200px;
    justify-content: space-between;    
  }
  
  .pc-flex div {
    width: 33%;
  }

  .pc-flex div:nth-child(odd) {
    margin: 0 3%;
  }

  .page-id-7 .the_content_main h3 {
    border-bottom: 1px solid #ED6C00;
  }

  .page-id-7 .the_content_main h2 {
    text-align: center;
    margin-bottom: 2em;
  }

  .kai-box .border-bottom::after {
    content: '';
    border-bottom: none;
    margin: 0;
    padding: 0;
    visibility: hidden;
  }

  .float-left {
    float: left;
    position: relative;
    margin: 0 1em 1em 0;
  }

  .float-left img {
    width: 413px;
    height: 210px;
    object-fit: cover;
  }

  .float-right {
    float: right;
    position: relative;
    margin: 0 0 1em 1em;
  }

  .float-right img {
    width: 383px;
    height: 377px;
    object-fit: cover;    
  }

  .kai-box-inner.flex-2col {
    display: flex;
    justify-content: space-evenly;
    flex-wrap: wrap;
    max-width: 840px;
    margin: 0 auto;
  }

  .kai-box-inner.flex-2col div {
    width: 48%;
  }

  .kai-box-inner div:nth-of-type(3) p {
    border-bottom: none;
  }
  
  .kai-box-inner h3 {
    border-bottom: none!important;
    font-size: 16px;
  }

  /*resister-area*/
  .contact-header {
    background-position: center;
    height: 160px;
    margin-top: -26px;
  }
  .contact-header h1 {
    top: 56px;
    font-size: 32px;
  }
  .support-count {
    height: 65px;
  }
  .support-count p {
    line-height: 65px;
  }
  .register-block h2 {
    font-size: 32px;
    margin-bottom: 1em;
    margin-top: 1.5em;
  }
  .register-block p {
    font-size: 14px;
  }
  .arrow-white::after {
    content: '';
    display: block;
    width: 10px;
    height: 12px;
    position: absolute;
    right: 18px;
    z-index: 2;
    background: url(img/ico-arrow.svg) no-repeat center center;
    background-size: contain;
    top: 15px;
    z-index: 2;
  }
  section.thanks-header {
    height: 328px;
    background-size: cover;
    background-position: center;
  }
  section.thanks-header p {
    font-size: 24px;
    background: #fff;
  }
  .register-flex {
    display: flex;
  }
  
  .block-inner.w45 {
    width: 48%;
  }
  .block-inner.w45:first-child {
    margin-right: 4%;
  }
  .w980 {
    max-width: 980px;
    margin: 0 auto;
  }
  section.form {
    padding-bottom: 0;
    width: 560px;
  }
  .form .orange-border-title span {
    border-bottom: 2px solid #ED6C00;
    font-size: 32px;
  }
  .r-01-ico, .r-02-ico, .r-03-ico {
    background-position: left top;
  }
  .lh1-5em {
    line-height: 1.5em;
  }
  .black-border {
    padding-bottom: 5em;
  }
  .thanks-block p {
    padding: 0;
    font-size: 16px;
  }
  section.thanks .tw-btn {
    top: 0;
    margin: 2em auto;
  }
  section.thanks .tw-btn a {
    width: 390px;
    height: 80px;
    line-height: 80px;
  }
  section.card {
    padding-bottom: 16em;
  }
  .main-card {
    width: 600px;
    top: -38px;
  }
  section.card .tw-btn a span, section.thanks .tw-btn a span {
    position: relative;
    top: -3px;
    font-size: 24px;  
  }
  .thanks-count {
    display: inline-block;
  }
  section.thanks .tw-btn a img {
    position: relative;
    left: -13px;
  }
  section.thanks-header h1 {
    font-size: 32px;
  }
  /*まとめ*/
  .blog-page.page-block.max-width840 {
    margin-top: 0;
    padding: 0;
  }
  .matome-header {
    background-position: center;
    height: 300px;
    margin-top: -28px;
  }
  .matome-header h1 {
    top: 100px;
    font-size: 32px;
  }
  .obi-twitter {
    height: 65px;
    margin-bottom: 2em;
  }
  .bgtw {
    background: url(img/tw-white.svg) no-repeat 36%;
    color: #fff;
    font-size: 24px;
    line-height: 64px;
    background-size: 30px;
  }
  /*インフォグラフィック*/
  .wp-block-embed {
    width: 400px;
    margin: 0 auto!important;
  }

  .wp-block-embed + p {
    display: flex;
    width: 400px;
    justify-content: space-evenly;
    flex-wrap: wrap;
    margin: 0 auto;
  }

  .wp-block-embed + p a {
    border: 2px solid #55ACEE;
    color: #55ACEE;
    border-radius: 4px;
    width: 195px;
    height: 44px;
    line-height: 40px;
    text-align: center;
    position: relative;
    padding-left: 13px;
  }

  .wp-block-embed + p a:hover {
    opacity: 0.5;
  }

  .wp-block-embed + p a::after {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    left: 28px;
    z-index: 2;
    background: url(img/infort.svg) no-repeat center center;
    background-size: contain;
    top: 10px;
    z-index: 2;  
  }


  .wp-block-embed + p a:last-child {
    background: #55ACEE;
    color: #fff;
    border-radius: 4px;
    width: 195px;
    height: 44px;
    line-height: 38px;
    text-align: center;
    margin-left: 10px;
  }

  .wp-block-embed + p a:last-child::after {
    content: '';
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    left: 22px;
    z-index: 2;
    background: url(img/infoirt.svg) no-repeat center center;
    background-size: contain;
    top: 11px;
    z-index: 2;  
  }

  .wp-block-embed + p + p a {
    border-radius: 4px;
    width: 400px;
    height: 44px;
    line-height: 40px;
    margin: 1em auto;
    text-align: center;  
    background: #eee;
    color: #55ACEE;
  }

  .the_content_main p + h3 {
    margin-top: 3em;
  }
  /*TOC*/
  div#toc_container {
    padding: 4%;
    margin: 4em 0;
  }
  
  /*スライダー*/
  .slick-list.draggable {
    margin: 10px 0!important;
  }
  .gallery-cell.slick-slide {
    width: 240px!important;
  }

  /*左右の矢印の位置を変える*/
  .scroll .slick-next {
      right: 20px;
      z-index: 8;
      background: rgba(0,0,0,0.4);
      width: 64px;
      height: 64px;
      border-radius: 50px;
  }
  .scroll .slick-next:hover {
    background: rgba(0,0,0,0.1);
  }
  .scroll .slick-prev {
      left: 20px;
      z-index: 8;
      background: rgba(0,0,0,0.4);
      width: 64px;
      height: 64px;
      border-radius: 50px;
  }
  .scroll .slick-prev:hover {
    background: rgba(0,0,0,0.1);
  }
  .scroll .slick-prev::before, .scroll .slick-next::before {
    font-family: '';
  }

  .scroll .slick-prev::before {
    content: '';
    background: url(img/toparrow.svg) no-repeat;
    display: block;
    width: 24px;
    height: 24px;
    transform: scale(-1, 1);
    position: absolute;
    right: 27px;
    top: 20px;  
  }

  .scroll .slick-next::before {
    content: '';
    background: url(img/toparrow.svg) no-repeat;
    display: block;
    width: 24px;
    height: 24px;
    position: absolute;
    top: 20px;
    right: 12px;
  }
  /*守る会とはページ*/
  .page-header {
    height: 300px;
    margin-top: -26px;
    background-repeat: repeat;
    background-size: contain;
    background-position: center;
  }
  .page-header h1 {
    font-size: 32px;
    top: 126px;
  }
  .kai-box.bg-feddc3 {
    margin: 2em 0;
    padding: 6em 2% 2%;
    position: relative;
  }
  
  .kai-box.bg-feddc3::before {
    content: '';
    background: #FEDDC3;
    width: 100%;
    height: 100%;
    position: absolute;
    right: -100%;
    top: 0;
    display: block;
    visibility: visible;
  }
  .kai-box.bg-feddc3::after {
    content: '';
    background: #FEDDC3;
    width: 100%;
    height: 100%;
    position: absolute;
    left: -100%;
    top: 0;
    display: block;
    visibility: visible;
  }
  
  .kai-box.sengen {
    max-width: 840px;
    margin: 0 auto;
  }
  .bg-img1 {
    height: 500px;
    top: -125px;
  }
  .bg-img2 {
    height: 500px;
    top: -144px;
  }
  .kai-box.sengen h2 {
    margin-bottom: 2em;
    text-align: center;
    font-size: 32px;
  }
  .page-id-7 .page-nav ul {
    margin-bottom: 4em!important;
  }
  .page-nav ul li a {
    font-size: 20px;
  }

  .snsFixed {
    position: fixed;
    left: 20px;
    top: 70%;
    transition: all 0.5s;
    z-index: 98;
    width: 45px;
  }
  
  .snsFixed .button-area {
    display: block;
  }
  
  .snsFixed .button-whole {
    margin-bottom: 0.5em;
  }
  #b-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0,0,0,0.8);
    z-index: 80;
  }
  #b-modal.open {
    display: block;
  }
  p iframe {
    width: 100%;
    height: 400px;
  }
}

/******************************1024px**/

@media screen and (min-width: 1080px) {
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 165px;
  }
  .news-list li:nth-child(n+3) .thumbnail img,  .related .news-list .thumbnail img {
    height: 100px;
  }
  .archive .news-list .thumbnail img, .archive .card-box .thumbnail img {
    height: 100px;
  }
  .fixed-share {
    display: none;
  }
  .marquee p a:link, .marquee p a:hover, .marquee p a:visited, .marquee p a:focus, .marquee p a:target, .marquee p a:hover, .marquee p strong, .marquee p span {
    font-size: 18px!important;
  }
}


@media screen and (min-width: 1194px) {
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 195px;
  }
  .news-list li:nth-child(n+3) .thumbnail img,  .related .news-list .thumbnail img {
    height: 124px;
  }
  .archive .news-list .thumbnail img, .archive .card-box .thumbnail img {
    height: 124px;
  }
}

@media screen and (min-width: 1200px) {
  .category-card {
    padding: 0!important;
  }
  #pc-layout {
    padding: 0!important;
  }
  footer .menu-innner-block {
    padding: 3.5% 0 2%!important;
  }
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 224px!important;
  }
  .news-list li:nth-child(n+3) .thumbnail img,  .related .news-list .thumbnail img {
    height: 144px!important;
  }
  .archive .news-list .thumbnail img, .archive .card-box .thumbnail img {
    height: 144px!important;
  }
  .page-id-103 .max-width1280.flex-layout {
    padding: 0!important;
  }
}






@media screen and (min-width: 1480px) {
  .fixed-share {
    display: none;
  }
  #pc-layout {
    max-width: 1200px!important;
  }
  .category-roll {
    max-width: 1200px!important;
  }
  footer .ft-left {
    width: 330px;
  }
  footer .last-colm {
    width: 300px;
  }
  .snsFixed {
    position: fixed;
    left: 100px;
    top: 70%;
    transition: all 0.5s;
    z-index: 98;
    width: 45px;
  }
}

@media screen and (min-width: 1680px) {
  .snsFixed {
    position: fixed;
    left: unset!important;
    right: 1600px!important;    
    top: 70%;
    transition: all 0.5s;
    z-index: 98;
    width: 45px;
  }
}

@media screen and (max-width: 1280px) {
  header .logo-area {
    min-width: 830px;
  }
  .sns.logo-side {
    top: -19px;
    left: 0px;
  }
  .search-form {
    left: 10px;
  }
  header .logo-area .register {
    right: -100px;
  }
  header .logo-area .sns .tw, header .logo-area .sns .fb, header .logo-area .sns .youtube {
    background-size: 32px;
  }
  header .hm_menu_wrap .sns .button-whole {
    margin-right: 0;
  }
  .thanks-block {
    max-width: 480px;
  }
  .single .related .news-list.colm2 .thumbnail img {
    height: 120px;
  }
}

@media screen and (max-width: 1022px) {
  header .logo-area {
    min-width: auto;
  }
  .hm_btn {
    top: 1vh;
  }
  .isFixed .siteh {
    top: 0;
  }
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 240px;
  }
  .news-list li:nth-child(n+3) .thumbnail img, .related .news-list .thumbnail img {
    height: 150px;
  }
  .single .related .news-list.colm2 .thumbnail img {
    height: 242px;
  }
}

@media screen and (max-width: 1000px) {
  header .logo-area {
    min-width: auto;
  }
  .hm_btn {
    top: 1vh;
  }
  .isFixed .siteh {
    top: 0;
  }
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 240px;
  }
  .news-list li:nth-child(n+3) .thumbnail img, .related .news-list .thumbnail img {
    height: 150px;
  }
  .single .related .news-list.colm2 .thumbnail img {
    height: 242px;
  }
}

/*iphone+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media screen and (max-width: 812px) {
  header .logo-area {
    min-width: auto;
  }
  .hm_btn {
    top: 1vh;
  }
  .isFixed .siteh {
    top: 0;
  }
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 200px;
  }
  .news-list li:nth-child(n+3) .thumbnail img, .related .news-list .thumbnail img {
    height: 120px;
  }
  .single .related .news-list.colm2 .thumbnail img {
    height: 198px;
  }
  #menu-index-menu {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
    height: 85px;
    line-height: 30px;
    padding: 2% 0 0;
  }
}

@media screen and (max-width: 768px) {
  header .logo-area {
    min-width: auto;
  }
  .hm_btn {
    top: 8px;
  }
  .isFixed .siteh {
    top: 0;
  }
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 200px;
  }
  .news-list li:nth-child(n+3) .thumbnail img, .related .news-list .thumbnail img {
    height: 120px;
  }
  .single .related .news-list.colm2 .thumbnail img {
    height: 184px;
  }
  #menu-index-menu {
    padding: 2% 0 0;
  }
  .slick-list {
    height: 110px;
  }
  .slick-prev, .slick-next {
    top: 42%;
  }
}

@media screen and (max-width: 736px) {
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 178px;
  }
  .single .related .news-list.colm2 .thumbnail img {
    height: 180px;
  }
}

@media screen and (max-width: 668px) {
  header .logo-area {
    min-width: auto;
  }
  .hm_btn {
    top: 8px;
  }
  .isFixed .siteh {
    top: 0;
  }
  #menu-index-menu {
    padding: 2% 0 0;
  }
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 110px;
  }
  .news-list li:nth-child(n+3) .thumbnail img, .related .news-list .thumbnail img {
    height: 75px;
  }
  .single .related .news-list.colm2 .thumbnail img {
    height: 164px;
  }
}


@media screen and (max-width: 456px) {
  header .logo-area {
    min-width: auto;
  }
  .hm_btn {
    top: 8px;
  }
  .scroll {
    max-width: 100%;
  }
  .slick-track {
    width: 3620px!important;
  }
  .gallery-cell.slick-slide {
    max-width: 240px;
  }
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 110px;
  }
  .news-list li:nth-child(n+3) .thumbnail img, .related .news-list .thumbnail img {
    height: 75px;
  }
  .single .related .news-list.colm2 .thumbnail img {
    height: 105px;
  }
  .txt-area {
    height: 33px;
  }
}

@media screen and (max-width: 414px) {
  header .logo-area {
    min-width: auto;
  }
  .hm_btn {
    top: 8px;
  }
  .scroll {
    max-width: 100%;
  }
  .slick-track {
    width: 3620px!important;
  }
  .gallery-cell.slick-slide {
    max-width: 240px;
  }
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 100px;
  }
  .news-list li:nth-child(n+3) .thumbnail img, .related .news-list .thumbnail img {
    height: 64px;
  }
  .single .related .news-list.colm2 .thumbnail img {
    height: 105px;
  }
  .txt-area {
    height: 33px;
  }
}

@media screen and (max-width: 375px) {
  header .logo-area {
    min-width: auto;
  }
  .hm_btn {
    top: 8px;
  }
  .txt-area {
    height: 34px;
    width: 300px;
  }
  .news-list .thumbnail img, .card-box .thumbnail img {
    height: 90px;
  }
  .news-list li:nth-child(n+3) .thumbnail img, .related .news-list .thumbnail img {
    height: 58px;
  }
  .single .related .news-list.colm2 .thumbnail img {
    height: 92px;
  }
  #menu-index-menu {
    padding: 2% 0 0;
    line-height: 28px;
  }
  section.thanks-header {
    padding: 10% 4%;
  }
}

@media screen and (max-width: 320px) {
  header .logo-area {
    min-width: auto;
  }
  .hm_menu_wrap {
    top: -180%;
  }
  .hm_menu_wrap .tag-section .flex li a,footer .tag-section .flex li a {
    font-size: 8px;
  }
  .index-menu li {
    width: 48%;
    margin-bottom: 1em!important;
  }
  #menu-index-menu {
    height: 170px;
    padding: 6% 0 0;
    line-height: 36px;
  }
  .txt-area {
    height: 34px;
    width: 246px;
  }
  .btn-arrow {
    left: -3px;
  }
}

/*contactform7++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/

.single .wpcf7-form dl, .page .wpcf7-form dl {
  background: #fff;
  border-bottom: 1px solid #d8d8d8;
  padding: 10px 0 20px 0;
}

.single .wpcf7-form dt, .page .wpcf7-form dt {
  width: 50%;
  padding: 0;
}

.single .wpcf7-form dd, .page .wpcf7-form dd {
  margin-left: 50%;
  padding: 0;
}

.single .wpcf7-form dd input, .single .wpcf7-form dd textarea {
  padding: 1em;
  background: #f4f4f4;
  border: 1px solid #d8d8d8;
  box-shadow: none;
  width: 90%;
}

.page .wpcf7-form dd input, .page .wpcf7-form dd textarea {
  padding: 1em;
  background: #f4f4f4;
  border: 1px solid #d8d8d8;
  box-shadow: none;
  width: 90%;
}

.page .wpcf7-form dd textarea, .single .wpcf7-form dd textarea {
  line-height: 1.5em;
}

.wpcf7-form .button {
  cursor: pointer;
  border: none;
  line-height: auto;
  overflow: visible;
  width: 200px;
}

.wpcf7-form .button:hover {
  opacity: 0.9;
}

.wpcf7-form .button::before, .wpcf7-form .button::after, .wpcf7-form .button:hover::after {
  content: "";
  background: none;
  width: 0;
  height: 0;
}

.wpcf7-form input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  min-width: 240px;
  margin-right: 5px;
  padding: 16px 48px;
  border: solid 1px #329bd2;
  border-radius: 4px;
  background-color: #329bd2;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-decoration: none;
  transition: all .2s ease;
}

span.wpcf7-list-item {
  margin: 0!important;
  padding: 1em 0 0 0;
}

.error {
  color: #ff3300;
  font-size: 12px;
}

/*重複コンテンツ削除*/
.slug1, .box-20, .box-24 {
  display: none!important;
}

/*その他*/
.error404 .block-inner {
  height: 500px;
  padding: 0 4%;
}

.privacy-policy div#toc_container, .page-id-7 div#toc_container {
  display: none!important;
}

blockquote {
  margin-block-start: 0;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 0;
  position: relative;
  padding: 30px 15px 8px;
  font-style: italic;
  background: #efefef;
  color: #555;
}

blockquote:before, q:before {
  display: inline-block;
  position: absolute;
  top: 13px;
  left: 15px;
  content: "\f10d";
  font-family: Font Awesome\ 5 free;
  color: #cfcfcf;
  font-size: 28px;
  line-height: 1;
  font-weight: 900;
}

.is-type-video {
	position:relative;
	width: 100%;
	height: 100%;
}

.wp-block-image figcaption {
  font-size: 12px;
  margin-bottom: 1.5em;
  color: #777;
}

.category-list li:hover {
  border-bottom: 2px solid #ED6C00!important;
}

.category-list li a:hover {
  color: #ED6C00!important;
}

.tag-list a:hover {
  background: #ED6C00!important;
  color: #fff!important;
}

.bg-on a {
  background: #ED6C00!important;
  color: #fff!important;
}

.bg-off a {
  background: transparent!important;
  color: #ED6C00!important;
}

.uc-on {
  border-bottom: 2px solid #ED6C00!important;
  color: #ED6C00!important;
}

.uc-on a {
  color: #ED6C00!important;
}

.uc-off {
  border-bottom: none!important;
  color: #777!important;
}

.flex.ml-cat .uc-on a {
  background: transparent!important;
  color: #ED6C00!important;
  border: 2px solid #ED6C00!important;
  font-weight: bold;
}