@charset "UTF-8";
/* suikenkougyou-C Document */

/*********** 共通 ***********************/
/*----------- all ----------------*/
html {

	overflow-x: hidden;
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
}
* {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	line-height: 1.2;
}
/*.wrapper {
    margin-bottom: -200px;
}*/
/*.main,.footer {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}*/
section {	
    max-width: 100%;
	width: 100%;
}
.section_contain {	
    max-width: 1200px;
	width: 100%;
	margin: 0 auto 150px;
    padding: 0 20px;
}
/*----------- /all ----------------*/
/*----------- header ----------------*/

#loading{
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  z-index: 100000;
}
#animation{
  margin: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 100001;
}
#animation p img {
	width: 150px;
    height: auto;
}

header {
    position: sticky;
    top: 50%;
    right: 0;   
    transform: translateY(-50%);
    z-index: 10000;
}
.header {
    position: absolute;
    top: 50%;
    right: 0;
    box-sizing: border-box;
}
.header_btn_box {
    max-width: 100%;
	width: 100%;
	margin: auto;
}
.header_nav {
    position: relative;
}
.header_nav h2 {
    position: relative;    
    z-index: 10000;
    width: fit-content;
    margin: 0 auto 20px;
    color: #ffffff;
    text-shadow:0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56,0 0 3px #89bc56;
}
.header_nav ul {
    position: relative;    
    z-index: 9999;
    width: 200px;
    background: #89BC56;
    margin-top: -40px;
    padding: 40px 20px 20px;
    border-radius: 10px 0 0 10px;
}
.header_nav li {
    margin-bottom: 10px;
    font-weight: bold;
}
.header_nav li:last-of-type {
    margin-bottom: 0;
}
.header_nav li a {
	
	position: relative;
}
.header_nav li a::after {
	position: absolute;
	right: -24px;
	display: inline-block;
	content: '';
	width: 20px;
	height: 20px;
	background: url("../images/yellowbird.png") no-repeat;
	background-size: contain;
	opacity: 0;
	transition: opacity 0.2s ease-in-out;
}
.header_nav li a:hover::after {
	opacity: 1;
}
.header_nav li a {
    color: #000;
}
.nav_keyakikun {
    position: absolute;
    z-index: 9999;
    top: -56px;
    left: -26px;
    width: 100px;
    transform: rotateZ(336deg);
}
.fuwafuwa {
  animation: fuwafuwa 3s ease-in-out infinite alternate;
  display: inline-block;
  transition: 1.5s ease-in-out;
}
 
@keyframes fuwafuwa {
  0% {
    transform:translate(0, 0) rotate(-7deg);
  }
  50% {
    transform:translate(0, -7px) rotate(0deg);
  }
  100% {
    transform:translate(0, 0) rotate(7deg);
  }
}
 
/*----------- /header ----------------*/
/*---------- hum_menu ----------*/
.header_btn_check,
.header_btn_screen {
	display: none;
}
/*----------- /hum_menu ----------*/
/*----------- main ----------------*/
/*.to_top {
	position: fixed;
	right: 0px;
	bottom: 20px;
	z-index: 100;
}
.to_top a {
	display: block;
	height: 100px;
	width: 100px;
	background-image: url("../images/to_top.png");
	background-size: contain;
	background-repeat: no-repeat;	
}*/

.main_visual {
    position: relative;
    z-index: 1;
}
.main_visual_img {
    position: relative;
    z-index: 1;
}

.ncr2025 {
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 2;
  display: block;
  max-width: 450px; /* 画像サイズは任意で調整 */
	width: 30%;
  animation: swing 10s ease-in-out infinite;
  transform-origin: center center; /* 中心を軸に回転 */

}

