@charset "UTF-8";
/*!
 * Bootstrap Reboot v4.1.3 (https://getbootstrap.com/)
 * Copyright 2011-2018 The Bootstrap Authors
 * Copyright 2011-2018 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
 */
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;500;700&display=swap");
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

@-ms-viewport {
  width: device-width;
}
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

dfn {
  font-style: italic;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #0056b3;
  text-decoration: underline;
}

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
  outline: 0;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type=radio],
input[type=checkbox] {
  box-sizing: border-box;
  padding: 0;
}

input[type=date],
input[type=time],
input[type=datetime-local],
input[type=month] {
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}


.clearfix {
  *zoom: 1;
}
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.icon_arrow {
  margin: 0 0.5em;
  display: inline-block;
  border: 1px solid #3c3c3c;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  line-height: 1em;
  text-align: center;
}
.icon_arrow:after {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
  margin: 0.5em;
  font-weight: 900;
  line-height: 1em;
  display: block;
  width: 1em;
  height: 1em;
}

* {
  box-sizing: border-box;
}

body {
  font-family: "Hiragino Kaku Gothic ProN", meiryo, sans-serif;
  background-color: rgb(248, 248, 241);
}

:root, body {
  /* font-size: calc(62% + ((1vw - .48rem) * 1.389));*/
  /*ブラウザのデフォルトサイズは、100% = 1em = 1rem = 16px = 12pt*/
  color: #404040;
  /* font-size: 0.75rem; //16px × 0.75 = 12px*/
  /* font-size: 0.875rem; //14px*/
}

@media (min-width: 768px) {
  :root, body {
    font-size: 1rem; /*16px*/
  }
}
@media (min-width: 1024px) {
  :root, body {
    font-size: 1.0625rem; /*17px*/
  }
}
/* --------------------------------------------------*/
/* Base：<main>内基本パーツ。root/entry.html基準*/
/* --------------------------------------------------*/
main {
  margin: 0 0 7em 0;
}
@media (min-width: 768px) {
  main {
    margin: 0 0 8em 0;
  }
}
@media (min-width: 1024px) {
  main {
    margin: 0 0 10em 0;
  }
}
main section {
  margin: 0 0 5em 0;
}
main h1, main h2, main h3, main h4, main h5 {
  margin: 0 0 1.2em 0;
  font-family: "M PLUS Rounded 1c", sans-serif;
}
main h1 span, main h2 span, main h3 span, main h4 span, main h5 span {
  display: block;
  font-size: 0.8em;
  font-weight: normal;
}
main h1 {
  font-size: 1.25em;
}
main h2 {
  padding: 0 2em;
  text-align: center;
  color: #3A8430;
  font-size: 1.2em;
  position: relative;
}
main h2::before, main h2:after {
  content: "";
  display: block;
  width: 3.2em;
  height: 2em;
  margin: auto 0;
  background-image: url(../images/h2_bg.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
}
main h2::before {
  background-position: left center;
  top: 0;
  bottom: 0;
  left: -1.2em;
}
main h2:after {
  background-position: right center;
  transform: scale(-1, 1);
  top: 0;
  bottom: 0;
  right: -1.2em;
}
main h3 {
  margin: 0 0 0.5em 0;
  padding: 0 0 0.25em 0;
  background-image: url(../images/h3_bg.png);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100%;
  color: #2571AB;
  font-size: 1.1em;
}
@media (min-width: 1240px) {
  main h3 {
    padding: 0 0 1em 0;
  }
}
main h4 {
  color: #3A8430;
  font-size: 1em;
}
main h5 {
  color: #404040;
  font-size: 1em;
}
@media (min-width: 768px) {
  main h1 {
    font-size: 1.5em;
  }
  main h2 {
    font-size: 1.4em;
  }
  main h3 {
    font-size: 1.3em;
  }
  main h4 {
    font-size: 1.2em;
  }
  main h5 {
    font-size: 1em;
  }
}
main p {
  margin: 0 0 1em 0;
}
main a {
  color: #2571AB;
  cursor: pointer;
  /* &.entry-btn-default,&.entry-btn-attention{*/
  /* 	@include btn();*/
  /* }*/
  /* &.entry-btn-attention{*/
  /* 	@include btn($bg_color:transparent,$color:#E8611E,$border:3px solid #E8611E,$bg_color_h:#FA9A25,$color_h:$color_text,$border_h:3px solid #FA9A25);*/
  /* }*/
}
main a:link, main a:visited {
  color: #2571AB;
  text-decoration: underline;
}
main a:hover, main a:active {
  color: #2571AB;
  text-decoration: none;
}
main p, main address, main li, main dd, main th, main td, main span, main small {
  /* a{*/
  /* 	color: #C3470A;*/
  /* 	&:link,&:visited{*/
  /* 		color: #C3470A;*/
  /* 		text-decoration: underline;*/
  /* 	}*/
  /* 	&:hover,&:active{*/
  /* 		color: #C3470A;*/
  /* 		text-decoration: none;*/
  /* 	}*/
  /* }*/
}
main p .attention_text, main address .attention_text, main li .attention_text, main dd .attention_text, main th .attention_text, main td .attention_text, main span .attention_text, main small .attention_text {
  /* display: inline-block;*/
  /* padding: 0 0.25em;*/
  color: #CB0000;
  font-weight: bold;
  /* border-bottom: 2px solid #E60012;*/
  -webkit-text-decoration: underline wavy #C74A4A;
  text-decoration: underline wavy #C74A4A;
}
main p.bg_white, main address.bg_white, main li.bg_white, main dd.bg_white, main th.bg_white, main td.bg_white, main span.bg_white, main small.bg_white {
  padding: 1em;
  background-color: rgb(255, 255, 255);
}
main p.text_right, main address.text_right, main li.text_right, main dd.text_right, main th.text_right, main td.text_right, main span.text_right, main small.text_right {
  text-align: right;
}
main p.icon_info, main address.icon_info, main li.icon_info, main dd.icon_info, main th.icon_info, main td.icon_info, main span.icon_info, main small.icon_info {
  /* color: #C15200;*/
  font-size: 0.9em;
}
main p.icon_info::before, main address.icon_info::before, main li.icon_info::before, main dd.icon_info::before, main th.icon_info::before, main td.icon_info::before, main span.icon_info::before, main small.icon_info::before {
  /* display: inline-block;*/
  margin: 0 0.25em 0 0;
  content: "\f05a";
  font-family: "Font Awesome 5 Free";
  font-weight: 700;
  /* color: #DE5E00;*/
}
main p strong, main address strong, main li strong, main dd strong, main th strong, main td strong, main span strong, main small strong {
  padding: 0.1em 0.25em;
  background-color: #FFDF58;
}
main p em, main address em, main li em, main dd em, main th em, main td em, main span em, main small em {
  font-weight: bold;
  font-style: normal;
}
main s {
  color: #717273;
}
main .text-big {
  /* p,address,li,dd,th,td,span{*/
  font-size: 1.4em;
  font-weight: bold;
  /* }*/
}
main ul, main ol {
  margin: 0 0 1em 0.5em;
  padding: 0;
}
main ul li, main ol li {
  margin: 0 0 0 1em;
  padding: 0.25em 0;
  list-style-position: outside;
}
main ul li {
  margin: 0 0 0 1.7em;
  list-style: none;
  text-indent: -1.7em;
}
main ul li::before {
  content: "";
  display: inline-block;
  width: 1.4em;
  height: 1.4em;
  margin: 0 0.25em 0 0;
  background-image: url(../images/icon_list.png);
  background-size: 1.4em;
  background-repeat: no-repeat;
  background-position: center left;
}
main ul.icon_info li {
  font-weight: normal;
  /* color: #C15200;*/
  font-size: 0.9em;
}
main ul.icon_info li::before {
  background: none;
  display: inline;
  margin: 0 0.25em 0 0;
  content: "\f05a";
  font-family: "Font Awesome 5 Free";
  font-weight: 700;
  /* color: #DE5E00;*/
}
main ul.icon_disc li {
  margin: 0 0 0 0.8em;
  list-style-position: outside;
  list-style-type: disc;
  text-indent: 0;
}
main ul.icon_disc li::before {
  content: none;
}
main ul.no-icon li {
  margin: 0;
}
main ul.no-icon li::before {
  content: none;
}
main ol li {
  list-style: decimal;
}
main ol.icon_alpha li {
  margin: 0 0 0 1.7em;
  list-style: upper-alpha;
}
main dl dt, main dl dd {
  margin: 0 0 1em 0;
}
main table {
  min-height: 100px;
  margin: 0 0 1em 0;
  /* border-top: 1px solid #797979;*/
  /* border-left: 1px solid #797979;*/
}
main table tr {
  border-bottom: 1px dotted #909090;
  border-top: 1px dotted #909090;
  /* &:nth-of-type(even){*/
  /* 	td{*/
  /* 		background-color: rgba(248, 248, 248, 1);*/
  /* 	}*/
  /* }*/
}
main table th, main table td {
  padding: 1.4em 1em;
  white-space: nowrap;
}
@media (min-width: 768px) {
  main table td {
    white-space: normal;
  }
}
main table th {
  color: #2571AB;
}
main table.table02 {
  border-bottom: 1px solid #536777;
  border-right: 1px solid #536777;
}
main table.table02 tr {
  border: none;
}
main table.table02 th, main table.table02 td {
  padding: 0.8em 1em;
  border-top: 1px solid #536777;
  border-left: 1px solid #536777;
}
main table.table02 th {
  background-color: rgb(211, 225, 235);
  color: #404040;
}
main table.table02 td {
  background-color: rgb(255, 255, 255);
}
main img {
  margin: 0 auto 0.5em;
  width: 100%;
  height: auto;
  border-radius: 8px;
}
main figure img {
  /* display: block;*/
  /* width: 80%;*/
  margin: 0 auto 0.25em;
}
main figure figcaption {
  font-size: 0.8em;
  text-align: center;
}
main .wrapper {
  padding: 0 1.8em;
}
main .map iframe {
  width: 100%;
  height: 35em;
}

.tatechu {
  display: inline;
  margin: 0;
  padding: 0;
  -webkit-text-combine: horizontal;
  -ms-text-combine-horizontal: all;
  text-combine-upright: all;
}

.wrapper {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  /* padding: 4em 1.4em 0;*/
}
@media (min-width: 1024px) {
  .wrapper {
    width: 84%;
    margin: 0 8%;
  }
}
@media (min-width: 1366px) {
  .wrapper {
    width: 100%;
    margin: 0 auto;
  }
}

/* .sns-list{*/
/* 	display: flex;*/
/* 	-webkit-justify-content: center;*/
/* 	        justify-content: center;*/
/* 	margin: 0 0 2em;*/
/* 	border-top: none;*/
/* 	li{*/
/* 		margin: 0 0.25em;*/
/* 		border-bottom: none;*/
/* 		list-style: none;*/
/* 	}*/
/* }*/
.topicpath {
  /* width: 100%;*/
  /* border-bottom: 1px solid #D9D9D9;*/
  padding: 0 0 0 50px;
  background-color: rgba(0, 135, 30, 0.88);
}
.topicpath ol {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  margin: 0;
  padding: 0.25em 0;
}
.topicpath ol li {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 0.7em;
  color: #fff;
}
.topicpath ol li:after {
  content: "\f054";
  margin: 0.2em 0.4em 0.2em 0.2em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  line-height: 1.2em;
  font-size: 0.8em;
  vertical-align: middle;
}
.topicpath ol li a {
  display: inline-block;
  padding: 0.1em 0.25em;
  color: #fff;
}
.topicpath ol li a:link, .topicpath ol li a:visited {
  color: #fff;
}
.topicpath ol li a:hover, .topicpath ol li a:active {
  color: #fff;
}
.topicpath ol li:last-child {
  /* padding: 0.5em 0.4em;*/
}
.topicpath ol li:last-child:after {
  content: none;
  margin: 0.2em 0.4em 0.2em 0.2em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  line-height: 1.2em;
  font-size: 0.8em;
  vertical-align: middle;
}

.read_more {
  display: inline-block;
  margin: 0;
}
.read_more a {
  display: block;
  padding: 0.8em 2em;
  border-radius: 4em;
  color: #3A8430;
  line-height: 1.1em;
  text-align: center;
  cursor: pointer;
}
.read_more a:link, .read_more a:visited {
  border: 1px solid #27AE3F;
  color: #3A8430;
  text-decoration: none;
}
.read_more a:hover, .read_more a:active {
  border: 1px solid #27AE3F;
  background-color: rgb(39, 174, 63);
  color: #000;
  text-decoration: none;
}
.read_more a .fas {
  margin: 0 0.5em;
}

/* a{*/
/* 	&:link,&:visited{*/
/* 		.read_more{*/
/* 			text-decoration: none;*/
/* 		}*/
/* 	}*/
/* 	&:hover,&:active{*/
/* 		.read_more{*/
/* 			background-color: #E8611E;*/
/* 			color: #fff;*/
/* 		}*/
/* 	}*/
/* 	&.center_link{*/
/* 		display: block;*/
/* 		text-align: center;*/
/* 	}*/
/* }*/
.important_info {
  width: 100%;
  max-width: 960px;
  margin: 0 auto 4em auto;
  padding: 1.7em;
  border: 3px solid #E8550E;
  border-radius: 5px;
  /* p{*/
  /* 	margin: 0;*/
  /* }*/
  /* ul{*/
  /* 	margin: 0;*/
  /* 	li{*/
  /* 		margin: 0 0 1em 0;*/
  /* 		padding: 0 0 1em 0;*/
  /* 		border-bottom: 1px dotted #C1C1C1;*/
  /* 		text-indent: 0;*/
  /* 		&::before{*/
  /* 			@include icon_font($icon:none);*/
  /* 		}*/
  /* 		&:last-child{*/
  /* 			margin: 0;*/
  /* 			padding: 0;*/
  /* 			border-bottom: none;*/
  /* 		}*/
  /* 		a{*/
  /* 			color: #2F2F2F;*/
  /* 			&:link,&:visited,&:hover,&:active{*/
  /* 				text-decoration: none;*/
  /* 			}*/
  /* 		}*/
  /* 		.entry_info{*/
  /* 			padding: 0.8em 0;*/
  /* 		}*/
  /* 	}*/
  /* }*/
}
.important_info h2 {
  /* padding: 0.5em 1em;*/
  /* background-color: #C31932;*/
  /* border-top: none;*/
  /* text-align: center;*/
  color: #CB0000;
}
.important_info h2::before, .important_info h2:after {
  content: none;
}
.important_info h3 {
  border-left: none;
  margin: 0 0 0.25em 0;
  padding: 0;
  /* margin: 0 0 0.5em 0;*/
  background: none;
  color: #404040;
}
.important_info h3 .fas {
  margin: 0 0.25em 0 0;
  color: #CB0000;
}
.important_info a {
  color: #404040;
}
.important_info a:link, .important_info a:visited, .important_info a:hover, .important_info a:active {
  text-decoration: none;
  color: #404040;
}
.important_info .entry_info {
  padding: 0.8em 0;
}

.about_us {
  margin: 0 0 2em 0;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  font-weight: 400;
}
.about_us .name {
  margin: 0 0 0.5em 0;
  font-weight: 400;
  font-size: 0.8em;
}
.about_us .name span {
  display: block;
  font-weight: 500;
  font-size: 1.4em;
}
.about_us .address {
  margin: 0 0 0.5em 0;
}
.about_us .tel_no {
  display: block;
}
.about_us .tel_no a {
  display: inline-block;
  margin: 0 0.25em 0.25em;
  padding: 0.2em 1.25em;
  background-color: #fff;
  border: 1px solid #5AAB4E;
  -webkit-border-radius: 2em;
  border-radius: 2em;
  color: #3A8430;
  font-size: 1.4em;
  font-weight: 500;
}
.about_us .tel_no a:link, .about_us .tel_no a:visited {
  color: #3A8430;
  text-decoration: none;
}
.about_us .tel_no a:hover, .about_us .tel_no a:active {
  background-color: #5AAB4E;
  border: 1px solid #5AAB4E;
  color: #000;
  text-decoration: none;
}

.tel_box {
  margin: 0 0 1em 0;
  padding: 1em;
  border: 2px solid #5AAB4E;
  border-radius: 8px;
  text-align: center;
}
.tel_box p {
  font-size: 0.8em;
  margin: 0;
}
.tel_box .tel_no {
  font-size: 1.4em;
  font-weight: bold;
  color: #3A8430;
}
.tel_box .tel_no .fas {
  margin: 0 0.25em 0 0;
}
.tel_box .tel_no a {
  color: #3A8430;
  text-decoration: none;
}

.green_box {
  margin: 0 0 1em 0;
  padding: 1em;
  border: 2px solid #5AAB4E;
  border-radius: 8px;
  text-align: center;
}
.green_box .text-l {
  font-size: 1em;
  font-weight: bold;
  color: #3A8430;
}
.green_box .text-l span {
  font-size: 1.2em;
  margin: 0 0.5em 0;
}
.green_box .text-m {
  font-size: 1.1em;
  font-weight: bold;
}

/* メインタイトル（カテゴリ名とエントリータイトル表示*/
.entry_title_wrapper {
  margin: 0 0 4em 0;
  position: relative;
}
.entry_title_wrapper::before, .entry_title_wrapper:after {
  content: "";
  display: block;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
}
.entry_title_wrapper::before {
  width: 40%;
  max-width: 500px;
  height: 50px;
  top: -1px;
  left: 0;
  background-image: url(../images/visual-top.svg);
  background-position: top left;
}
.entry_title_wrapper:after {
  width: 70%;
  max-width: 610px;
  height: 120px;
  bottom: -2em;
  right: 0;
  background-image: url(../images/decoration-title-right.png);
  background-position: bottom right;
}

.entry_title {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 6em 0;
  background-image: url(../images/dummy_wide.jpg);
  background-size: cover;
  background-position: center;
}
.entry_title p, .entry_title h1 {
  margin: 0;
  padding: 0;
  text-align: center;
  color: #fff;
}
.entry_title .title_area {
  padding: 1em 2em;
  background-color: rgba(0, 135, 30, 0.88);
  border-radius: 10em;
}

/* 丸切り抜き画像にキャッチコピー*/
.contents_visual {
  margin: 0 0 2em 0;
  padding: 0;
  position: relative;
}
.contents_visual p {
  display: -ms-grid;
  display: grid;
  margin: 0;
  padding: 0.25em;
  position: absolute;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  line-height: 1.1em;
  font-size: 0.88em;
}
.contents_visual p:first-of-type {
  top: 0;
  right: 1em;
}
.contents_visual p:last-of-type {
  bottom: 0;
  left: 1em;
}
.contents_visual p span {
  margin: 0 0.1em;
  padding: 0.2em 0.1em;
  background-color: rgba(255, 255, 255, 0.95);
}
.contents_visual figure {
  padding: 2em;
}
.contents_visual figure img {
  border-radius: 50%;
  width: 100%;
  height: auto;
}

@media (min-width: 768px) {
  .contents_visual {
    margin: 0 4em 2em 4em;
  }
  .contents_visual p {
    font-size: 1.4em;
  }
  .contents_visual figure {
    padding: 2em 5em;
  }
}
@media (min-width: 1024px) {
  .contents_visual {
    margin: 0 7em 2em;
  }
}
/* div背景、カラム表示*/
.box_white {
  margin: 0 0 1em 0;
  padding: 1.8em;
  background-color: rgb(255, 255, 255);
  border-radius: 8px;
}

.box_column02, .box_column03, .box_column04, .box_column02_gap2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto;
  grid-template-rows: auto;
  grid-row-gap: 1em;
}