@keyframes swing {
  0% {
    transform: rotate(0deg);
  }
  25% {
    transform: rotate(7deg);
  }
  50% {
    transform: rotate(0deg);
  }
  75% {
    transform: rotate(-7deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
.top_nav,.kasou_nav {
    max-width: 100%;
    width: 100%;
    height: 83px;
    background: #1AA327;
}
.top_nav:after {
    display: block;
    content: '';
    max-width: 100%;
    width: 100%;
    height: 10px;
    border-bottom: 3px dashed #fff;
    margin-top: -78px;
}
.top_nav nav,
.kasou_nav nav {
    display: flex;
    justify-content: center;
	align-items: center;
    max-width: 1200px;
    width: 100%;
    height: 83px;
	margin: -14px auto 0;
	padding: 14px 2em 0;
}
.top_nav *,
.kasou_nav * {
	color: #fff;
}
/*.top_nav {
    max-width: 100%;
	width: 100%;
	margin: auto;
    text-align: center;
}*/
.top_nav li,
.kasou_nav li {
	display: inline;
    padding: 0 1em;
    font-weight: bold;
}
.top_nav li:hover,
.kasou_nav li:hover {
	opacity: 0.8;
}
.link_btn {
	display: block;
	text-align: center;
}
.link_btn a {
	display: inline-block;
	width: max-content;
	margin: 1em auto 0;
    background: #009B00;
    text-align: center;
    color: #fff;
    font-weight: bold;
    padding: 0.5em 1em;
    border-radius: 20px;
    text-decoration: none;
}
/*----------- /header ----------------*/
/*----------- .topics ----------------*/
.topics .section_contain {
	margin: 100px auto;
}
.topics .section_contain h2 {
	width: 100%;
	margin-bottom: 32px;
    color: #41A49F;
    text-align: center;
    font-size: 32px;
}
.topics ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.topics ul li {
	width: 23%;
	border: 3px solid #1AA327;
	border-radius: 20px;
	margin-right: 20px;
	padding: 20px;
}
.topics ul li a p {
	color: #000;
}
.topics ul li a:hover {
	opacity: 0.8;
}
.topics ul li:last-of-type {
	margin-right: 0;
}
.topics ul li p.topics_img {
	width: 100%;
	height: 150px;
}
.topics ul li p.topics_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.topics ul li p.topics_ttl {
	margin: 4px 0;
	font-weight: bold;
	font-size: 14px;
}
.topics .top_news_more {
    margin-top:20px;
}


.topics .top_news_more a {
    display: block;
    width: max-content;
    text-align: center;
    color: rgb(255, 255, 255);
    font-weight: bold;
    margin: 1em 0px;
    background: rgb(0, 155, 0);
    padding: 0.5em 1em;
    border-radius: 20px;
    text-decoration: none;
}
/*----------- /.topics ----------------*/
/*----------- .profile ----------------*/
.profile {
    background: #FFF18D;
}
.profile .section_contain {
    background-image: url("../images/profile_cloud_pc.png");
    width: 100%;
    height: 750px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
	margin-bottom: 0;
}

.profile_line_keyakikun_sp {
    display: none;
}
.profile .profile_txt {
    width: 60%;
    padding-left: 100px;
}
.profile .profile_txt * {
    margin-bottom: 1em;
}
.profile .profile_txt a {
    color: #000;
    text-decoration: none!important;
    font-weight: bold;
}
.profile .profile_line {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 30%;
}
.profile .profile_line p {
    margin-bottom: 1em;
}
.profile .profile_line p.profile_line_keyakikun img {
    width: 200px;
}
.profile .profile_line p.profile_insta_link a {
	/*color: #000;
	font-weight: bold;
	text-decoration: underline;*/
	display: inline-block;
    background: #FF0069;
    text-align: center;
    color: #fff;
	font-size: 12px;
    font-weight: bold;
    padding: 0.8em 1em;
    border-radius: 20px;
    text-decoration: none;
}
.profile .profile_line p.profile_x_link a {
	/*color: #000;
	font-weight: bold;
	text-decoration: underline;*/
	display: inline-block;
    background: #000;
    text-align: center;
    color: #fff;
	font-size: 12px;
    font-weight: bold;
    padding: 0.8em 1em;
    border-radius: 20px;
    text-decoration: none;
}
.profile .profile_line p.profile_line_qr a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    color: #000;
}
.profile .profile_line p.profile_line_qr img {
    width: 70px;
}
/*----------- /.profile ----------------*/
/*----------- .senkyo ----------------*/
.senkyo {
    background: #FFF18D;
	/*margin-bottom: 100px;*/
	padding: 0 20px 100px;
}
.senkyo .section_contain {
    background: #fff;
	margin-bottom: 0;
	padding: 50px;
	border-radius: 20px;
	justify-content: space-between;
}
.senkyo .section_contain h2 {
	/*text-align: center;*/
	margin-bottom: 20px;
}

.senkyo .section_contain .senkyo_itemR h2 {
	margin-top: 20px;
}
.senkyo .section_contain .senkyo_itemL {
	width: 40%;
	justify-content: space-between;
}
.senkyo .section_contain .senkyo_itemR {
	width: 58%;
	justify-content: flex-start;
}
.senkyo .section_contain .senkyo_itemL li:first-of-type {
	width: 100%;
	height: auto;
	margin-bottom: 20px;
}
.senkyo .section_contain .senkyo_itemL li:nth-of-type(2) {
	width: 62.5%;
	height: auto;
	margin-right: 2%;
}
.senkyo .section_contain .senkyo_itemL li:nth-of-type(3) {
	width: 35.5%;
	height: auto;
}
.senkyo .section_contain .senkyo_itemR li {
	width: 23%;
	height: auto;
	margin-right: 2%;
	margin-bottom: 20px;
}
.senkyo .section_contain .senkyo_itemR li:nth-of-type(3) {
	width: 50%;
	height: auto;
	margin-right: 0;
}
.senkyo .section_contain .senkyo_itemL li img,
.senkyo .section_contain .senkyo_itemR li img {
	height: 100%;
	object-fit: cover;
}
.senkyo .section_contain .sp {
	display: none;
}
/*.senkyo .section_contain .float_like.goods_arigatoumemo .senkyo_txt {
	width: 58%;
}*/
/*----------- /.senkyo ----------------*/
/*----------- .links ----------------*/
.links {
    background: #FFF18D;
	margin-bottom: 100px;
	padding: 0 20px 100px;
}
.links .section_contain {
    background: #fff;
	margin-bottom: 0;
	padding: 50px;
	border-radius: 20px;
}
.links .section_contain ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.links .section_contain ul h2 {
	/*width: 100%;
    margin-bottom: 32px;
    color: #41A49F;
    text-align: center;
    font-size: 32px;*/
}
.links .section_contain li a {
	display: block;
	color: inherit;
	/*text-decoration: underline;*/
}
.links .section_contain li.links_txt_link {
	width: 32%;
}
.links .section_contain li.links_txt_link a {
	display: inline-block;
    background: #009B00;
    text-align: center;
    color: #fff;
    font-weight: bold;
	margin-bottom: 1em;
    padding: 0.5em 1em;
    border-radius: 20px;
    text-decoration: none;
	text-align: left;
}
.links .section_contain li.links_txt_link a:last-of-type {
	margin-bottom: 0;
}

.links .section_contain li.links_douga_link {
	width: 66%;
}
.links .links_douga_link {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.links .douga_contents {
	width: 49%;
	margin-bottom: 20px;
	border-radius: 20px;
}
.links .douga_contents:nth-last-child(-n+2) {
	margin-bottom: 0;
}
.links .douga_contents p strong {
	line-height: 1.8em;
	font-size: 14px;
}
.links .douga_link_img {
    position: relative;
    max-width: 400px;
    width: 100%;
}
.links .douga_link_img_img {
    border-radius: 20px;
}
.links .douga_link_img_img img{
    width: 100%;
    height: auto;
}
.links .douga_link_img_btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  width: 60px;  /* 幅を指定 */
  height: 45px;  /* 高さを指定 */
  background: #F00; /* 背景色を赤に指定 */
  border-radius: 10px; /* 角を丸くする */
  cursor: pointer;
}
.links .douga_link_img_btn::after {
  content: ''; /* 疑似要素に必須 */
  width: 0;    /* 幅を0に指定 */
  height: 0;   /* 高さを0に指定 */
  border-style: solid;  /* 線の種類を指定 */
  border-width: 10px 0 10px 20px;  /* 線の幅を指定して三角を作る */
  border-color: transparent transparent transparent #fff;  /* 左のみ線の色を指定 */
  position: absolute; /* 相対位置に指定 */
  top: 50%;  /* 上から50%の位置に配置 */
  left: 50%; /* 左から50%の位置に配置 */
  transform: translate(-50%,-50%); /* 要素の半分ぶんだけ左上方向に移動。 */
}
.hoverMask-parent{
  position: relative;  /*基準*/
  overflow: hidden;
}
.hoverMask{
  opacity: 0;  /*この切替で表示非表示（非表示状態）*/
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background: rgba(0,0,0,0.3);
  display: flex; /*白文字の中央揃え用*/
  justify-content: center; /*白文字の中央揃え用*/
  align-items: center; /*白文字の中央揃え用*/
  color: #fff; /*白文字*/
  text-align: center; /*白文字の中央揃え用*/
  transition:all 0.6s ease;  /*ふわっとアニメーション*/
}
.hoverMask:hover{
  opacity: 1;  /*この切替で表示非表示（表示状態）*/
}
/*----------- /.links ----------------*/
/*----------- story ----------------*/
section.story {
    height: 790px;
}
.story .section_contain {
    position: relative;
}
.story_waku {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: auto;
}
.flexslider {
    max-width: 800px;
    width: 100%;
    height: 45%;/*　画像高さ/画像幅*適用幅　*/
    transform: translate(18%, 57%);
}
.flexslider .slides img {
    width: 100%;
    object-fit: contain;
}
.custom-navigation {
    position: absolute;
    right: 4%;
    bottom: -260px;
    z-index: 4;
}
.custom-navigation .flex-prev,
.custom-navigation .flex-next {
    display: block;
}
.custom-navigation .flex-prev {
    margin-bottom: 20px;
}
.custom-navigation .flex-prev img,
.custom-navigation .flex-next img {
    width: 100px;
}
.flex-control-nav {
    display: none;
}

/*----------- /story ----------------*/
/*----------- .contents ----------------*/
.contents .section_contain {
    display: flex;
    flex-wrap: wrap;
    /*align-items: center;*/
}
.contents .section_contain .c_txt {
    width: 60%;
}
.contents .section_contain .c_txt p {
    line-height: 2.4em;
}
.contents .section_contain .c_txt a {
	text-decoration: underline;
}
.contents .section_contain .c_img {
    width: 40%;
}
.contents h2 {
    width: 100%;
    color: #41A49F;
    margin-bottom: 20px;
    font-size: 24px;
}
.contents .c_img {
    padding-left: 40px;
}
.contents .c_img {
    padding-left: 1em;
}
.contents .c_img .float_like {
    justify-content: space-between;
    margin-bottom: 10px;
}
.contents .c_img p img {
    width: 100%;
}
.contents .c_img p span {
	font-size: 14px;
}
.contents .c_img a {
	color: #000;
}
.contents.c1 {
    margin-top: 150px;
}
.contents.c1 h2 {
    padding-bottom: 20px;
    border-bottom: 2px solid #41A49F;
    text-align: center;
    font-size: 32px;
}
.contents.c1 .c_img {
    padding-right: 40px;
}
.contents.c4 .c4_link:hover {
    opacity: 0.8;
}
.contents.c4 .c4_link a {
    display: inline-block;
    background: #009B00;
    text-align: center;
    color: #fff;
    font-weight: bold;
    padding: 0.5em 1em;
    border-radius: 20px;
	text-decoration: none;
}

.contents.c6 .c6_sns_link {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-top: 20px;
	margin-bottom: 40px;
}
.contents.c6 .c6_sns_link .c6_sns_link_fb {
	display: inline-block;
	width: 50px;
	margin-right: 20px;
}
.contents.c6 .c6_sns_link .c6_sns_link_insta {
	display: inline-block;
	width: 50px;
	margin-right: 20px;
}
.contents.c6 .c6_sns_link .c6_sns_link_x {
	display: inline-block;
    background: #000;
    text-align: center;
    color: #fff;
	font-size: 12px;
    font-weight: bold;
    padding: 0.8em 1em;
    border-radius: 20px;
    text-decoration: none;
	line-height: 30px;
}
.contents.c6 .c_img {
    /*position: relative;*/
}
/*.contents.c6 .c_img p:first-of-type {
    width: 50%;
    margin-top: 50px;
}
.contents.c6 .c_img p:nth-of-type(2) {
    position: absolute;
    top: -50px;
    right: 0;
    width: 60%;
}*/

.contents.c6 .wallpaper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.contents.c6 .wallpaper .wallpaper_kongetsu {
	width: 25%;
}
.contents.c6 .wallpaper ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between; 
	align-content: flex-start;
	width: 70%;
}
.contents.c6 .wallpaper ul li {
	width: 50%;
	margin-bottom: 20px;
}
.contents.c6 .wallpaper ul li:nth-last-of-type(-n+2) {
	margin-bottom: 0;
}
.contents.c6 .wallpaper ul li.wallpaper_year {
	color: #FFA41E;
	font-weight: bold;
}
.contents.c6 .wallpaper ul li span{
	font-size: 14px;
}

.contents.c7 p {
    margin-bottom: 1em;
}
.contents.c8 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 2em;
}
.contents.c8 ul li {
    width: 31%;
}
.contents.c8 .section_contain .c_txt ul li p {
    line-height: 1.6em;
}
.contents.c8 ul li p:first-of-type {
    margin-bottom: 10px;
}
.contents.c8 ul li p:first-of-type img {
    height: 150px;
    object-fit: cover;
    object-position: center;
}
.contents.c8 ul li h3 {
    margin-bottom: 10px;
    font-size: 18px;
}
.contents.c8 ul li p:nth-of-type(2) {
    font-size: 14px;
}
.contents.c10 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.contents.c10 ul li {
    width: 31%;
	margin-bottom: 20px;
	line-height: 1.6em;
}
.contents.c10 ul li a {
	text-decoration: underline;
}
/*----------- /.contents ----------------*/
/*----------- .sousoku ----------------*/
.sousoku p {
    line-height: 2.4em;
}
.sousoku .section_contain h2 {
    width: 100%;
    color: #41A49F;
    margin-bottom: 20px;
    font-size: 24px;
}
/*----------- .sousoku ----------------*/
/*----------- .rekidai ----------------*/
.contents.c_rekidai .section_contain {
    display: block;
    margin-top: -100px;
}
.contents.c_rekidai .rekidai_hyou {
    max-width: 600px;
    width: 100%;
    /*margin: 0 auto;*/
}
.contents.c_rekidai .rekidai_hyou dt {
    width: 100%;
    padding: 1em 10px;
    background: #eee;
    font-weight: bold;
}
.contents.c_rekidai .rekidai_hyou dd ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.contents.c_rekidai .rekidai_hyou dd ul li {
    width: 40%;
    padding: 1em 10px;
    border-right: 1px solid #eee;
    border-bottom: 1px solid #eee;
}
.contents.c_rekidai .rekidai_hyou dd ul li:first-of-type {
    width: 20%;
    background: #eee;
    border-top: 1px solid #fff;
}
.contents.c_rekidai .rekidai_hyou dd ul:last-of-type li {
    border-bottom: 1px solid #fff;
}
.contents.c_rekidai .rekidai_hyou dl:last-of-type dd ul:last-of-type li {
    border-bottom: 1px solid #eee;
}
/*ベース*/
.toggle {
	display: none;
}
.Label {		/*タイトル*/
    max-width: 600px;
    width: 100%;
	padding: 1em;
	display: flex;
    justify-content: center;
    align-items: center;
	color: #fff;
	background: #41A49F;
}
.Label::after{		/*タイトル横の矢印*/
	content:"";
    display: block;
	width: 6px;
	height: 6px;
    margin-left: 16px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
/*	position: absolute;
	top:calc( 50% - 3px );
	right: 20px;*/
	transform: rotate(135deg);
}
.Label,
.rekidai_hyou {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.rekidai_hyou {		/*本文*/
	height: 0;
	overflow: hidden;
}
.toggle:checked + .Label + .rekidai_hyou {	/*開閉時*/
	height: auto;
    /*margin-top: 20px;*/
	transition: all .3s;
}
.toggle:checked + .Label::before {
	transform: rotate(-45deg) !important;
}
/*----------- /.rekidai ----------------*/
/*----------- .kameiten ----------------*/
.kameiten {
    padding: 0 20px;
}
.kameiten .section_contain {
    background: #FCEEF4;
	margin-bottom: 40px;
    padding: 0;
}
.frame-box-001,
.frame-box-002 {
    position: relative;
}
.frame-box-001::before,
.frame-box-001::after,
.frame-box-002::before,
.frame-box-002::after {
	content: '';
	width: 50px;
	height: 50px;
	position: absolute;
}
.frame-box-001::before {
	border-left: solid 1px #000000;
	border-top: solid 1px #000000;
	top: 0;
	left: 0;
}
.frame-box-001::after {
	border-right: solid 1px #000000;
	border-bottom: solid 1px #000000;
	bottom: 0;
	right: 0;
}
.frame-box-002::before {
	border-left: solid 1px #000000;
	border-top: solid 1px #000000;
	top: 8px;
	left: -8px;
}
.frame-box-002::after {
	border-right: solid 1px #000000;
	border-bottom: solid 1px #000000;
	bottom: 8px;
	right: -8px;
}
.kameiten .section_contain div {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 20px;
}
.kameiten .section_contain .kameiten_h2 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22.5%;
    background-image: url("../images/kameiten.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    font-size: 18px;
}
.kameiten .section_contain .kameiten_txt {
    width: 60%;
    line-height: 2.4;
}
.kameiten .section_contain .kameiten_img {
    display: flex;
    align-items: flex-end;
    width: 12.5%;
}

/*----------- /.kameiten ----------------*/

/*----------- footer ----------------*/
.footer_bg {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    width: 100vw;
    height: 0;
    padding-top: 31%;
    background-image: url("../images/footer_pc.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
}
.footer_contain * {
    color: #fff;
    text-align: center;
    font-weight: bold;
}
.footer_contain {
    padding: 50px 20px;
}
.footer_contain h2 span {
    display: block;
    font-size: 24px;
    margin: 16px auto 32px;
}
.footer_contain li {
    margin-bottom: 16px;
    text-align: left;
}
.footer_contain a {
    color: #fff;
}
/*----------- /footer ----------------*/
/*----------- タブレットサイズ --------------
-----------------------------------------*/
@media screen and (max-width:1200px) {
/*----------- header ----------------*/

    header {
        position: fixed;
        right: 0;
        top: 10px;
        transform: none;
        height: 60px;
    }
    .header_nav h2 {
        margin: 0 auto 20px;
        font-size: 20px;
    }
    .nav_keyakikun {
        /*position: static;*/
        z-index: 9999;
		top: -80px;
        left: -50px;
        width: 80px;
        margin-top: 40px;
    }
/*----------- /header ----------------*/
/*---------- hum_menu ----------*/
	.header_btn_menu {
		display: block;
		width: 40px;
		height: 30px;
		position: absolute;
		top: 50%;
		right: 16px;
        transform: translateY(-50%);
		/*background: #fff;*/
		/*border-radius: 5px;*/
		cursor: pointer;
	}
	.header_btn_menu::after {
		content: '';
		display: block;
		width: 40px;
		height: 40px;
		position: absolute;
		top: 50%;
		right: 0;
        transform: translateY(-50%);
		background: #fff;
		border-radius: 5px;
		z-index: 9999;
		cursor: pointer;
	}
	.header_btn_menu span{
		width: 30px;
		height: 3px;
		display: block;
		position: absolute;
		left: 5px;
		z-index: 10000;
		/*background-color: #fff;*/
		background: #89BC56;
		/*border-radius: 5px;*/
		transition: all 0.2s linear;
	}
	.header_btn_menu span:nth-of-type(1){
		top: 4px;
		transform: rotate(0);
	}
	.header_btn_menu span:nth-of-type(2){
		top: 14px;
		transform: rotate(1);
	}
	.header_btn_menu span:nth-of-type(3){
		bottom: 3px;
		transform: rotate(0);
	}
	#header_btn_open:checked+.header_btn_menu {
		/*position: fixed;*/
		z-index: 10000;
	}
	#header_btn_open:checked+.header_btn_menu span {
		/*background: #fff;*/
	}
	#header_btn_open:checked+.header_btn_menu span:nth-of-type(1){
		top: 13px;
		transform: rotate(-45deg);
	}
	#header_btn_open:checked+.header_btn_menu span:nth-of-type(2){
		transform: scale(0);
	}
	#header_btn_open:checked+.header_btn_menu span:nth-of-type(3){
		bottom: 14px;
		transform: rotate(45deg);
	}
	#header_nav {
        max-width: 250px;
		width: 100%;
		/*height: 100vh;*/
       /* margin-top: 60px;*/
        padding: 60px 40px 40px;
		/*background-color: rgba(255,255,255,1);*/
		/*overflow-x: scroll;*/
		position: fixed;
		top: 0;
		right: -100%;
		transition: right .2s,left .2s;
		z-index: 100;
        border: 12px solid #89BC56;
        border-right: none;
        border-radius: 10px 0 0 10px;
        background: #fff;
	}
    .header_nav ul {
        position: relative;    
        z-index: 9999;
        /*width: 200px;*/
        background: none;
        margin-top: 0;
        padding: 0;
      /*  padding: 40px;
        border-radius: 10px 0 0 10px;*/
    }
    .header_btn_screen {
        display: block;
        width: 100%;
		height: 100vh;
        /*margin-top: 60px;*/
        padding-top: 60px;
		position: fixed;
		top: 0;
		right: -100%;
		z-index: 99;
		background-color: rgba(0,0,0,0.1);
    }
	#header_btn_open:checked~ #header_nav,
	#header_btn_open:checked~ .header_btn_screen {
		right: 0;
	}
	.header_btn_screen:checked~ #header_nav,
    .header_btn_screen:checked {
		right: -100%; 
	}