.box_column02 {
  -ms-grid-columns: 100%;
  grid-template-columns: 100%;
}
.box_column02 img {
  display: block;
  width: 80%;
  margin: 0 auto 0.5em;
}
.box_column02 figure img {
  margin: 0 auto 0.25em;
}

.box_column03 {
  -ms-grid-columns: 48% 48%;
  grid-template-columns: 48% 48%;
  grid-column-gap: 4%;
}

.box_column04 {
  -ms-grid-columns: 32% 32% 32%;
  grid-template-columns: 32% 32% 32%;
  grid-column-gap: 2%;
}

.box_column02_mb {
  -ms-grid-columns: 100%;
  grid-template-columns: 100%;
  grid-row-gap: 2em;
}
.box_column02_mb img {
  display: block;
  width: 80%;
  margin: 0 auto 0.5em;
}
.box_column02_mb figure img {
  margin: 0 auto 0.25em;
}

.pic_wide {
  padding: 0;
}

@media (min-width: 768px) {
  .box_column02 {
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    -ms-grid-columns: 48% 48%;
    grid-template-columns: 48% 48%;
    grid-column-gap: 4%;
    grid-row-gap: 1em;
  }
  .box_column02 img {
    width: 100%;
  }
  .box_column03 {
    -ms-grid-columns: 30% 30% 30%;
    grid-template-columns: 30% 30% 30%;
    grid-column-gap: 5%;
  }
  .box_column04 {
    -ms-grid-columns: 23% 23% 23% 23%;
    grid-template-columns: 23% 23% 23% 23%;
    grid-column-gap: 2%;
  }
  .pic_wide {
    padding: 0 4em;
  }
  .box_column02_gap2 {
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    -ms-grid-columns: 48% 48%;
    grid-template-columns: 48% 48%;
    grid-column-gap: 4%;
    grid-row-gap: 4em;
  }
  .box_column02_gap2 img {
    width: 100%;
  }
}
/* よくある質問*/
.qa dl {
  margin: 0 0 2em 0;
  padding: 0 1.8em;
  background-color: rgb(255, 255, 255);
  position: relative;
}
.qa dl dt {
  /* padding: 1.8em 1.2em 1.8em 0;*/
  /* cursor: pointer;*/
  /* font-family: 'M PLUS Rounded 1c', sans-serif;*/
  /* font-size: 1.25em;*/
  /* color: #2571AB;*/
  /* background-image: url(../images/icon-arrow-down.png);*/
  /* background-repeat: no-repeat;*/
  /* background-position: right center;*/
  /* background-size: 1em;*/
  /* &.on{*/
  /* 	background-image: url(../images/icon-arrow-up.png);*/
  /* }*/
  /* &::before{*/
  /* 	content: "";*/
  /* 	display: block;*/
  /* 	width: 2em;*/
  /* 	height: 2em;*/
  /* 	background-image: url(../images/icon-q.png);*/
  /* 	background-position: left top;*/
  /* 	background-repeat: no-repeat;*/
  /* 	background-size: contain;*/
  /* 	position: absolute;*/
  /* 	top: -0.5em;*/
  /* 	left: -0.8em;*/
  /* }*/
}
.qa dl dt button {
  display: block;
  width: 100%;
  padding: 1.8em 1.2em 1.8em 0;
  /* cursor: pointer;*/
  border: none;
  background-color: transparent;
  background-image: url(../images/icon-arrow-down.png);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 1em;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 1.25em;
  color: #2571AB;
  text-align: left;
}
.qa dl dt button.on {
  background-image: url(../images/icon-arrow-up.png);
}
.qa dl dt button::before {
  content: "";
  display: block;
  width: 2em;
  height: 2em;
  background-image: url(../images/icon-q.png);
  background-position: left top;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -0.5em;
  left: -0.8em;
}
.qa dl dd {
  margin: 0;
  padding: 1em 0 1.8em 0;
  border-top: 1px solid #3A8430;
  position: relative;
}
.qa dl dd::before {
  content: "";
  display: block;
  width: 4em;
  height: 1.8em;
  background-image: url(../images/icon-a.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: contain;
  position: absolute;
  top: -1em;
  left: 0;
}

/* お知らせブログ*/
.blog_title {
  margin: 0 0 2.8em 0;
  padding: 0;
  position: relative;
  z-index: 5;
  text-align: center;
}
.blog_title::before {
  content: none;
}
.blog_title:after {
  content: "";
  width: auto;
  height: 6em;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: -1;
  background-image: url(../images/title-info.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  color: #404040;
}
.blog_title a:link, .blog_title a:visited, .blog_title a:hover, .blog_title a:active {
  color: #404040;
  text-decoration: none;
}

/* お知らせブログタイトルラッパー*/
.info_title_wrapper {
  width: 100%;
  height: auto;
  margin: 0 0 4em 0;
  text-align: center;
}
.info_title_wrapper .topicpath {
  margin: 0 0 4em 0;
}
.info_title_wrapper .blog_title {
  /* margin: 0 0 3.4em;*/
}
.info_title_wrapper .blog_title_sub {
  /* display: inline;*/
  width: 100%;
  max-width: 1240px;
  height: auto;
  margin: 0 auto;
  /* text-align: center;*/
  color: #fff;
}
.info_title_wrapper .blog_title_sub::before, .info_title_wrapper .blog_title_sub:after {
  content: none;
}
.info_title_wrapper .blog_title_sub span {
  display: inline;
  padding: 0.5em 2em;
  background-color: rgb(43, 149, 60);
  border-radius: 3em;
  /* white-space: normal;*/
}

.info_box {
  margin: 0;
  padding: 0;
}
.info_box ul {
  margin: 0;
  padding: 0;
}
.info_box ul li {
  margin: 0 0 1em 0;
  padding: 0 0 1em 0;
  text-indent: 0;
  border-bottom: 1px dotted #C1C1C1;
}
.info_box ul li::before {
  content: none;
}
.info_box ul li a {
  /* display: block;*/
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  color: #404040;
  text-decoration: none;
}
.info_box ul li a .entry_info {
  flex-basis: 100%;
}
.info_box ul li a .title {
  margin: 0 0 0.5em 0;
  flex-basis: 100%;
  font-weight: bold;
}
.info_box ul li a .info_pic {
  flex-basis: 35%;
}
.info_box ul li a .info_text {
  flex-basis: 62%;
}
.info_box .info_pic img {
  margin: 0;
}
.info_box .info_text {
  /* .title{*/
  /* margin: 0 0 1em 0;*/
  /* }*/
}
.info_box .info_text time {
  display: block;
  font-style: 0.8em;
}
.info_box .pager {
  margin: 0 0 5em 0;
}
.info_box .pager_entry {
  margin: 0 0 1em 0;
  padding: 1em 0 0.5em;
  border-top: 1px dotted #707070;
  border-bottom: 1px dotted #707070;
}
.info_box .pager_entry li {
  margin: 0 0 0.5em;
  padding: 0;
  text-indent: 0;
  font-size: 0.8em;
  border-bottom: none;
}
.info_box .pager_entry li::before {
  content: none;
  margin: 0.2em 0.4em 0.2em 0.2em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  line-height: 1.2em;
  font-size: 0.8em;
  vertical-align: middle;
}
.info_box .pager_entry li a {
  display: block;
  margin: 0;
  padding: 0.8em;
  border: 1px solid #9F9F9F;
  text-align: center;
  color: #404040;
  border-radius: 2em;
}
.info_box .pager_entry li a:link, .info_box .pager_entry li a:visited {
  color: #404040;
  text-decoration: none;
}
.info_box .pager_entry li a:hover, .info_box .pager_entry li a:active {
  color: #404040;
  text-decoration: none;
  background-color: rgb(193, 193, 193);
}
.info_box .pager_entry + .read_more {
  display: block;
  /* margin: 0 auto;*/
  text-align: center;
}
.info_box .pager_entry + .read_more a {
  display: inline-block;
  font-size: 0.8em;
  /* margin: 0 auto;*/
}
@media (min-width: 1024px) {
  .info_box .pager_entry {
    padding: 1em 0;
    display: flex;
    justify-content: space-between;
  }
  .info_box .pager_entry li {
    margin: 0 0.5em;
    /* flex-basis: auto;*/
    /* &.serial-nav-index{*/
    /* 	display: block;*/
    /* }*/
  }
}
.info_box .pager_number {
  display: flex;
  justify-content: center;
  margin: 0 0 2em 0;
  padding: 0;
  text-align: center;
  align-items: center;
}
.info_box .pager_number li {
  margin: 0 0.2em;
  padding: 0;
  text-indent: 0;
  font-size: 0.8em;
  line-height: 1em;
  border-bottom: none;
}
.info_box .pager_number li::before {
  content: none;
  margin: 0.2em 0.4em 0.2em 0.2em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  line-height: 1.2em;
  font-size: 0.8em;
  vertical-align: middle;
}
.info_box .pager_number li span {
  display: block;
}
.info_box .pager_number li a {
  display: block;
  /* width: 3em;*/
  /* height: 3em;*/
  padding: 0.5em 0.7em;
  border-radius: 3em;
  color: #404040;
}
.info_box .pager_number li a:link, .info_box .pager_number li a:visited {
  border: 1px solid #5AAB4E;
  color: #404040;
  text-decoration: none;
}
.info_box .pager_number li a:hover, .info_box .pager_number li a:active {
  border: 1px solid #3A8430;
  background-color: #3A8430;
  color: #fff;
}
.info_box .pager_number li.cur {
  /* width: 3em;*/
  /* height: 3em;*/
  padding: 0.5em 0.7em;
  border-radius: 3em;
  border: 1px solid #3A8430;
  background-color: #3A8430;
  color: #fff;
}
.info_box .pager_number li.dotted_line {
  width: 3em;
  height: 3em;
  padding: 2em 1em 0 1em;
}

#top .info_box {
  padding: 5em 0 5em 0;
}

@media (min-width: 768px) {
  #top .info_box ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  #top .info_box ul li {
    flex-basis: 48%;
  }
}
/* 記事の日付やカテゴリ、タグ、ユーザーなど*/
.entry_info {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0;
  padding: 0.5em 0;
  /* border-top: 1px dotted #D8D8D8;*/
  /* border-bottom: 1px dotted #D8D8D8;*/
  /* background-color: rgba(255, 255, 255, 1); */
  font-size: 0.8em;
}