/*----------- /hum_menu ----------*/
/*----------- .story ----------*/
    section.story {
        height: 650px;
    }
    .flexslider.pc {
        width: 70%;
        transform: translate(14%, 57%);
    }
/*----------- /story ----------*/
/*----------- footer ----------------*/
    .footer_bg {
        display: flex;
        justify-content: center;
        align-items: flex-end;
        width: 100%;
        height: 500px;
        background-image: url("../images/footer_pc.png");
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center bottom;
    }
	.footer_contain * {
		color: #fff;
		text-align: center;
		font-weight: bold;
	}
	.footer_contain {
		padding: 50px 20px;
	}
	.footer_contain h2 span {
		display: block;
		font-size: 24px;
		margin: 16px auto 32px;
	}
	.footer_contain li {
		margin-bottom: 16px;
		text-align: left;
	}
	.footer_contain a {
		color: #fff;
	}
/*----------- /footer ----------------*/
	.contents.c10 ul li {
		width: 47.5%;
	}
}/*1200px*/
@media screen and (max-width:896px) {
/*----------- /main ----------------*/
    .section_contain {
        margin: 0 auto 50px;
    }
    .top_nav,
	.kasou_nav {
        height: 80px;
    }
    .top_nav:after,
	.kasou_nav:after {
        margin-top: -80px;
    }
    .top_nav nav,
	.kasou_nav nav {
        height: 100%;
        margin: 0 auto 0;
        padding: 0 1em;
    }
    .top_nav ul,
	.kasou_nav ul {
        margin-top: 0;
		text-align: center;
    }
	.top_nav li,
	.kasou_nav li {
        display: inline-block;
        margin-top: 10px;
		padding: 0 10px;
	}
    .top_nav li:last-of-type {
        display: block;
        margin-top: 10px;
    }
    .kasou_nav li:last-of-type {
        margin-top: 10px;
    }
    .to_top {
        position: fixed;
        right: 0px;
        bottom: 10px;
        z-index: 100;
    }
    .to_top a {
        display: block;
        height: 70px;
        width: 70px;
        background-image: url("../images/to_top.png");
        background-size: contain;
        background-repeat: no-repeat;	
    }
/*----------- .topics ----------------*/
	.topics .section_contain {
		margin: 50px auto;
	}
	.topics .section_contain h2 {
		font-size: 22px;
	}
	.topics ul li {
		width: 100%;
		margin-right: 0;
		margin-bottom: 50px;
	}
	.topics ul li:last-of-type {
		margin-bottom: 0;
	}
	.topics ul li p.topics_img {
		height: auto;
	}
/*----------- /.topics ----------------*/
/*----------- .profile ----------------*/
    .profile {
        background: #FFF18D;
        padding: 50px 20px;
    }
    .profile .section_contain {
        background-image: url("../images/profile_cloud_sp.png");
        height: 1000px;
		flex-wrap: nowrap;
        flex-direction: column;
        margin: 0 auto;
    }
    .profile_line_keyakikun_pc {
        display: none;
    }
    .profile_line_keyakikun_sp {
        display: block;
    }
    .profile .profile_line_keyakikun_sp {
        margin-bottom: 1em;
    }
    .profile .profile_line_keyakikun_sp img {
        width: 200px;
    }
    .profile .profile_txt {
        max-width: 400px;
        width: 100%;
        margin: 0 auto;
        padding-left: 0;
    }
    .profile .profile_txt h1 {
        text-align: center;
        line-height: 1em;
    }
    .profile .profile_line {
        display: flex;
		flex-wrap: wrap;
        justify-content: center;
        flex-direction: row;
        width: 100%;
    }
    .profile .profile_line p.profile_insta_link,
    .profile .profile_line p.profile_x_link {
		width: 100%;
		text-align: center;
    }
    .profile .profile_line p.profile_line_qr a {
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        align-items: center;
        margin-right: 50px;
        text-decoration: none!important;
    }
    .profile .profile_line p:last-of-type a {
        margin-right: 0;
    }
    .profile .profile_line p.profile_line_qr img {
        width: 70px;
    }
    .profile .profile_line p.profile_line_qr span {
        margin-top: 6px;
        font-size: 14px;
        color: #000;
    }
/*----------- /.profile ----------------*/
/*----------- .senkyo ----------------*/
/*.senkyo {
    background: #FFF18D;
	margin-bottom: 100px;
	padding: 0 20px 100px;
}
.senkyo .section_contain {
    background: #fff;
	margin-bottom: 0;
	padding: 50px;
	border-radius: 20px;
}*/
/*.senkyo .section_contain .float_like {
	justify-content: space-between;
}*/
/*	.senkyo .section_contain .float_like .senkyo_img,
	.senkyo .section_contain .float_like.goods_arigatoumemo .senkyo_img {
		width: 100%;
		margin-bottom: 10px;
	}*/
	/*.senkyo .section_contain .float_like .senkyo_txt,
	.senkyo .section_contain .float_like.goods_arigatoumemo .senkyo_txt {
		width: 100%;
	}*/
	.senkyo .section_contain .senkyo_itemL,
	.senkyo .section_contain .senkyo_itemR {
		width: 100%;
	}
	.senkyo .section_contain .sp {
		display: flex;
	}
	.senkyo .section_contain .senkyo_itemR li,
	.senkyo .section_contain .senkyo_itemR .senkyo_itemL_img li {
		width: 49%;
	}
	.senkyo .section_contain .senkyo_itemR .senkyo_itemR_img li:nth-of-type(3) {
		width: 100%;
	}
	.senkyo .section_contain .senkyo_itemR .senkyo_itemL_img li:nth-of-type(2),
	.senkyo .section_contain .senkyo_itemR .senkyo_itemR_img li:nth-of-type(2),
	.senkyo .section_contain .senkyo_itemR .senkyo_itemR_img li:nth-of-type(5) {
		margin-right: 0;
	}
/*----------- /.senkyo ----------------*/
/*----------- /.links ----------------*/
	.links .douga_contents {
		width: 100%;
	}
	.links .section_contain li.links_txt_link {
		width: 100%;
		margin-bottom: 50px;
	}
	.links .section_contain li.links_douga_link {
		width: 100%;
	}
	/*.links .douga_contents {
		margin-bottom: 50px;
	}*/
	.links .douga_contents:nth-last-child(2) {
		/*margin-bottom: 50px;*/
		margin-bottom: 20px;
	}
	.links .douga_contents:last-of-type {
		margin-bottom: 0;
	}
	.links .section_contain li.links_douga_link li {
		width: 100%;
	}

	.links .douga_link_img {
		position: relative;
		max-width: 100%;
		width: 100%;
	}
/*----------- /.links ----------------*/
/*----------- story ----------------*/
    section.story {
        height: 900px;
        margin: 50px auto 150px;
    }
/*.story .section_contain {
    position: relative;
}*/
    .story_waku.pc,.flexslider.pc {
        display: none;
    }
    .story_waku.sp,.flexslider.sp {
        display: block;
    }
    .story_waku {
        position: absolute;
        top: 0;
        left: 50%;
        z-index: 2;
        width: auto;
        height: 900px;
        text-align: center;
        transform: translateX(-50%);
    }
    .story_waku img {
        width: auto;
        height: 900px;
        object-fit: contain;
    }
    .flexslider.sp {
        left: 50%;
        max-width: 380px;
        width: 100%;
        height: auto;
        transform: translate(-50%, 25%);
        border: none;
    }
    .flexslider .slides img {
        width: auto;
        height: 800px;
        margin: 0 auto;
        object-fit: contain;
    }
    .custom-navigation {
        display: flex;
        position: absolute;
        right: auto;
        left: 50%;
        bottom: -260px;
        transform: translateX(-50%);
        z-index: 4;
    }
    .custom-navigation .flex-prev,
    .custom-navigation .flex-next {
        display: inline-block;
        text-align: center;
    }
    .custom-navigation .flex-prev {
        margin-bottom: 0;
        margin-right: 20px;
    }
    .custom-navigation .flex-prev img,
    .custom-navigation .flex-next img {
        width: 70px;
    }
/*----------- /story ----------------*/
/*----------- .contents ----------------*/
    .contents .section_contain .c_txt,
    .contents .section_contain .c_img {
        width: 100%;
    }    
    .contents .section_contain .c_txt p {
        line-height: 2em;
    }
    .contents h2 {
        font-size: 20px;
    }
    .contents .c_img {
        margin-top: 20px;
        padding-left: 0;
    }
    .contents.c1 {
        margin-top: 50px;
    }
    .contents.c1 h2 {
        font-size: 28px;
    }
    .contents.c1 .c_img {
        padding-right: 0;
        margin-bottom: 20px;
    }
    .contents.c4 .c4_link {
        margin-top: 20px;
    }
	.contents.c6 .c6_sns_link .c6_sns_link_insta {
		/*display: inline-block;
		width: 50px;*/
		margin-right: 0;
	}
	.contents.c6 .c6_sns_link .sp {
		width: 100%;
	}
	.contents.c6 .c6_sns_link .c6_sns_link_x {
		margin-top: 20px;
	}
    .contents.c6 .c_img {
        margin-top: 70px;
    }
	.contents.c6 .wallpaper .wallpaper_kongetsu,
	.contents.c6 .wallpaper ul {
		width: 100%;
	}
	.contents.c6 .wallpaper ul li {
		width: 100%;
		margin-bottom: 20px;
	}
	.contents.c6 .wallpaper ul li:nth-last-of-type(-n+2) {
		margin-bottom: 20px;
	}
	.contents.c6 .wallpaper ul li:last-of-type {
		margin-bottom: 0;
	}
    .c_rekidai {
        margin-top: 0;
    }
	.Label,
	.rekidai_hyou {
		margin: auto;
	}
/*----------- /.contents ----------------*/
/*----------- .sousoku ----------------*/
.sousoku .section_contain {
        margin: 0 auto 150px;
    }
/*----------- .sousoku ----------------*/
/*----------- .kameiten ----------------*/
    
    .kameiten .section_contain div {
        display: block;
    }
    .kameiten .section_contain .kameiten_h2 {
        width: 100%;
        height: 100px;
        margin-bottom: 20px;
        font-size: 20px;        
    }
    .kameiten .section_contain .kameiten_txt {
        width: 100%;
        margin-bottom: 20px;
        line-height: 2em;
    }
    .kameiten .section_contain .kameiten_img {
        width: 100%;
        justify-content: center;
    }
    .kameiten .section_contain .kameiten_img img {
        width: 150px;
    }

/*----------- /.kameiten ----------------*/
}/*896px*/
/************ スマホサイズ ***************
*********************************************/
@media screen and (max-width:600px) {
	.senkyo .section_contain {
		padding: 50px 20px;
	}
	.links .douga_link_img {
		max-width: 100%;
	}
    
	.links.contents .section_contain {
		justify-content: center;
		padding: 50px 20px;		
    }
	.links .section_contain ul h2 {
		text-align: center;
        font-size: 20px;
    }
	.links .section_contain li {
		width: 100%;
		/*margin-bottom: 50px;*/
	}
	.links .section_contain li:last-of-type {
		margin-bottom: 0;
	}
	.links .section_contain li a {
		font-size: 14px;
	}
/*----------- story ----------------*/
    section.story {
        height: 800px;
        margin: 50px auto 250px;
    }
    .story_waku {
        z-index: 2;
        width: 98%;
        height: auto;
    }
    .story_waku img {
        width: 100%;
        height: auto;
    }
    
    .flexslider.sp {
        left: 50%;
        max-width: 75%;
        width: 100%;
        height: auto;
        transform: translate(-52%, 25%);
        border: none;
    }
    .flexslider .slides img {
        max-width: 100%;
        width: 100%;
        height: auto;
    }
    .custom-navigation {
        bottom: -280px;
    }
    .contents.c1 h2 {
        font-size: 22px;
    }
	.contents.c10 ul li {
		width: 100%;
	}
/*----------- /story ----------------*/
}/*600px*/
    