.category {
  margin: 0 0.25em;
  padding: 0.15em 0.5em;
  background-color: rgb(0, 114, 176);
  border-radius: 3px;
  font-size: 0.8em;
  color: #fff;
}
.category.important {
  background-color: rgb(254, 70, 0);
}
.category.category-27 {
  background-color: rgb(228, 208, 0);
  color: #404040;
}
.category.category-28 {
  background-color: rgb(92, 199, 102);
}
.category.category-29 {
  background-color: rgb(254, 70, 0);
}
.category.category-30 {
  background-color: rgb(0, 206, 236);
  color: #404040;
}

/* .user{*/
/* 	padding: 0.15em 0.25em;*/
/* 	font-size: 0.8em;*/
/* }*/
.tag_area {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  /* background-color: rgba(255, 255, 255, 1);*/
  font-size: 0.7em;
}
.tag_area .tag {
  display: inline-block;
  margin: 0 0 0.5em 0.5em;
  padding: 0 0.25em;
  background-color: rgb(224, 224, 224);
  border-radius: 3px;
  border-bottom: none;
}

.new {
  margin: 0 0.5em 0 0;
  padding: 0.2em;
  border: 1px solid #E8611E;
  border-radius: 3px;
  color: #C3470A;
  font-size: 0.7em;
}

.category_title {
  margin: 0 0 2em 0;
}
.category_title h1 {
  text-align: center;
}

.index_title {
  max-width: 1680px;
  min-height: 12em;
  padding: 2em 2em 6em;
  position: relative;
}
.index_title h1, .index_title p {
  margin: 0 0 0.5em 0;
  color: #FFF;
}
.index_title .icon01 {
  width: 10em;
  height: 10em;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  bottom: -3.5em;
  left: 0;
}
.index_title .icon02 {
  width: 7em;
  height: 7em;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  bottom: -3.5em;
  right: 2em;
}

@media (min-width: 768px) {
  .index_title {
    padding: 2em 4em 2em 12.5em;
  }
  .index_title .icon01 {
    width: 12em;
    height: 12em;
    bottom: -3em;
  }
}
@media (min-width: 1240px) {
  .index_title {
    margin: 0 0 0 8em;
    padding: 4em 8em 4em 9.5em;
  }
  .index_title .icon01 {
    width: 15em;
    height: 15em;
    left: -6em;
  }
}
@media (min-width: 1980px) {
  .index_title {
    margin: 0 auto;
  }
}
.category_list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0.8em 0;
  /* border-top: 1px dotted #D8D8D8;*/
  /* border-bottom: 1px dotted #D8D8D8;*/
  text-align: center;
}
.category_list li {
  margin: 0 0.25em 0.5em;
  padding: 0;
  text-indent: 0;
  font-size: 0.9em;
}
.category_list li::before {
  content: none;
  /* @include icon_font($icon:none);*/
}
.category_list li a {
  display: block;
  padding: 0.25em 0.5em;
  border-radius: 1em;
  border: 1px solid #5AAB4E;
  color: #3A8430;
}
.category_list li a:link, .category_list li a:visited {
  /* border: 1px solid #5AAB4E;*/
  /* color: #000;*/
  text-decoration: none;
}
.category_list li a:hover, .category_list li a:active {
  /* border: 1px solid rgba(250, 154, 37, 1);*/
  background-color: rgb(39, 174, 63);
  color: #000;
}
.category_list li.stay a {
  /* border: 1px solid rgba(250, 154, 37, 1);*/
  background-color: rgb(39, 174, 63);
  color: #000;
}

/* .category_list_child{*/
/* 	border-bottom: 1px dotted #D8D8D8;*/
/* 	p{*/
/* 		margin: 0 0 0.5em 0;*/
/* 		font-size: 0.85em;*/
/* 		text-align: center;*/
/* 	}*/
/* 	ul{*/
/* 		display: flex;*/
/* 		justify-content: center;*/
/* 		flex-wrap: wrap;*/
/* 		margin: 0;*/
/* 		padding: 0 0 1em 0;*/
/* 		text-align: center;*/
/* 		li{*/
/* 			margin: 0 0.25em 0.5em;*/
/* 			padding: 0;*/
/* 			text-indent: 0;*/
/* 			font-size: 0.8em;*/
/* 			&::before{*/
/* 				@include icon_font($icon:none);*/
/* 			}*/
/* 			a{*/
/* 				display: block;*/
/* 				padding: 0.25em 0.5em;*/
/* 				border-radius: 1em;*/
/* 				color: $color_text;*/
/* 				&:link,&:visited{*/
/* 					border: 1px dotted #B2B2B2;*/
/* 					color: $color_text;*/
/* 					text-decoration: none;*/
/* 				}*/
/* 				&:hover,&:active{*/
/* 					border: 1px dotted rgba(250, 154, 37, 1);*/
/* 					background-color: rgba(250, 154, 37, 1);*/
/* 				}*/
/* 			}*/
/* 			&.stay{*/
/* 				a{*/
/* 					border: 1px dotted rgba(250, 154, 37, 1);*/
/* 					background-color: rgba(250, 154, 37, 1);*/
/* 				}*/
/* 			}*/
/* 		}*/
/* 	}*/
/* }*/
.search-form .search-form-btn {
  padding: 0.2em 0.5em;
  border: 1px solid #A8A8A8;
  border-radius: 3px;
}
.search-form .search-form-btn:hover {
  background-color: #C1C1C1;
}

.summary_table, .contents_table {
  margin: 0 0 2em 0;
  padding: 2em 1em;
  background-color: rgb(255, 255, 255);
  position: relative;
}
.summary_table li, .contents_table li {
  margin: 0 0 0.5em 1.4em;
  padding: 0;
}
.summary_table li:last-child, .contents_table li:last-child {
  margin: 0 0 0 1.4em;
}
.summary_table li a, .contents_table li a {
  color: #404040;
}
.summary_table li a:link, .summary_table li a:visited, .contents_table li a:link, .contents_table li a:visited {
  color: #404040;
}
.summary_table li a:hover, .summary_table li a:active, .contents_table li a:hover, .contents_table li a:active {
  color: #404040;
}
.summary_table::before, .summary_table:after, .contents_table::before, .contents_table:after {
  content: "";
  display: block;
  position: absolute;
  width: 4em;
  height: 4em;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.summary_table::before, .contents_table::before {
  top: -1.6em;
  left: -1em;
}
.summary_table:after, .contents_table:after {
  right: -1em;
  bottom: -1.6em;
}

/*　お問合せフォーム*/
.contact_box .mail-step {
  display: flex;
  margin: 0 0 1em 0;
  padding: 0 1em;
  background-color: rgb(255, 255, 255);
  font-size: 0.75em;
}
.contact_box .mail-step li {
  margin: 0 1em 0 0;
  padding: 0.8em 0.5em 0.5em 0.5em;
  list-style-position: inside;
  color: #9F9F9F;
}
.contact_box .mail-step li.mail-step-item-current {
  border-bottom: 4px solid #404040;
  color: #404040;
}
.contact_box .contact-form li {
  margin: 0 0 0.8em 0;
  padding: 0;
  text-indent: 0;
  border-radius: 8px;
  overflow: hidden;
}
.contact_box .contact-form li::before {
  content: none;
}
.contact_box .contact-form li .contact-form-label {
  margin: 0;
  padding: 1em;
  background-color: rgb(39, 174, 63);
}
.contact_box .contact-form li .contact-form-label .label-required {
  margin: 0 0 0 0.5em;
  padding: 0.2em 0.4em;
  background-color: rgb(228, 208, 0);
  color: #404040;
  font-size: 0.8em;
}
.contact_box .contact-form li .contact-form-label .valid-mark {
  display: none;
  color: #fff;
}
.contact_box .contact-form li .contact-form-label .valid-mark.valid {
  display: inline;
}
.contact_box .contact-form li .contact-form-control {
  padding: 1em;
  background-color: rgb(255, 255, 255);
}
.contact_box .form-btn-box {
  display: flex;
  align-items: center;
  justify-content: center;
}
.contact_box .form-btn-box .btn-attention-block-large {
  margin: 0 0.5em;
  padding: 1em 2em;
  background-color: rgb(0, 135, 30);
  border: none;
  border-radius: 2em;
  color: #fff;
  text-align: center;
}
.contact_box .form-btn-box .btn-attention-block-large:hover {
  background-color: rgb(39, 174, 63);
  color: #404040;
}
.contact_box .form-btn-box .form-btn-send input[type=submit] {
  /* display: block;*/
  /* width: 80%;*/
  margin: 0 0.5em;
  padding: 1em 2em;
  background-color: rgb(0, 135, 30);
  border: none;
  border-radius: 2em;
  color: #fff;
  text-align: center;
}
.contact_box .form-btn-box .form-btn-send input[type=submit]:hover {
  background-color: rgb(39, 174, 63);
  color: #404040;
}
.contact_box .form-btn-box .form-btn-return input[type=submit] {
  margin: 0 0.5em;
  padding: 0.5em 1em;
  border: none;
  border-radius: 2em;
  color: #404040;
  text-align: center;
  background-color: rgb(193, 193, 193);
}
.contact_box .form-btn-box .form-btn-return input[type=submit]:hover {
  background-color: rgb(159, 159, 159);
  color: #000;
}

@media (min-width: 768px) {
  .contact_box .contact-form li {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
  }
  .contact_box .contact-form li .contact-form-label {
    flex-basis: 40%;
  }
  .contact_box .contact-form li .contact-form-control {
    flex-basis: 60%;
  }
}
/* 記事の概要*/
/* .summary_table{*/
/* 	li{*/
/* 		&::before{*/
/* 			@include icon_font($icon:'\f0a4',$font-weight:400);*/
/* 		}*/
/* 	}*/
/* 	&::before{*/
/* 		background-image: url("../images/icon_summary.png");*/
/* 	}*/
/* 	&:after{*/
/* 		background-image: url("../images/icon_girl.png");*/
/* 	}*/
/* }*/
/* 記事のもくじ*/
/* .contents_table{*/
/* 	li{*/
/* 		&::before{*/
/* 			@include icon_font($icon:'\f022',$font-weight:400);*/
/* 		}*/
/* 	}*/
/* 	&::before{*/
/* 		background-image: url("../images/icon_contents.png");*/
/* 	}*/
/* 	&:after{*/
/* 		background-image: url("../images/icon_notebook.png");*/
/* 	}*/
/* }*/
/* .acms-entry{*/
/* 	margin: 0 0 2em 0;*/
/* 	@extend .clearfix;*/
/* }*/
/* お客様の声*/
/* .comment_area{*/
/* 	display: flex;*/
/* 	justify-content: space-between;*/
/* 	margin: 0 0 2em 0;*/
/* 	.comment{*/
/* 		flex-basis: 60%;*/
/* 	    padding: 1em;*/
/* 	    background-color: rgba(255,255,255,1);*/
/* 	    border: 1px solid #D1D1D1;*/
/* 	    border-radius: 10px;*/
/* 	}*/
/* 	.picture{*/
/* 		flex-basis: 34%;*/
/* 	    img{*/
/* 	    	margin: 0 0 1em 0;*/
/* 		    border-radius: 50%;*/
/* 		    &:last-child{*/
/* 		    	margin: 0;*/
/* 		    }*/
/* 	    }*/
/* 	}*/
/* }*/
.entry_list_pic {
  margin: 0 0 2em 0;
  padding: 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 100%;
  grid-template-columns: 100%;
  grid-row-gap: 1em;
}
.entry_list_pic li {
  margin: 0;
  padding: 0;
  text-indent: 0;
  background-color: rgb(255, 255, 255);
  border-radius: 8px;
}
.entry_list_pic li::before {
  content: none;
}
.entry_list_pic li img {
  margin: 0 0 0.5em 0;
}
.entry_list_pic li p {
  margin: 0 0 0.5em 0;
}
.entry_list_pic li a {
  display: block;
  padding: 1.8em;
  color: #404040;
  transition: 0.2s;
}
.entry_list_pic li a:link, .entry_list_pic li a:visited {
  /* background-color: rgba(255,255,255,1);*/
  /* color: $color_text;*/
  text-decoration: none;
}
.entry_list_pic li a:hover, .entry_list_pic li a:active {
  /* background-color: rgba(255, 246, 228, 1);*/
  /* color: $color_text;*/
  text-decoration: none;
}
.entry_list_pic li .entry_list_pic_title {
  color: #2571AB;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 1.2em;
  font-weight: 700;
}
.entry_list_pic li .entry_list_read_more {
  display: block;
  margin: 0 0.25em 0.25em;
  padding: 0.5em 1.5em 0.5em 1em;
  border: 1px solid #5AAB4E;
  border-radius: 2em;
  position: relative;
  color: #3A8430;
  text-align: center;
  font-size: 0.8em;
}
.entry_list_pic li .entry_list_read_more:after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 700;
  display: block;
  width: 1.2em;
  height: 1.5em;
  margin: auto 0;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0.5em;
}
.entry_list_pic li:hover .entry_list_read_more {
  background-color: rgb(0, 135, 30);
  border: 1px solid #3A8430;
  color: #fff;
}

@media (min-width: 1024px) {
  .entry_list_pic {
    -ms-grid-columns: 48% 48%;
    grid-template-columns: 48% 48%;
    grid-column-gap: 4%;
    grid-row-gap: 1em;
  }
}
.entry-footer {
  /* snsボタン*/
}
.entry-footer .share-wrapper {
  padding: 1em;
  background-color: rgb(255, 255, 255);
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.entry-footer .share-wrapper .share-text {
  margin: 0;
  font-size: 0.8em;
}
.entry-footer .share-wrapper .share-list {
  display: flex;
  margin: 0;
}
.entry-footer .share-wrapper .share-list li {
  margin: 0;
  padding: 0;
  text-indent: 0;
}
.entry-footer .share-wrapper .share-list li::before {
  content: none;
}
.entry-footer .share-wrapper .share-list li a {
  padding: 0.5em 0.25em;
  text-decoration: none;
}
.entry-footer .share-wrapper .share-list li a:link, .entry-footer .share-wrapper .share-list li a:visited {
  text-decoration: none;
}

/* --------------------------------------------------*/
/* header:全ページ共通*/
/* --------------------------------------------------*/
body {
  position: relative;
}
body.nav_on {
  overflow: hidden;
}

#g_header {
  width: 100%;
  padding: 1em 1.2em;
  background-color: rgb(255, 255, 255);
  /* position: fixed;*/
  z-index: 1000;
  transition: 0.35s;
  /* top: 0;*/
}
#g_header .header_wrapper {
  max-width: 1240px;
  margin: 0 auto;
  /* position: relative;*/
}
#g_header .logo_area {
  margin: 0;
}
#g_header .logo_area p {
  margin: 0;
}
#g_header .logo_area img {
  width: 100%;
  height: auto;
}
#g_header .logo_area a:link, #g_header .logo_area a:visited, #g_header .logo_area a:hover, #g_header .logo_area a:active {
  color: #404040;
  text-decoration: none;
}
#g_header .logo_area h1, #g_header .logo_area p {
  margin: 0;
  display: flex;
  align-items: center;
  font-family: "M PLUS Rounded 1c", sans-serif;
  color: #404040;
  font-size: 1rem;
  font-weight: normal;
}
#g_header .logo_area h1:link, #g_header .logo_area h1:visited, #g_header .logo_area h1:hover, #g_header .logo_area h1:active, #g_header .logo_area p:link, #g_header .logo_area p:visited, #g_header .logo_area p:hover, #g_header .logo_area p:active {
  color: #404040;
}
#g_header .logo_area h1 .logo, #g_header .logo_area p .logo {
  flex-basis: 18%;
  max-width: 70px;
  margin: 0 0.25em 0 0;
}
#g_header .logo_area h1 .site_name_text, #g_header .logo_area p .site_name_text {
  flex-basis: 50%;
  font-size: 0.8em;
  line-height: 1.2em;
}
#g_header .logo_area h1 .site_name_text span, #g_header .logo_area p .site_name_text span {
  display: block;
  font-size: 1.2em;
  font-weight: 500;
}
#g_header #g_nav {
  display: none;
  width: 100vw;
  height: 100vh;
  margin: 0;
  padding: 1em;
  overflow: scroll;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  right: 0;
  background-color: rgb(248, 248, 242);
}
#g_header #g_nav .logo_area {
  margin: 0 0 1em 0;
  text-align: center;
}
#g_header #g_nav .logo_area .logo {
  display: block;
  width: 18%;
  margin: 0 auto 0.2em;
}
#g_header #g_nav .logo_area .site_name_text {
  display: block;
  margin: 0 auto;
  font-weight: 500;
}
#g_header #g_nav .logo_area .site_name_text span {
  display: block;
  font-weight: 700;
}
#g_header #g_nav .main_nav {
  margin: 0 0 1em 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
  font-family: "M PLUS Rounded 1c", sans-serif;
}
#g_header #g_nav .main_nav li {
  margin: 0 0 1em 0;
  padding: 1em;
  flex-basis: 100%;
  background-color: rgb(255, 255, 255);
  border-radius: 8px;
  color: #404040;
  text-align: center;
}
#g_header #g_nav .main_nav li a {
  display: block;
  color: #404040;
  font-weight: 400;
}
#g_header #g_nav .main_nav li a:after {
  content: "";
  display: block;
  width: 4em;
  height: 4em;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("../images/icon-entrance.png");
}
#g_header #g_nav .main_nav li ul {
  display: flex;
  flex-wrap: wrap;
}
#g_header #g_nav .main_nav li ul li {
  margin: 0 1.5em 0 0;
  padding: 0;
  flex-basis: auto;
  font-weight: 400;
}
#g_header #g_nav .main_nav li ul li a {
  padding: 0.5em 0 0.5em 1.2em;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 1em;
  background-image: url("../images/icon-star.png");
  font-weight: 500;
}
#g_header #g_nav .main_nav li ul li a:after {
  content: none;
}
#g_header #g_nav .main_nav li.about a:after {
  background-image: url("../images/icon-about.png");
}
#g_header #g_nav .main_nav li.support a:after {
  background-image: url("../images/icon-support.png");
}
#g_header #g_nav .main_nav li.support .cc-pre-about, #g_header #g_nav .main_nav li.support .cc-about {
  width: 100%;
  flex-basis: 100%;
}
#g_header #g_nav .main_nav li.support .cc-pre-about a, #g_header #g_nav .main_nav li.support .cc-about a {
  display: flex;
}
#g_header #g_nav .main_nav li.support .cc-pre-about a.cc-pre-about, #g_header #g_nav .main_nav li.support .cc-pre-about a.cc-about, #g_header #g_nav .main_nav li.support .cc-about a.cc-pre-about, #g_header #g_nav .main_nav li.support .cc-about a.cc-about {
  background: none;
  padding: 0;
  font-weight: 400;
  font-size: 0.8em;
  text-align: left;
  white-space: nowrap;
}
#g_header #g_nav .main_nav li.support .cc-pre-about a.cc-pre-about:after, #g_header #g_nav .main_nav li.support .cc-pre-about a.cc-about:after, #g_header #g_nav .main_nav li.support .cc-about a.cc-pre-about:after, #g_header #g_nav .main_nav li.support .cc-about a.cc-about:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin: auto 0;
  background-image: url("../images/border.png");
  background-repeat: repeat-x;
  background-position: center right;
}
#g_header #g_nav .main_nav li.info, #g_header #g_nav .main_nav li.info_02, #g_header #g_nav .main_nav li.qa, #g_header #g_nav .main_nav li.institution, #g_header #g_nav .main_nav li.contact, #g_header #g_nav .main_nav li.career {
  flex-basis: 48%;
  padding: 0 1em;
}
#g_header #g_nav .main_nav li.info a, #g_header #g_nav .main_nav li.info_02 a, #g_header #g_nav .main_nav li.qa a, #g_header #g_nav .main_nav li.institution a, #g_header #g_nav .main_nav li.contact a, #g_header #g_nav .main_nav li.career a {
  padding: 1em 0 1em 1.2em;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 1em;
  background-image: url("../images/icon-star.png");
  font-weight: 500;
  text-align: left;
}
#g_header #g_nav .main_nav li.info a:after, #g_header #g_nav .main_nav li.info_02 a:after, #g_header #g_nav .main_nav li.qa a:after, #g_header #g_nav .main_nav li.institution a:after, #g_header #g_nav .main_nav li.contact a:after, #g_header #g_nav .main_nav li.career a:after {
  content: none;
}
#g_header #sp_nav_btn {
  width: 4em;
  height: 4em;
  margin: auto;
  background: rgb(90, 171, 78);
  border: none;
  border-radius: 8px;
  position: absolute;
  top: 1em;
  /* bottom: 0;*/
  right: 1em;
  z-index: 2000;
}
#g_header #sp_nav_btn .line {
  display: block;
  width: 2.4em;
  height: 3px;
  margin: 0 auto;
  background-color: rgb(255, 255, 255);
  position: absolute;
  top: 1.4em;
  left: 0;
  right: 0;
}
#g_header #sp_nav_btn .line::before, #g_header #sp_nav_btn .line:after {
  content: "";
  display: block;
  width: 2.4em;
  height: 3px;
  margin: 0 auto;
  background-color: rgb(255, 255, 255);
  position: absolute;
  left: 0;
  right: 0;
  transition: 0.25s;
}
#g_header #sp_nav_btn .line::before {
  top: -0.7em;
}
#g_header #sp_nav_btn .line:after {
  top: 0.7em;
}
#g_header #sp_nav_btn .menu {
  display: block;
  margin: 0 auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0.2em;
  color: #FFF;
  text-align: center;
  font-size: 0.9em;
}
#g_header #sp_nav_btn.close {
  /* .menu{*/
  /* 	color: #FFF;*/
  /* }*/
}
#g_header #sp_nav_btn.close .line {
  height: 0;
  background-color: rgb(255, 255, 255);
}
#g_header #sp_nav_btn.close .line::before {
  width: 2.4em;
  background-color: rgb(255, 255, 255);
  top: 0;
  transform: rotate(-45deg);
  transition: 0.25s;
}
#g_header #sp_nav_btn.close .line:after {
  width: 2.4em;
  background-color: rgb(255, 255, 255);
  top: 0;
  transform: rotate(45deg);
  transition: 0.25s;
}