@media screen and (max-width:550px) {    
/*----------- story ----------------*/
    section.story {
        height: 700px;
        margin: 50px auto 250px;
    }
    .custom-navigation {
        bottom: -280px;
    }
/*----------- /story ----------------*/
}/*550px*/
@media screen and (max-width:498px) {
	.header_logo img {
		width: 70%;
	}
	.header_btn_menu {
		/*width: 32px;
		height: 24px;*/
	}
	/*.header_btn_menu span:nth-of-type(1){
		top: 0px;
	}
	.header_btn_menu span:nth-of-type(2){
		top: 11px;
	}
	.header_btn_menu span:nth-of-type(3){
		bottom: 0;
	}*/
	/*#header_btn_open:checked + .header_btn_menu span:nth-of-type(1) {
		top: 11px;
	}
	#header_btn_open:checked + .header_btn_menu span:nth-of-type(3) {
		bottom: 11px;
	}*/
	.top_nav li,
	.kasou_nav {
		padding: 0 5px;
	}
    section.story {
        height: 650px;
        margin: 50px auto 250px;
    }
    .custom-navigation {
        bottom: -250px;
    }
	.topics ul li {
		margin-bottom: 20px;
	}
    .profile {
        padding: 0 6px;
    }
    .profile .section_contain {
        height: 1000px;
    }
    .profile_txt {
        font-size: 14px;
    }
    .profile .profile_line_keyakikun_sp {
        width: 100px;
    }
    .profile .profile_line_keyakikun_sp img {
        width: 100px;
    }
    .profile .profile_line {
        margin-top: 20px;
    }
	/*.profile .profile_line p.profile_insta_link {
		margin-bottom: 2em;
	}*/
    .profile .profile_line p.profile_line_qr a {
        align-items: flex-start;
        margin-right: 20px;
    }
    .profile .profile_line p.profile_line_qr:last-of-type a {
        margin-right: 0;
    }
    .profile .profile_line p.profile_line_qr img {
		margin: auto;
    }
    .profile .profile_line p.profile_line_qr span {
		margin: 5px auto 0;
		text-align: center;
        font-size: 12px;
    }
    .contents.c_rekidai .rekidai_hyou * {
        font-size: 14px;
    }
    .contents.c_rekidai h2 {
        text-align: left;
    }
    .contents.c_rekidai .rekidai_hyou dd ul li,
    .contents.c_rekidai .rekidai_hyou dd ul li:first-of-type {
        width: 25%;
    }
    .contents.c_rekidai .rekidai_hyou dd ul li:nth-of-type(2) {
        width: 50%;
    }
    .contents.c8 ul li {
        width: 100%;
        margin-bottom: 32px;
    }
}/*498px*/
@media screen and (max-width:450px) {    
/*----------- story ----------------*/
    section.story {
        height: 600px;
    }
/*----------- /story ----------------*/
}/*550px*/
@media screen and (max-width:400px) {    
/*----------- story ----------------*/
    section.story {
        height: 550px;
        margin-bottom: 200px;
    }
/*----------- /story ----------------*/
}/*400px*/