/* メディアクエリ:header:全ページ共通*/
@media screen and (min-width: 1240px) {
  #g_header {
    padding: 0.5em 1.2em;
  }
  #g_header .header_wrapper {
    display: flex;
    align-items: flex-end;
    align-items: center;
    justify-content: space-between;
  }
  #g_header .logo_area {
    flex-basis: 27%;
    /* a{*/
  }
  #g_header .logo_area h1 .logo, #g_header .logo_area p .logo {
    flex-basis: 20%;
  }
  #g_header .logo_area h1 .site_name_text, #g_header .logo_area p .site_name_text {
    flex-basis: 80%;
  }
  #g_header #g_nav {
    display: block;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    position: static;
    background-color: rgb(255, 255, 255);
    /* overflow: hidden;*/
    overflow: visible;
  }
  #g_header #g_nav .logo_area {
    display: none;
  }
  #g_header #g_nav .main_nav {
    margin: 0 8.4em 0 0;
    display: flex;
    align-items: center;
    font-size: 0.8em;
  }
  #g_header #g_nav .main_nav li {
    flex-basis: auto;
    padding: 0;
    margin: 0;
    /* &:hover{*/
    /* 	ul{*/
    /* 		display: block;*/
    /* 	}*/
    /* }*/
  }
  #g_header #g_nav .main_nav li a {
    margin: 0.2em 0;
    padding: 0 0.8em;
    position: relative;
  }
  #g_header #g_nav .main_nav li a:after {
    content: none;
  }
  #g_header #g_nav .main_nav li a::before {
    content: "";
    display: block;
    width: 4em;
    height: 4em;
    margin: 0 auto;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    background-image: url("../images/icon-entrance.png");
  }
  #g_header #g_nav .main_nav li ul {
    display: none;
  }
  #g_header #g_nav .main_nav li:hover a {
    color: #3A8430;
    text-decoration: none;
  }
  #g_header #g_nav .main_nav li:hover a:after {
    content: "";
    display: block;
    width: 0.5em;
    height: 0.5em;
    background-image: none;
    position: absolute;
    bottom: -0.5em;
    left: 0;
    right: 0;
    border-right: 0.5em solid transparent;
    border-bottom: 0.5em solid rgba(0, 135, 30, 0.88);
    border-left: 0.5em solid transparent;
  }
  #g_header #g_nav .main_nav li:hover ul {
    display: flex;
    justify-content: center;
    width: 100%;
    margin: -0.65em 0 0 0;
    padding: 1em 0;
    position: absolute;
    left: 0;
    background: linear-gradient(-90deg, rgba(228, 208, 0, 0.95), rgba(0, 135, 30, 0.95), rgba(0, 135, 30, 0.95));
  }
  #g_header #g_nav .main_nav li:hover ul li {
    background-color: transparent;
  }
  #g_header #g_nav .main_nav li:hover ul li a {
    padding: 1em 0 1em 1.2em;
    color: #fff;
    font-size: 1.2em;
  }
  #g_header #g_nav .main_nav li:hover ul li a:hover, #g_header #g_nav .main_nav li:hover ul li a:active {
    color: #fff;
    text-decoration: underline;
  }
  #g_header #g_nav .main_nav li:hover ul li a:after {
    content: none;
  }
  #g_header #g_nav .main_nav li:hover ul li a::before {
    content: none;
  }
  #g_header #g_nav .main_nav li.stay a {
    color: #3A8430;
    text-decoration: none;
  }
  #g_header #g_nav .main_nav li.stay a:after {
    content: "";
    display: block;
    width: 0.5em;
    height: 0.5em;
    background-image: none;
    position: absolute;
    bottom: -0.5em;
    left: 0;
    right: 0;
    border-right: 0.5em solid transparent;
    border-bottom: 0.5em solid rgba(0, 135, 30, 0.88);
    border-left: 0.5em solid transparent;
  }
  #g_header #g_nav .main_nav li.about a::before {
    background-image: url("../images/icon-about.png");
  }
  #g_header #g_nav .main_nav li.support {
    /* display: flex;*/
  }
  #g_header #g_nav .main_nav li.support a::before {
    background-image: url("../images/icon-support.png");
  }
  #g_header #g_nav .main_nav li.support .cc-pre-about, #g_header #g_nav .main_nav li.support .cc-about {
    display: block;
    margin: 0;
    padding: 1em 0 0 0;
    border-top: 1px dotted #C1C1C1;
    /* width: auto;*/
    /* -webkit-flex-basis: auto;*/
    /*    	    flex-basis: auto;*/
    /*    ul{*/
    /*    	width: auto;*/
    /*    	float: left;*/
    /*    	li{*/
    /*    		ul{*/
    /*    			float: left;*/
    /*    		}*/
    /*    	}*/
    /*    }*/
    /*  	    a{*/
    /*  	    	&.cc-pre-about,&.cc-about{*/
    /*  	    		&:after{*/
    /*  	    			content: none;*/
    /*  	    		}*/
    /*  	    	}*/
    /*  	    }*/
  }
  #g_header #g_nav .main_nav li.support .cc-pre-about ul, #g_header #g_nav .main_nav li.support .cc-about ul {
    padding: 0 0 1em 0;
  }
  #g_header #g_nav .main_nav li.support .cc-pre-about a, #g_header #g_nav .main_nav li.support .cc-about a {
    display: block;
  }
  #g_header #g_nav .main_nav li.support .cc-pre-about a.cc-pre-about, #g_header #g_nav .main_nav li.support .cc-pre-about a.cc-about, #g_header #g_nav .main_nav li.support .cc-about a.cc-pre-about, #g_header #g_nav .main_nav li.support .cc-about a.cc-about {
    border: none;
    text-align: center;
    /* display: flex;*/
    /* align-items: center;*/
  }
  #g_header #g_nav .main_nav li.support .cc-pre-about a.cc-pre-about:after, #g_header #g_nav .main_nav li.support .cc-pre-about a.cc-about:after, #g_header #g_nav .main_nav li.support .cc-about a.cc-pre-about:after, #g_header #g_nav .main_nav li.support .cc-about a.cc-about:after {
    content: none;
    /* display: block;*/
    /* width: 100%;*/
    /* 			width: auto;*/
    /* 			flex-basis: 40%;*/
    /* 			height: 1px;*/
    /* 			margin: auto 0;*/
    /* background-image: url("../images/border.png");*/
    /* background-repeat: repeat-x;*/
    /* background-position: center right;*/
  }
  #g_header #g_nav .main_nav li.support .cc-pre-about ul, #g_header #g_nav .main_nav li.support .cc-about ul {
    display: flex;
    position: static;
    background: none;
  }
  #g_header #g_nav .main_nav li.support .cc-pre-about ul li, #g_header #g_nav .main_nav li.support .cc-about ul li {
    display: block;
    font-size: 1.2em;
  }
  #g_header #g_nav .main_nav li.info, #g_header #g_nav .main_nav li.info_02, #g_header #g_nav .main_nav li.qa, #g_header #g_nav .main_nav li.institution, #g_header #g_nav .main_nav li.contact, #g_header #g_nav .main_nav li.career {
    padding: 0;
  }
  #g_header #g_nav .main_nav li.info a, #g_header #g_nav .main_nav li.info_02 a, #g_header #g_nav .main_nav li.qa a, #g_header #g_nav .main_nav li.institution a, #g_header #g_nav .main_nav li.contact a, #g_header #g_nav .main_nav li.career a {
    padding: 0 1em;
    background: none;
    font-weight: 400;
  }
  #g_header #g_nav .main_nav li.info a::before {
    background-image: url("../images/icon-info.png");
  }
  #g_header #g_nav .main_nav li.info_02 a::before {
    background-image: url("../images/icon-info-02.png");
  }
  #g_header #g_nav .main_nav li.qa a::before {
    background-image: url("../images/icon-qa.png");
  }
  #g_header #g_nav .main_nav li.institution a::before {
    background-image: url("../images/icon-institution.png");
  }
  #g_header #g_nav .main_nav li.career a::before {
    background-image: url("../images/icon_career.png");
  }
  #g_header #g_nav .main_nav li.contact {
    margin: auto 0;
    position: absolute;
    right: 0;
  }
  #g_header #g_nav .main_nav li.contact a {
    padding: 0.5em 1em;
    background-color: rgb(39, 174, 63);
    color: #fff;
    border-radius: 2em 0 0 2em;
  }
  #g_header #g_nav .main_nav li.contact a::before {
    font-family: "Font Awesome 5 Free";
    content: "\f0e0";
    font-weight: 400;
    background-image: none;
    display: inline;
  }
  #g_header #g_nav .main_nav li.contact a:hover {
    background-color: rgb(0, 135, 30);
  }
  #g_header #g_nav .main_nav li.contact:hover a:after, #g_header #g_nav .main_nav li.contact.stay a:after {
    content: none;
  }
  #g_header #g_nav .main_nav li.info, #g_header #g_nav .main_nav li.info_02, #g_header #g_nav .main_nav li.qa, #g_header #g_nav .main_nav li.institution, #g_header #g_nav .main_nav li.contact, #g_header #g_nav .main_nav li.career {
    flex-basis: auto;
  }
  #g_header #g_nav .about_us {
    display: none;
  }
  #g_header #sp_nav_btn, #g_header .sub_nav {
    display: none;
  }
}
.sub_nav {
  margin: 0 0 2em 0;
  padding: 0;
  text-align: right;
}
.sub_nav li {
  margin: 0 0.5em 0 0;
  display: inline;
  list-style: none;
  border-right: 1px solid #404040;
}
.sub_nav li:last-of-type {
  margin: 0;
  border: none;
}
.sub_nav li a {
  padding: 0.5em;
  color: #404040;
  font-size: 0.9em;
}
.sub_nav li a:link, .sub_nav li a:visited {
  color: #404040;
}
.sub_nav li a:hover, .sub_nav li a:active {
  color: #404040;
  text-decoration: underline;
}

/* --------------------------------------------------*/
/* #g_footer:全ページ共通*/
/* --------------------------------------------------*/
.bunner_area {
  width: 100%;
  padding: 0 0 5em 0;
  background-color: #fff;
}
.bunner_area ul {
  /* width: 100%;*/
  /* max-width: $contents_area;*/
  /* margin: 0 auto;*/
  /* padding: 0;*/
}
.bunner_area ul li {
  margin: 0 0 1em 0;
  padding: 0;
  list-style: none;
}
.bunner_area ul li a {
  display: block;
}
.bunner_area ul li img {
  display: block;
  width: 100%;
  margin: 0 auto;
}
.bunner_area ul li::before {
  content: none;
}
.bunner_area ul li:last-of-type {
  margin: 0;
}

.copyright {
  width: 100%;
  background-color: rgb(255, 255, 255);
  margin: 0;
  padding: 1em 0;
  font-size: 0.7em;
  line-height: 1.1em;
  text-align: center;
  color: #404040;
}

#g_footer {
  width: 100%;
  padding: 4em 0 7em 0;
  background-image: url(../images/footer-bg.png);
  background-size: cover;
  background-position: top center;
  position: relative;
  /* .sub_nav{*/
  /* 	margin: 0 1em 2em 1em;*/
  /* }*/
}
#g_footer::before, #g_footer:after {
  content: "";
  display: block;
  position: absolute;
  background-size: contain;
  background-repeat: no-repeat;
}
#g_footer::before {
  width: 40%;
  height: 150px;
  top: -4.5em;
  left: 0.25em;
  background-image: url(../images/decoration-f-left.png);
  background-position: top left;
}
#g_footer:after {
  width: 30%;
  height: 100px;
  top: -2em;
  right: 0.25em;
  background-image: url(../images/decoration-f-right.png);
  background-position: top right;
}
#g_footer .wrapper {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
}
#g_footer .wrapper .logo_area {
  width: 12%;
  max-width: 115px;
  margin: 0 auto 1em;
}
#g_footer .wrapper .logo_area img {
  width: 100%;
  height: auto;
}
#g_footer .wrapper .about_us .tel_no a {
  border: none;
  background-color: transparent;
  color: #404040;
}
#g_footer .wrapper .nav_footer {
  margin: 0 0 2em 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
#g_footer .wrapper .nav_footer li {
  flex-basis: 80%;
  margin: 0 0 0.5em;
  padding: 0;
  list-style: none;
}
#g_footer .wrapper .nav_footer li a {
  display: inline-block;
  margin: 0 0.25em 0.25em;
  padding: 0.2em 1.25em;
  background-color: transparent;
  border: 1px solid #404040;
  -webkit-border-radius: 2em;
  border-radius: 2em;
  color: #404040;
  display: block;
  text-align: center;
}
#g_footer .wrapper .nav_footer li a:link, #g_footer .wrapper .nav_footer li a:visited {
  color: #404040;
  text-decoration: none;
}
#g_footer .wrapper .nav_footer li a:hover, #g_footer .wrapper .nav_footer li a:active {
  background-color: #3A8430;
  border: 1px solid #3A8430;
  color: #fff;
  text-decoration: none;
}

@media (min-width: 768px) {
  #g_footer {
    padding: 6em 0 10em 0;
  }
  #g_footer::before {
    height: 240px;
    top: -7em;
  }
  #g_footer:after {
    height: 140px;
    top: -4em;
  }
}
@media (min-width: 1024px) {
  #g_footer {
    padding: 6em 0 0 0;
  }
  #g_footer::before {
    height: 340px;
    top: -10em;
  }
  #g_footer:after {
    height: 170px;
  }
  #g_footer .wrapper .nav_footer li {
    flex-basis: auto;
  }
}
@media (min-width: 1800px) {
  #g_footer {
    padding: 6em 0 0 0;
  }
  #g_footer::before {
    top: -8em;
  }
  #g_footer:after {
    top: -3em;
  }
}
.footer_banner {
  width: 100%;
  margin: 0 0 2em 0;
}
.footer_banner .footer_banner_list {
  display: flex;
  justify-content: center;
  width: 50%;
  margin: 0 auto;
  padding: 0;
}
.footer_banner .footer_banner_list .footer_banner_list_item {
  width: 80px;
  height: 80px;
  margin: 0 0.2em;
  padding: 0;
  list-style: none;
}
.footer_banner .footer_banner_list .footer_banner_list_item a {
  display: block;
}
.footer_banner .footer_banner_list .footer_banner_list_item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* --------------------------------------------------*/
/* .mainvisual*/
/* --------------------------------------------------*/
.mainvisual {
  width: 100%;
  height: auto;
  /* max-height: 55vh;*/
  margin: 0 0 5.4em 0;
  padding: 0;
  /* position: relative;*/
  text-align: center;
  /* overflow: hidden;*/
  /* overflow-y: visible;*/
  overflow-y: visible;
}
.mainvisual .js-slider {
  /* width: 100%;*/
  /* height: auto;*/
  /* max-height: 70vh;*/
  /* overflow: hidden;*/
}
.mainvisual .js-slider .visual_slide {
  width: 100%;
  height: auto;
  /* max-height: 90vh;*/
  min-height: 304px;
  /* overflow: hidden;*/
  margin: 0;
  padding: 0;
  /* position: relative;*/
  list-style: none;
  text-indent: 0;
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: flex-end;
}
.mainvisual .js-slider .visual_slide::before {
  content: none;
}
.mainvisual .js-slider .visual_slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.mainvisual .js-slider .visual_slide .visual_slide-link {
  display: block;
  color: #404040;
}
.mainvisual .js-slider .visual_slide .visual_slide-link:link, .mainvisual .js-slider .visual_slide .visual_slide-link:visited, .mainvisual .js-slider .visual_slide .visual_slide-link:hover, .mainvisual .js-slider .visual_slide .visual_slide-link:active {
  color: #404040;
}
.mainvisual .visual_caption, .mainvisual .deco-v-t-left, .mainvisual .deco-v-t-right, .mainvisual .deco-v-b-left, .mainvisual .deco-v-b-right {
  position: absolute;
}
.mainvisual .visual_caption img, .mainvisual .deco-v-t-left img, .mainvisual .deco-v-t-right img, .mainvisual .deco-v-b-left img, .mainvisual .deco-v-b-right img {
  border-radius: 0;
}
.mainvisual .visual_caption {
  width: 3.2em;
  height: auto;
  margin: 0 0 1em 0;
  top: 1em;
  right: 1em;
  z-index: 20;
}
.mainvisual .visual_caption p {
  /* display: -ms-grid;*/
  /* display: grid;*/
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  line-height: 1.1em;
  text-align: left;
  font-size: 0.85em;
}
.mainvisual .visual_caption p .caption_line {
  display: block;
  /* display: inline-block;*/
  margin: 0 0.1em;
  padding: 0.2em 0.1em;
  background-color: rgba(255, 255, 255, 0.95);
}
.mainvisual .visual_sub {
  width: 52vw;
  max-width: 820px;
  height: auto;
  position: absolute;
  top: 1em;
  left: 0.5em;
  z-index: 10;
}
.mainvisual .deco-v-t-left {
  width: 40%;
  height: auto;
  top: -1px;
  left: 0;
  z-index: 2;
}
.mainvisual .deco-v-t-right {
  width: 4em;
  height: auto;
  top: 0;
  right: 0;
  z-index: 3;
}
.mainvisual .deco-v-b-left {
  width: 35%;
  height: auto;
  left: 0.5em;
  bottom: -3em;
  z-index: 4;
}
.mainvisual .deco-v-b-right {
  width: 55%;
  height: auto;
  right: 0;
  bottom: -2em;
  z-index: 5;
}

.slick-track {
  display: flex !important;
}

@media (min-width: 768px) {
  .mainvisual .visual_caption {
    width: 5.8em;
    top: 2em;
    right: 1.2em;
  }
  .mainvisual .visual_caption p {
    font-size: 1.2em;
  }
  .mainvisual .deco-v-t-right {
    width: 5em;
    top: 0.5em;
    right: 0.5em;
  }
}
@media (min-width: 1024px) {
  .mainvisual {
    margin: 0 0 8em 0;
  }
  .mainvisual .deco-v-t-left {
    width: 30%;
  }
  .mainvisual .deco-v-b-left {
    width: 20%;
    bottom: -4em;
  }
  .mainvisual .deco-v-b-right {
    width: 35%;
    bottom: -2.5em;
  }
}
@media (min-width: 1240px) {
  .mainvisual .js-slider .visual_slide {
    max-height: 98vh;
  }
  .mainvisual .visual_sub {
    top: 2em;
  }
  .mainvisual .deco-v-t-left {
    width: 20%;
  }
  .mainvisual .deco-v-b-left {
    width: 15%;
    bottom: -4em;
  }
  .mainvisual .deco-v-b-right {
    width: 30%;
    bottom: -3em;
  }
}
@media (min-width: 1420px) {
  .mainvisual .visual_caption {
    width: 7em;
    right: 4em;
  }
  .mainvisual .visual_caption p {
    font-size: 1.4em;
  }
  .mainvisual .deco-v-t-left {
    width: 20%;
  }
  .mainvisual .deco-v-b-left {
    width: 20%;
    bottom: -8.8em;
  }
  .mainvisual .deco-v-b-right {
    width: 35%;
    bottom: -4em;
  }
}
.slick-dots {
  position: absolute;
  bottom: -50px;
  z-index: 100;
  display: block;
  width: 100%;
  padding: 0;
  text-align: center;
  list-style: none;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
  /* background-image: none;*/
  list-style: none;
}
.slick-dots li::before {
  content: none;
}
.slick-dots li button {
  display: block;
  width: 20px;
  height: 20px;
  padding: 5px;
  color: #c2c2c2;
  font-size: 0px;
  line-height: 0px;
  background: #c2c2c2;
  border: 0;
  outline: none;
  cursor: pointer;
  border-radius: 50%;
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
.slick-dots li button:hover::before, .slick-dots li button:focus::before {
  opacity: 0.8;
}
.slick-dots li button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  color: #c2c2c2;
  font-size: 1em;
  /* font-family: $slick-font-family;*/
  line-height: 20px;
  text-align: center;
  opacity: 1;
  /* content: $slick-dot-character;*/
  /* -webkit-font-smoothing: antialiased;*/
  /* -moz-osx-font-smoothing: grayscale;*/
}
.slick-dots li.slick-active button:before {
  color: rgb(90, 171, 78);
  background: rgb(90, 171, 78);
  opacity: 1;
  border-radius: 50%;
}

.teacher {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 960px;
  margin: 0 auto 5em;
  padding: 2em 0 4em 0;
  height: auto;
  background-image: url("../images/teacher2020/teacher-bg_top.png"), url("../images/teacher2020/teacher-bg_bottom.png");
  background-position: top center, bottom center;
  background-repeat: no-repeat, no-repeat;
  background-size: contain;
}
.teacher div {
  flex-basis: 42%;
}
.teacher div.pic-01 {
  margin: 1em 0 0 8%;
}
.teacher div.pic-02 {
  margin: 2em 8% 0 0;
}
.teacher div.pic-03 {
  margin: -0.5em 0 0 0;
}
.teacher div.pic-04 {
  margin: 0 0 0 16%;
}
.teacher div.pic-05 {
  margin: -2em 0 0 16%;
}
.teacher div.pic-06 {
  margin: -1em 0 0 0;
}
.teacher div.pic-07 {
  margin: 0;
}
.teacher div.pic-08 {
  margin: 0 0 0 2em;
}
.teacher div.pic-09 {
  margin: -1em 0 0 4%;
}
.teacher div.pic-10 {
  margin: 0;
}
.teacher div.pic-11 {
  margin: 0 0 0 8%;
}
.teacher div.pic-12 {
  margin: 1em 0 0 4em;
}
.teacher div.pic-13 {
  margin: 0 2em 0 0;
}
.teacher div.pic-14 {
  margin: -4em 0 0 0;
}
.teacher div.pic-15 {
  margin: 0 0 0 8%;
}
.teacher div.pic-16 {
  margin: -2em 8% 0 0;
}
.teacher div.pic-17 {
  margin: -0.5em 0 0 0;
}
.teacher div.pic-18 {
  margin: -2em 0 0 16%;
}
.teacher div.pic-19 {
  margin: 0 0 0 16%;
}
.teacher div.pic-20 {
  margin: -1em 0 0 0;
}
.teacher div.pic-21 {
  margin: -1em 0 0 0;
}
.teacher div.pic-22 {
  margin: 0;
}
.teacher div.pic-23 {
  margin: -1em 0 0 4%;
}
.teacher div.pic-24 {
  margin: 0 0 0 12%;
}
.teacher div.pic-25 {
  margin: 2em 0 0 0;
}
.teacher div.pic-26 {
  flex-basis: 80%;
  margin: 0 10% 0 10%;
}
.teacher a {
  display: block;
}
.teacher a img {
  width: 100%;
}