@media screen and (max-width:350px) {    
/*----------- story ----------------*/
    section.story {
        height: 450px;
    }
/*----------- /story ----------------*/
}/*400px*/

/*slider*/
@media screen and (max-width:1200px) {
    .top_slider .slick-next {
        right: 0;
    }
    .top_slider .slick-prev {
        left: 0;
    }
}/*slider_1200px*/
@media screen and (max-width:896px) {
    .top_slider .slick-slide.slide-img,
    .top_slider .slick-slide.slide-img img,
    .top_slider .slick-slide.slide-img:after {
        width: 600px;
        height: auto;
    }
}/*slider_896px*/
@media screen and (max-width:600px) {
    .top_slider .slick-slide.slide-img,
    .top_slider .slick-slide.slide-img img,
    .top_slider .slick-slide.slide-img:after {
        max-width: 498px;
        width: 100%;
    }
}/*slider_600px*/
@media screen and (max-width:498px) {
    .top_slider .slick-slide.slide-img,
    .top_slider .slick-slide.slide-img img,
    .top_slider .slick-slide.slide-img:after {
        max-width: 300px;
    }
}/*slider_498px*/

/*popup*/

/* pop up*/
.pop-up_open {
  cursor: pointer;
  /* マウスオーバーでクリックできる要素だと分かるように */
}
.pop-up {
  display: none;
  /* label でコントロールするので input は非表示 */
}
.pop-up_overlay {
  display: none;
  /* チェックが入るまでは非表示 */
}
.pop-up:checked ~ .pop-up_overlay {
  display: block;
  z-index: 9999;
  background-color: #00000070;
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
}
.pop-up_window {
  width: 70vw;
  height: auto;
  background: rgba(255, 255, 255, 0.92);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: 1px solid #999;
  padding: 40px;
}
.pop-up_img {
	width: 100%;
}
.pop-up_txt {
	width: 100%;
}
.pop-up_close {
  cursor: pointer;
  position: absolute;
  width: 40px;
  height: 40px;
  top: 10px;
  right: 10px;
  font-size: 30px;
  border-radius: 50%;
  background: #ccc;
}
.pop-up_close span {
  cursor: pointer;
  position: absolute;
  top: 42%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #333;
  font-weight: 100;
}
@media screen and (max-width:1200px) {
	
	.pop-up_window {
		width: 90vw;		
	}
}/*1200px*/
@media screen and (max-width:896px) {
	.pop-up_window {
		padding: 10px;
		}
/*    .pop-up_items {
        width:49%;
        margin-bottom: 20px;
    }
   
    .pop-up_items h3 {
    font-weight: bold;
    font-size: 1em;
}
    .pop-up_txt {
        padding: 20px 20px 0;
    }*/
/*    .pop-up_contain:last-child:before,
    .pop-up_contain:last-child:after {
        content: "";
        display: none;
    }*/
 
/* pop up*/
/*
    .pop-up:checked ~ .pop-up_overlay {
        display: block;
        z-index: 0;
        background-color: #00000000;
        position: static;
        width: inherit;
        height: auto;
    }
    .pop-up_window {
        width: 100%;
        height: auto;
        background: none;
        display: block;
        position:static;
        transform: translate(0%, 0%);
        border: none;
        padding: 0;
    }
    .pop-up_txt {
        max-width: 100%;
        width: 100%;
        padding: 0 20px 80px;
    }
    .pop-up_close:after {
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        content: "";
        top: -6px;
        left: 11px;
        width: 16px;
        height: 16px;
        border-top: 2px solid #333;
        border-right: 2px solid #333;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        }
    .pop-up_close {
        cursor:pointer;
        position: absolute;
        width: 40px;
        height: 40px;
        top: auto;
        bottom: 20px;
        left: 50%;
        transform: translate(-50%, 0%);
        font-size: 30px;
        border-radius: 50%;
        background: #fff;
    }
    .pop-up_close:after {
        top: 0;
        bottom: -10px;
        -webkit-transform: rotate(315deg);
        transform: rotate(315deg);
    }
    .pop-up:checked ~ .pop-up_overlay.store_b_b3_popup {
        display: block;
        z-index: 9999;
        background-color: #00000070;
        position: fixed;
        width: 100%;
        height: 100vh;
        top: 0;
        left: 0;
    }
    .pop-up_window.store_b_b3_popup {
        width: 70vw;
        height: auto;
        background: rgba(255,255,255,0.92);
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: fixed;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        border: 1px solid #999;
    }
    .pop-up_window.store_b_b3_popup .pop-up_img {
        display: block;
        width: 100%;
        margin: 20px;
    }
     .pop-up_window.store_b_b3_popup .pop-up_close span {
        display: block;
    }
     .pop-up_window.store_b_b3_popup .pop-up_close:after {
        display: none;
    }*/
}/*896*/