@media (min-width: 768px) {
  .teacher {
    padding: 4em 0 8em 0;
  }
  .teacher div {
    flex-basis: 28%;
    padding: 0 1em;
    /* &.pic-01{}*/
  }
  .teacher div.pic-02 {
    margin: 2em 0 0 0;
  }
  .teacher div.pic-03 {
    margin: 3em 8% 0 0;
  }
  .teacher div.pic-04 {
    margin: -2em 0 0 22%;
  }
  .teacher div.pic-05 {
    margin: -1em 22% 0 0;
  }
  .teacher div.pic-06 {
    margin: 0 auto;
  }
  .teacher div.pic-07 {
    margin: -1em 0 0 0;
  }
  .teacher div.pic-08 {
    margin: -4em 0 0 12%;
  }
  .teacher div.pic-09 {
    margin: -4em 0 0 16%;
  }
  .teacher div.pic-10 {
    margin: -1em 0 0 0;
  }
  .teacher div.pic-11 {
    margin: -4em 0 0 0;
  }
  .teacher div.pic-12 {
    margin: -4em 0 0 0;
  }
  .teacher div.pic-13 {
    margin: 0 0 0 0;
  }
  .teacher div.pic-14 {
    margin: -1em 16% 0 0;
  }
  .teacher div.pic-15 {
    margin: -2em 0 0 8%;
  }
  .teacher div.pic-16 {
    margin: -1em 0 0 8%;
  }
  .teacher div.pic-17 {
    margin: -4em 0 0 0;
  }
  .teacher div.pic-18 {
    margin: -2em 0 0 24%;
  }
  .teacher div.pic-19 {
    margin: -2em 10% 0 10%;
  }
  .teacher div.pic-20 {
    margin: -8em 0 0 0;
  }
  .teacher div.pic-21 {
    margin: -2em 0 0 8%;
  }
  .teacher div.pic-22 {
    margin: 2em 2%;
  }
  .teacher div.pic-23 {
    margin: 1em 0 0 0;
  }
  .teacher div.pic-24 {
    margin: -5em 0 0 0;
  }
  .teacher div.pic-25 {
    margin: -3em 0 0 26%;
  }
  .teacher div.pic-26 {
    flex-basis: 55%;
    margin: 0 23% 0 22%;
  }
}
/* --------------------------------------------------*/
/* #top:top.html only*/
/* --------------------------------------------------*/
.intro {
  margin: 0 -1.8em;
}

.side_nav {
  display: block;
  position: fixed;
  z-index: 1000;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0;
}
.side_nav ul {
  display: flex;
  justify-content: space-around;
  margin: 0 0.2em 0.5em 0.2em;
  padding: 0;
}
.side_nav ul li {
  margin: 0 0.2em;
  padding: 0;
  flex-basis: 32%;
  font-family: "M PLUS Rounded 1c", sans-serif;
  text-align: center;
  list-style: none;
}
.side_nav ul li::before {
  content: none;
}
.side_nav ul li a {
  display: block;
  padding: 0.5em 0.2em;
  background-color: rgb(255, 255, 255);
  border-radius: 8px;
  color: #404040;
  text-decoration: none;
  font-size: 0.7em;
}
.side_nav ul li a::before {
  content: "";
  display: block;
  width: 4em;
  height: 3.7em;
  margin: 0 auto;
  background-image: url(../images/icon-entrance.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.side_nav ul li.cc-about a::before {
  background-image: url("../images/icon-cc-about.png");
}
.side_nav ul li.cc-pre-about a::before {
  background-image: url("../images/icon-cc-pre-about.png");
}
.side_nav ul li.career a::before {
  background-image: url("../images/icon_career.png");
}
.side_nav ul li.info a::before {
  background-image: url("../images/icon-info.png");
}
.side_nav ul li.info_02 a::before {
  background-image: url("../images/icon-info-02.png");
}

@media (min-width: 768px) {
  .side_nav ul li a {
    font-size: 0.9em;
  }
  .side_nav ul li a::before {
    width: 7em;
    height: 6.7em;
  }
}
@media (min-width: 1024px) {
  .side_nav {
    width: auto;
    /* margin: 0;*/
    /* position: fixed;*/
    /* z-index: 1000;*/
    left: auto;
    right: 1em;
    bottom: 2em;
  }
  .side_nav ul {
    margin: 0;
    padding: 0;
    display: block;
  }
  .side_nav ul li {
    margin: 0 0 0.2em 0;
  }
  .side_nav ul li a {
    padding: 0.5em;
    border: 1px solid #E0E0E0;
    font-size: 0.7em;
  }
  .side_nav ul li a::before {
    width: 5em;
    height: 4.2em;
  }
  .side_nav ul li a:hover {
    background-color: rgb(45, 192, 71);
    /* color: $color_text;*/
  }
}
.nav_on .side_nav {
  display: none;
}

.top_intro {
  margin: 0 0 2em 0;
}
.top_intro div p {
  margin: 0;
}
.top_intro div:first-of-type {
  width: 80%;
  margin: 0 20% 0 0;
  position: relative;
  z-index: 5;
}
.top_intro div:nth-of-type(2) {
  width: 90%;
  /* position: absolute;*/
  margin: -1.4em 0 0 10%;
  position: relative;
  z-index: 10;
  /* margin: -2em 0 0 0;*/
  padding: 1em;
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 8px;
}
.top_intro:nth-of-type(2n) div:first-of-type {
  margin: 0 0 0 20%;
}
.top_intro:nth-of-type(2n) div:nth-of-type(2) {
  margin: -1.4em 10% 0 0;
}

@media (min-width: 768px) {
  .top_intro div:first-of-type {
    width: 55%;
    margin: 0 45% 0 0;
  }
  .top_intro div:nth-of-type(2) {
    width: 50%;
    margin: -5em 0 0 50%;
  }
  .top_intro:nth-of-type(2n) div:first-of-type {
    margin: 0 0 0 45%;
  }
  .top_intro:nth-of-type(2n) div:nth-of-type(2) {
    margin: -5em 45% 0 0;
  }
}
#top main {
  margin: 0;
}
#top .wrapper {
  margin: 0 auto 5em;
}
#top .info_box {
  width: 100%;
  background-color: rgb(255, 255, 255);
}
#top h2 {
  color: #404040;
}
#top h2::before, #top h2:after {
  height: 3em;
}
#top h2:after {
  transform: none;
}
#top .important_info h2 {
  color: #CB0000;
}
#top h3 {
  background-image: none;
  padding: 0;
}
#top .guidance h2::before {
  background-image: url(../images/title-e-guidance-left.png);
}
#top .guidance h2:after {
  background-image: url(../images/title-e-guidance-right.png);
}
#top .visit h2::before {
  background-image: url(../images/title-e-visit-left.png);
}
#top .visit h2:after {
  background-image: url(../images/title-e-visit-right.png);
}
#top .cc_about h2::before {
  background-image: url(../images/title-s-cc-about-left.png);
  background-position: top left;
}
#top .cc_about h2:after {
  background-image: url(../images/title-s-cc-about-right.png);
  background-position: right bottom;
}
#top .support h2::before {
  background-image: url(../images/title-s-cc-pre-about-left.png);
  background-position: left bottom;
}
#top .support h2:after {
  background-image: url(../images/title-s-cc-pre-about-right.png);
  background-position: left bottom;
}
#top .contents_visual p {
  color: #2571AB;
}
#top .read_more {
  display: block;
}
#top .blog_title:after {
  height: 6em;
}
#top .box_column02 img {
  width: 100%;
}
#top #g_footer {
  background-color: rgb(255, 255, 255);
}

/* --------------------------------------------------*/
/* #index:index.html only*/
/* ※一覧表示は、entryにも掲載予定があるので、「Base」内へ掲載。ここはそれ以外。*/
/* --------------------------------------------------*/
/* --------------------------------------------------*/
/* #entry:entry.html only*/
/* --------------------------------------------------*/
#entry .wrapper {
  max-width: 960px;
}

.entry {
  margin: 0 0 5em 0;
}
.entry header {
  margin: 0 0 2em 0;
}
.entry header h2 {
  padding: 0;
  text-align: left;
}
.entry header h2::before, .entry header h2:after {
  content: none;
}
.entry header .entry_info {
  margin: 0 0 2em 0;
}

/* --------------------------------------------------*/
/* 子ブログ「お知らせ」用*/
/* --------------------------------------------------*/
.column_info {
  /* display: flex;*/
  /* justify-content: space-between;*/
  margin: 0 0 10em 0;
}
.column_info > div:first-of-type {
  /* flex-basis: 62%;*/
}
.column_info > div:nth-of-type(2) {
  padding: 1.8em 1.4em;
  /* flex-basis: 28%;*/
  background-color: rgb(255, 255, 255);
  border-radius: 8px;
  font-size: 0.8em;
  /* .calendar-month,.list-add-amount{*/
  /* 	margin: 0 0 2em 0;*/
  /* }*/
}
.column_info > div:nth-of-type(2) h2 {
  margin: 0 0 0.5em 0;
  padding: 0;
  color: #2571AB;
  font-size: 1.2em;
  text-align: left;
  line-height: 1.2em;
}
.column_info > div:nth-of-type(2) h2::before, .column_info > div:nth-of-type(2) h2:after {
  content: none;
}
.column_info > div:nth-of-type(2) > div {
  margin: 0 0 2em 0;
  border-bottom: 1px dotted #C1C1C1;
}
.column_info > div:nth-of-type(2) .calendar-month table {
  margin: 0 auto 1em;
  font-size: 0.9em;
}
.column_info > div:nth-of-type(2) .calendar-month table tr td:nth-of-type(6) {
  color: #2571AB;
}
.column_info > div:nth-of-type(2) .calendar-month table tr td:nth-of-type(7) {
  color: #CB0000;
}
.column_info > div:nth-of-type(2) .calendar-month table th, .column_info > div:nth-of-type(2) .calendar-month table td {
  padding: 0.5em;
  text-align: center;
}
.column_info > div:nth-of-type(2) .calendar-month table th.success, .column_info > div:nth-of-type(2) .calendar-month table td.success {
  background-color: rgb(170, 221, 173);
  color: #3A8430;
  /* border-radius: 2em;*/
}
.column_info > div:nth-of-type(2) .calendar-month table th.success a, .column_info > div:nth-of-type(2) .calendar-month table td.success a {
  color: #3A8430;
}
.column_info > div:nth-of-type(2) .calendar-month table th.success a:link, .column_info > div:nth-of-type(2) .calendar-month table th.success a:visited, .column_info > div:nth-of-type(2) .calendar-month table td.success a:link, .column_info > div:nth-of-type(2) .calendar-month table td.success a:visited {
  color: #3A8430;
}
.column_info > div:nth-of-type(2) .category_list li {
  flex-basis: 100%;
}
.column_info > div:nth-of-type(2) .category_list li a {
  padding: 0.8em;
  border-radius: 3em;
}
.column_info > div:nth-of-type(2) .side_list {
  display: flex;
  flex-wrap: wrap;
}
.column_info > div:nth-of-type(2) .side_list li {
  margin: 0.25em 0.5em 0.25em 0;
  padding: 0;
  text-indent: 0;
  font-size: 0.8em;
}
.column_info > div:nth-of-type(2) .side_list li::before {
  content: none;
}
.column_info > div:nth-of-type(2) .side_list li a {
  display: inline-block;
  padding: 0.25em 1em;
  border: 1px solid #9F9F9F;
  border-radius: 2em;
  color: #404040;
  text-decoration: none;
}
.column_info > div:nth-of-type(2) .side_list li a:link, .column_info > div:nth-of-type(2) .side_list li a:visited {
  color: #404040;
}
.column_info > div:nth-of-type(2) .side_list li a:hover {
  background-color: rgb(193, 193, 193);
}

@media (min-width: 768px) {
  .column_info {
    display: flex;
    justify-content: space-between;
  }
  .column_info > div:first-of-type {
    flex-basis: 65%;
    overflow: hidden;
  }
  .column_info > div:nth-of-type(2) {
    flex-basis: 28%;
  }
}
/* --------------------------------------------------*/
/* for a-blogCMS extend style*/
/* --------------------------------------------------*/
.space_2em, .space_5em, .space_8em {
  width: 100%;
  display: block;
}

.space_2em {
  height: 2em;
}

.space_5em {
  height: 5em;
}

.space_8em {
  height: 8em;
}

/* --------------------------------------------------*/
/* for a-blogCMS reset style*/
/* --------------------------------------------------*/
[class*=column-eximage] .caption, [class*=column-image] .caption, [class*=column-media] .caption {
  margin: 0;
  font-size: 0.8em;
}