/*20260408*/
@keyframes bg-blink {
  0%, 100% { background-color: #fff;color:#FF4E2C;  }
  50% { background-color: #FF4E2C;color: #fff; }
}
.simekiri {
  animation: bg-blink 3s infinite;
    margin-left: 6px;
  padding: 2px 10px;
  display: inline-block;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
}

.contents.c1 .c1_link:hover {
    opacity: 0.8;
}
.contents.c1 .c1_link a {
	display: block;
	width: max-content;
	margin: 1em 0;
    background: #009B00;
    text-align: center;
    color: #fff;
    font-weight: bold;
    padding: 0.5em 1em;
    border-radius: 20px;
    text-decoration: none;
}

/*下層*/
/*----------- header ----------------*/
    #kasou_header { 
        position: fixed;
        /* top: 10px;
        right: 0; */
        z-index: 10000;
        transform: none;
    }
    .kasou_header.header {
        position: fixed;
        right: 0;
        top: 25px;
        transform: none;
        height: 60px;
    }
    .kasou_header .header_nav h2 {
        margin: 0 auto 20px;
        font-size: 20px;
    }
    .kasou_header .nav_keyakikun {
        /*position: static;*/
        z-index: 9999;
		top: -80px;
        left: -50px;
        width: 80px;
        margin-top: 40px;
    }
/*----------- /header ----------------*/
/*---------- hum_menu ----------*/
	.kasou_header .header_btn_menu {
		display: block;
		width: 40px;
		height: 30px;
		position: absolute;
		top: 0;
		right: 16px;
        /* transform: translateY(-50%); */
		/*background: #fff;*/
		/*border-radius: 5px;*/
		cursor: pointer;
	}
	.kasou_header .header_btn_menu::after {
		content: '';
		display: block;
		width: 40px;
		height: 40px;
		position: absolute;
		/* top: 16px; */
        top: -4px;
		right: 0;
        transform: none;
		background: #fff;
		border-radius: 5px;
		z-index: 9999;
		cursor: pointer;
	}
	.kasou_header .header_btn_menu span{
		width: 30px;
		height: 3px;
		display: block;
		position: absolute;
		left: 5px;
		z-index: 10000;
		/*background-color: #fff;*/
		background: #89BC56;
		/*border-radius: 5px;*/
		transition: all 0.2s linear;
	}
	.kasou_header .header_btn_menu span:nth-of-type(1){
		top: 4px;
		transform: rotate(0);
	}
	.kasou_header .header_btn_menu span:nth-of-type(2){
		top: 14px;
		transform: rotate(1);
	}
	.kasou_header .header_btn_menu span:nth-of-type(3){
		bottom: 3px;
		transform: rotate(0);
	}
	.kasou_header #header_btn_open:checked + .header_btn_menu {
		/*position: fixed;*/
		z-index: 10000;
	}
	.kasou_header #header_btn_open:checked + .header_btn_menu span {
		/*background: #fff;*/
	}
	.kasou_header #header_btn_open:checked + .header_btn_menu span:nth-of-type(1){
		top: 13px;
		transform: rotate(-45deg);
	}
	.kasou_header #header_btn_open:checked + .header_btn_menu span:nth-of-type(2){
		transform: scale(0);
	}
	.kasou_header #header_btn_open:checked + .header_btn_menu span:nth-of-type(3){
		bottom: 14px;
		transform: rotate(45deg);
	}
	.kasou_header #header_nav {
        max-width: 250px;
		width: 100%;
		/*height: 100vh;*/
       /* margin-top: 60px;*/
        padding: 60px 40px 40px;
		/*background-color: rgba(255,255,255,1);*/
		/*overflow-x: scroll;*/
		position: fixed;
		top: 0;
		right: -100%;
		transition: right .2s,left .2s;
		z-index: 100;
        border: 12px solid #89BC56;
        border-right: none;
        border-radius: 10px 0 0 10px;
        background: #fff;
	}
    .kasou_header .header_nav ul {
        position: relative;    
        z-index: 9999;
        /*width: 200px;*/
        background: none;
        margin-top: 0;
        padding: 0;
      /*  padding: 40px;
        border-radius: 10px 0 0 10px;*/
    }
    .kasou_header .header_btn_screen {
        display: block;
        width: 100%;
		height: 100vh;
        /*margin-top: 60px;*/
        padding-top: 60px;
		position: fixed;
		top: 0;
		right: -100%;
		z-index: 99;
		background-color: rgba(0,0,0,0.1);
    }
	.kasou_header #header_btn_open:checked~ #header_nav,
	.kasou_header #header_btn_open:checked~ .header_btn_screen {
		right: 0;
	}
	.kasou_header .header_btn_screen:checked~ #header_nav,
    .kasou_header .header_btn_screen:checked {
		right: -100%; 
	}