.column-media-left :not([href*=media-download]) + .caption {
  text-align: left;
}

.box_column02 [class*=acms-col], .box_column03 [class*=acms-col], .box_column04 [class*=acms-col] {
  padding: 0;
}
.box_column02 .clearHidden, .box_column03 .clearHidden, .box_column04 .clearHidden {
  display: none;
}

.error-text {
  color: #CB0000;
}

.entry-btn {
  display: inline-block;
  margin: 0 0.25em 0.25em;
  padding: 0.2em 1.25em;
  background-color: #fff;
  border: 1px solid #5AAB4E;
  -webkit-border-radius: 2em;
  border-radius: 2em;
  color: #3A8430;
  /* color: #3A8430;*/
}
.entry-btn:link, .entry-btn:visited {
  color: #3A8430;
  text-decoration: none;
}
.entry-btn:hover, .entry-btn:active {
  background-color: #5AAB4E;
  border: 1px solid #5AAB4E;
  color: #000;
  text-decoration: none;
}

.info_box ul.year-nav {
  display: flex;
  margin: 0 0 2em 0;
  justify-content: center;
}
.info_box ul.year-nav li {
  margin: 0;
  padding: 0;
  border-bottom: none;
}
.info_box ul.year-nav li.year-nav-center {
  margin: 0 2em;
  font-weight: bold;
  font-size: 1.2em;
}
.info_box ul.year-nav li a {
  display: inline-block;
  vertical-align: text-bottom;
}
.info_box .year-table .year-table-month {
  margin: 0 0 4em 0;
}
.info_box .year-table .year-table-month .month-date-outer .month-date {
  display: block;
  text-align: center;
  font-weight: bold;
}
.info_box .year-table .year-table-month .calendar-table {
  width: 100%;
  margin: 0 auto;
}
.info_box .year-table .year-table-month .calendar-table tr td {
  padding: 0.8em;
  text-align: center;
  line-height: 1em;
}
.info_box .year-table .year-table-month .calendar-table tr td:nth-of-type(6n) {
  color: #2571AB;
}
.info_box .year-table .year-table-month .calendar-table tr td:last-of-type {
  color: #CB0000;
}
.info_box .year-table .year-table-month .calendar-table tr td.success {
  padding: 0.2em;
}
.info_box .year-table .year-table-month .calendar-table tr td.success a {
  display: inline-block;
  margin: 0 0.25em 0.25em;
  padding: 0.2em 1.25em;
  background-color: #fff;
  border: 1px solid #5AAB4E;
  -webkit-border-radius: 2em;
  border-radius: 2em;
  color: #3A8430;
  margin: 0;
  padding: 0.6em;
  border-radius: 0.2em;
}
.info_box .year-table .year-table-month .calendar-table tr td.success a:link, .info_box .year-table .year-table-month .calendar-table tr td.success a:visited {
  color: #3A8430;
  text-decoration: none;
}
.info_box .year-table .year-table-month .calendar-table tr td.success a:hover, .info_box .year-table .year-table-month .calendar-table tr td.success a:active {
  background-color: #5AAB4E;
  border: 1px solid #5AAB4E;
  color: #000;
  text-decoration: none;
}

.acms-entry [class*=column-map] a:link, .acms-entry [class*=column-map] a:visited {
  text-decoration: none;
}

/* --------------------------------------------------*/
/* メインビジュアル下のSNSエリア*/
/* --------------------------------------------------*/
.sns-area {
  background-color: rgb(255, 255, 255);
  background-image: url("../images/sns-area-bg.jpg");
  background-size: 100%;
  background-position: center bottom;
  background-repeat: no-repeat;
  padding: 1.4em 1.8em;
  border-radius: 8px;
}
.sns-area p {
  text-align: center;
}

.sns-area__title {
  margin: 0 0 0.4em 0;
  font-weight: normal;
}
.sns-area__title::before, .sns-area__title::after {
  content: none;
}

.sns-area__inner {
  display: flex;
  justify-content: center;
}

.sns-area__item {
  width: 72px;
  height: 72px;
  margin: 0 0.4em;
  text-indent: 0;
}

.sns-area__link {
  display: block;
}

.sns-area__img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* --------------------------------------------------*/
/* メインビジュアル下のNEWSエリア*/
/* --------------------------------------------------*/
.nwes-summer-area {
  margin: 0 0 4em 0;
}
.nwes-summer-area.white {
  padding: 2em 1.2em;
  background-color: rgb(255, 255, 255);
}
@media (min-width: 768px) {
  .nwes-summer-area {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: max-content max-content max-content 1fr;
  }
}

@media (min-width: 768px) {
  .nwes-summer__titlebox {
    grid-column: 1/3;
    grid-row: 1/2;
  }
}

.nwes-summer__title {
  padding: 0;
  text-align: left;
}
.nwes-summer__title::after, .nwes-summer__title::before {
  content: none;
}
@media (min-width: 768px) {
  .nwes-summer__title {
    text-align: center;
  }
}

@media (min-width: 768px) {
  .nwes-summer__text {
    text-align: center;
  }
}

.nwes-summer__inner {
  margin: 0 0 2em 0;
}

.nwes-summer__info__text {
  text-align: center;
  font-weight: bold;
}
@media (min-width: 768px) {
  .nwes-summer__info__text {
    grid-column: 1/3;
    grid-row: 4/5;
  }
}

@media (min-width: 768px) {
  .nwes-summer__img {
    grid-column: 2/3;
    grid-row: 2/4;
  }
}

.nwes-firework-area {
  max-width: 768px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: max-content max-content 1fr;
  row-gap: 2em;
  column-gap: 1em;
  margin: 0 auto 4em auto;
}

.nwes-firework-area__title {
  padding: 0;
}
.nwes-firework-area__title::after, .nwes-firework-area__title::before {
  content: none;
}

.nwes-firework__firework {
  grid-row: 1/2;
  grid-column: 1/3;
}
@media (min-width: 768px) {
  .nwes-firework__firework {
    grid-row: auto;
    grid-column: auto;
  }
}

.nwes-firework__festival {
  grid-row: 2/3;
  grid-column: 1/3;
}
@media (min-width: 768px) {
  .nwes-firework__festival {
    grid-row: auto;
    grid-column: auto;
  }
}

.nwes-firework__info {
  order: 4;
}

.nwes-firework__pdf {
  order: 3;
}
@media (min-width: 768px) {
  .nwes-firework__pdf {
    grid-row: 1/4;
  }
}

/* --------------------------------------------------*/
/* ボタン
/* --------------------------------------------------*/
.btn-box {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0.5em;
  padding: 1em 2em;
  background-color: rgb(0, 135, 30);
  border: none;
  border-radius: 9999px;
  color: #fff;
  text-align: center;
}
.btn-box:hover {
  background-color: rgb(39, 174, 63);
  color: #404040;
}

/* --------------------------------------------------*/
/* メインビジュアル下のお知らせSエリア*/
/* --------------------------------------------------*/
.info-fireworks {
  margin: 2em 0 5em;
  padding: 2em 1.5em;
  background-color: #fff;
  border-radius: 24px;
}
.info-fireworks h2 {
  margin: 0 0 0.4em;
  padding: 0;
  text-align: center;
  color: #3A8430;
  font-size: 1.5em;
  line-height: 1.4;
}
.info-fireworks h2::before, .info-fireworks h2::after {
  content: none;
}
.info-fireworks__subtitle {
  display: block;
  margin: 0;
  color: #404040;
  font-size: 0.52em;
  font-weight: 400;
  line-height: 1.4;
}
.info-fireworks__title {
  display: block;
  color: #3A8430;
  font-size: 1em;
  font-weight: 700;
  line-height: 1.4;
}
.info-fireworks__body {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 2em;
}
.info-fireworks__content {
  flex: 1 1 100%;
  min-width: 0;
}
.info-fireworks__main {
  margin: 0 0 1.5em;
  padding: 0 0 1.5em;
}
.info-fireworks__date, .info-fireworks__time {
  margin: 0 0 0.15em;
  font-size: 1.2em;
  font-weight: 700;
  line-height: 1.4;
}
.info-fireworks__date__month, .info-fireworks__date__day, .info-fireworks__time__month, .info-fireworks__time__day {
  font-size: 1.35em;
}
.info-fireworks__place {
  margin: 0.5em 0 0;
  font-size: 0.95em;
  line-height: 1.6;
}
.info-fireworks__festival h3 {
  margin: 0 0 0.5em;
  padding: 0.4em 0 !important;
  background-image: none;
  color: #2571AB;
  font-size: 1.15em;
  font-weight: 700;
  border-top: 1px solid #2571AB;
  border-bottom: 1px solid #2571AB;
}
.info-fireworks__datetime {
  margin: 0 0 0.75em;
  font-weight: 700;
  line-height: 1.6;
}
.info-fireworks__desc {
  margin: 0;
  font-size: 0.95em;
  line-height: 1.85;
}
.info-fireworks__img {
  flex: 1 1 100%;
  text-align: center;
}
.info-fireworks__img a {
  display: inline-block;
  color: #404040;
  text-decoration: none;
}
.info-fireworks__img a:link, .info-fireworks__img a:visited {
  color: #404040;
  text-decoration: none;
}
.info-fireworks__img a:hover, .info-fireworks__img a:active {
  opacity: 0.85;
}
.info-fireworks__img img {
  display: block;
  width: 100%;
  max-width: 200px;
  margin: 0 auto;
  border-radius: 0;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
}
.info-fireworks__img p {
  margin: 0.6em 0 0;
  font-size: 0.85em;
  text-align: center;
}

@media (min-width: 768px) {
  .info-fireworks {
    padding: 2.5em 3em;
  }
  .info-fireworks h2 {
    font-size: 1.75em;
  }
  .info-fireworks__date, .info-fireworks__time {
    font-size: 1.35em;
  }
  .info-fireworks__date__month, .info-fireworks__date__day, .info-fireworks__time__month, .info-fireworks__time__day {
    font-size: 1.55em;
  }
  .info-fireworks__body {
    flex-wrap: nowrap;
    gap: 2.5em;
  }
  .info-fireworks__content {
    flex: 1 1 62%;
  }
  .info-fireworks__img {
    flex: 0 0 32%;
    text-align: center;
  }
  .info-fireworks__img img {
    max-width: 100%;
  }
}
@media (min-width: 1024px) {
  .info-fireworks {
    padding: 3em 4em;
  }
  .info-fireworks h2 {
    font-size: 2em;
  }
  .info-fireworks__date, .info-fireworks__time {
    font-size: 1.55em;
  }
  .info-fireworks__date__month, .info-fireworks__date__day, .info-fireworks__time__month, .info-fireworks__time__day {
    font-size: 1.7em;
  }
  .info-fireworks__festival h3 {
    font-size: 1.25em;
  }
}
#top .info-fireworks h2 {
  color: #3A8430;
}
#top .info-fireworks h2::before, #top .info-fireworks h2::after {
  content: none;
}

/* --------------------------------------------------*/
/* for a-blogCMS admin style*/
/* --------------------------------------------------*/
#adminBox img {
  width: auto;
}

main .acms-container h2 {
  text-align: left;
  color: #000;
}
main .acms-container h2::before, main .acms-container h2:after {
  content: none;
}
main .acms-container h3 {
  background-image: none;
  color: #fff;
}
main .acms-container h4 {
  color: #000;
}
main .acms-container h5 {
  color: #000;
}

/* .box_column04[class*="acms-col"]{*/
/* 		padding: 0;*/
/* 	}*/
/* .entry-footer{*/
/* 	background-color: rgba(255,255,255,1);*/
/* }*/
/* .share-wrapper{*/
/* 	float: none;*/
/* 	.share-list{*/
/* 		float: none;*/
/* 		display: flex;*/
/* 		justify-content: flex-end;*/
/* 		.share-item{*/
/* 			margin: 0 0.25em 0;*/
/* 			padding: 0;*/
/* 			text-indent: 0;*/
/* 			&::before{*/
/* 				content: none;*/
/* 			}*/
/* 			a{*/
/* 				display: inline-block;*/
/* 				padding: 0.25em;*/
/* 				&:link,&:visited,&:hover,&:active{*/
/* 					text-decoration: none;*/
/* 				}*/
/* 			}*/
/* 		}*/
/* 	}*/
/* }*/
.attention-area {
  padding: 1em 1.2em;
  border: 3px solid #CB0000;
  font-weight: bold;
  border-radius: 8px;
}

@media print {
  #g_header {
    display: none;
  }
  .side_nav {
    display: none;
  }
}