/*----------- /hum_menu ----------*/
.breadcrumbs {
    max-width: 1200px;
    width: 100%;
    margin: auto;
    padding: 1em 1em 0;
}
.breadcrumbs li {
    display: inline-block;
}
.breadcrumbs li::after {
    content: '＞';
    display: inline-block;
    padding-right: 5px;
    color: #666;
}
.breadcrumbs li:last-of-type::after {
    content: '';
    display: none;
}
.breadcrumbs li a {
    display: inline-block;
    color: #666;
}
.breadcrumbs .bc_no_link {
    pointer-events: none;
}
.kasoupage .section_contain h2 {
    width: 100%;
    margin-top: 100px;
    margin-bottom: 32px;
    color: #41A49F;
    text-align: center;
    font-size: 32px;
}

.kasoupage .contents {
    max-width: 1200px;
}
.kasoupage .contents.c1 {
    margin: 20px auto;
}
.kasoupage .contents.c1 picture {
    display: block;
    max-width: 800px;
    width: 100%;
    margin: 20px auto 40px;
    text-align: center;
    
}
.kasoupage .section_contain {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto 150px;
    padding: 0 20px;
}
.kasoupage .contents h3 {
    width: 100%;
    color: #41A49F;
    margin: 60px 0 20px;
    font-size: 24px;
}
.kasoupage .contents p {
    line-height: 2.4em;
}
.kasoupage .contents .mise {
    margin-top: 100px;
    line-height: 2.4em;
}
.kasoupage .contents .s_bern {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.kasoupage .contents .s_bern .s_bern_txt {
    width: 60%;
}
.kasoupage .contents .s_bern .s_bern_img {
    width: 40%;
    padding-left: 1em;
}
.kasoupage .contents .s_bern .s_bern_img p {
    margin-bottom: 2em;
    line-height: 1;
}
.kasoupage .contents .s_bern .s_bern_img p img {
    display: block;
    margin-bottom: 7px;
}
.kasoupage .contents .s_bern .s_bern_img span {
    padding-top: 10px;
    font-size: 12px;
    font-weight: bold;
}
.kasoupage .contents .s_bern .s_bern_link {
    display: block;
    width: fit-content;
    background: #009B00;
    text-align: center;
    color: #fff;
    font-weight: bold;
    margin: 2em 0;
    padding: 0.5em 1em;
    border-radius: 20px;
    text-decoration: none;
}
.kasoupage .contents .s_bern .s_bern_link a {
    color: #fff;
    text-decoration: none;
}
@media screen and (max-width: 896px) {
    .kasoupage .section_contain h2 {
        font-size: 18px;
    }
    .kasoupage .contents .s_bern .s_bern_txt {
        width: 100%;
    }
    .kasoupage .contents .s_bern .s_bern_img {
        width: 100%;
        padding-top: 1em;
        padding-left: 0;
    }
}/*896px*/
@media screen and (max-width: 600px) {
    .contents.c1 h3 {
        font-size: 20px;
    }
}/*896px*/


/*------------------------------------------------------------
	下層news
------------------------------------------------------------*/
.kasou_news.topics ul li {
    margin-bottom: 20px;
}
.kasou_news.topics ul li:nth-last-of-type(-n+4) {
    margin-bottom: 0;
}
.kasou_news.topics ul li:nth-of-type(-n+4) {
    margin-bottom: 20px;
}
.kasou_news.topics ul li:nth-of-type(4n) {
    margin-right: 0;
}
.kasou_news_section {
	padding: 12px 0 70px;
}
.kasou_news_section .content {
	margin: 0 auto;
	width: 956px;
}
.kasou_news_section h2 span {
	display: block;
	font-size: 4.6rem;
	line-height: 1.1;
}
.wp-pagenavi {
	margin: 0 auto;
	width: fit-content;
	position: relative;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.wp-pagenavi::before {
	width: 5px;
	height: 100%;
	position: absolute;
	right: -2px;
	top: 0;
	background: #fff;
	z-index: 1;
	pointer-events: none;
	content: "";
}
.wp-pagenavi a,
.wp-pagenavi span {
	padding: 0 13px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	font-size: 1.8rem;
	line-height: 1;
}
.wp-pagenavi a:hover {
	opacity: 0.7;
}
.wp-pagenavi a::before,
.wp-pagenavi span::before {
	position: absolute;
	right: 0;
	top: 3px;
	bottom: 0;
	border-right: 1px solid #000;
	content: "";
}
.wp-pagenavi span::after {
	position: absolute;
	left: 7px;
    right: 7px;
    bottom: -4px;
	border-bottom: 1px solid #000;
	content: "";
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .pages,
.wp-pagenavi .extend {
	display: none;
}
.breadcrumb {
	box-sizing: content-box;
}
@media all and (max-width: 896px) {
	.kasou_news_section {
		padding: 46px 0 70px;
	}
	.kasou_news_section .content {
		margin: 0 auto;
		padding: 0 20px;
		width: auto;
	}
	.kasou_news_section h2 {
		margin: 0 auto 20px;
		padding: 0 60px 4px;
		font-size: 1.6rem;
		background: url(../img/news/mark01.png) no-repeat left bottom / 56px,url(../img/news/mark02.png) no-repeat right center / 52px;
		}
	.kasou_news_section h2 span {
		font-size: 3.5rem;
	}
	.wp-pagenavi a,
	.wp-pagenavi span {
		padding: 0 10px;
		font-size: 1.7rem;
	}
}

/*------------------------------------------------------------
	news_detail
------------------------------------------------------------*/
/* レイアウト */
.single_news_section .detailBox {
    display: flex; 
    gap: 40px; 
    margin-top: 100px;
}
.single_news_section .lBox {
    flex: 0 0 70%;
    min-width: 0;
}
.single_news_section .lBox .photo {
    margin-bottom: 20px;
}
.single_news_section .post-link {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 40px auto 0;
    text-align: center;
}
.single_news_section .post-link a {
    padding-right: 1em;
	color: #666;
}
.single_news_section .link a:nth-last-of-type {
    padding-right: 0;
}
.single_news_section .rBox {
    flex: 0 0 calc(30% - 40px);
    min-width: 0;
}
.rBox_sticky {
    -webkit-position:sticky;
    position:sticky;
    top: 20px;
}
/* タイトルエリア */
.single_news_section .titleBox {
    margin-bottom: 20px;
    /* border-bottom: 2px solid #41a49f;
    padding-bottom: 12px; */
}
.single_news_section .rBox .title{
    font-size: 24px;
    font-weight: 700;
    color: #000000;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 8px;
    margin-top: 20px;
}
.single_news_section .rBox .title:first-of-type {
    margin-top: 0;
}
.single_news_section .titleBox .date {
    font-size: 13px;
    font-weight: 400;
    color: #666;
}
/* タグ */
.single_news_section .tagList { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.single_news_section .tagList a {
    font-size: 12px;
    padding: 2px 10px;
    border: 1px solid #009b00;
    color: #009b00;
    border-radius: 3px;
    text-decoration: none;
}
/* 関連記事 */
.single_news_section .relatedBox {
    margin-top: 30px;
    padding: 12px 0 0;
    border-top: 1px solid #666;
}
.single_news_section .relatedBox .lead {
    font-size: 16px;
    font-weight: 700;
    color: #41a49f;
    margin-bottom: 12px;
    border-left: 4px solid #41a49f;
    padding-left: 8px;
}
.single_news_section .slider {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    list-style: none;
}
.single_news_section .slider li a { display: block; text-decoration: none; color: #000; font-size: 12px; }
.single_news_section .slider li a .pho {
    aspect-ratio: 1 / 1;
    overflow: hidden;
    margin-bottom: 6px;
    border: 1px solid #ddd;
}
.single_news_section .slider li a .pho img { width: 100%; height: 100%; object-fit: cover; }
.single_news_section .slider li a .txt { line-height: 1.4; }
/* rBox 見出し */
.single_news_section .rBox .title {
    font-size: 16px;
    font-weight: 700;
    color: #41a49f;
    margin-bottom: 12px;
    padding-bottom: 4px;
    padding-left: 8px;
    border-left: 4px solid #41a49f;
}
/* .single_news_section .rBox .title:first-child { margin-top: 0; } */
/* rBox 新着 */
.single_news_section .imgList { list-style: none; }
.single_news_section .imgList li { margin-bottom: 10px; }
.single_news_section .imgList li a {
    display: flex;
    gap: 10px;
    text-decoration: none;
    color: #000;
    align-items: flex-start;
}
.single_news_section .imgList li a .pho {
    max-width: 80px;
    width: 100%;
    flex: none;
}
.single_news_section .imgList li a .pho img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block; }
.single_news_section .imgList li a .txt {
    flex: 1;
    font-size: 14px;
    line-height: 1.5;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
/* rBox カテゴリ */
.single_news_section .txtList {
    list-style: none;
    color: #666;
}
.single_news_section .txtList li a {
    color: #666;
    text-decoration: none;
    line-height: 1.8;
}

/* 404 */
.kasoupage.page404 .section_contain h2 {
    margin-top: 0;
    margin-left: 0;
}
.kasoupage.page404 .section_contain .lBox ul {
    margin-bottom: 20px;
}
.kasoupage.page404 .section_contain .lBox ul li a {
    padding-top: 20px;
    text-decoration: underline;
}

@media all and (max-width: 896px) {
     /* lBox・rBoxを縦並びに */
    .single_news_section .detailBox {
        flex-direction: column;
        gap: 40px;
        margin-top: 40px;
    }
    .single_news_section .lBox,
    .single_news_section .rBox {
        flex: 0 0 100%;
        width: 100%;
    }
    .rBox_sticky {
        -webkit-position: static;
        position: static;
        top: 20px;
    }
}/*896px*/