@charset "UTF-8";

/* =========================================================
common styles
========================================================= */

body {
  background-color: #fff;
  min-width: 1024px;
}

.formBox ul.error {
	margin-bottom: 1em;
}
ul.error li {
	color: red;
	font-size: 150%;
}
/* =========================================================
header_PC_1400px以上
========================================================= */

#header {
  padding: 30px 20px;
  display: flex;
  justify-content: space-around;
  align-items: center;
  height: 120px;
  background-color: #fff;
  border-bottom: 8px solid #000;
  line-height: 1.5;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
}

#h_nav_wrap,
#h_nav_wrap_sp {
  text-align: center;
}

#h_nav_wrap_sp {
  display: none;
}

#h_nav ul {
  display: flex;
}

#h_nav ul li,
#h_nav_sp ul li {
  margin-right: 20px;
  letter-spacing: 0.2em;
  border-bottom: 3px solid #000;
  font-weight:600
}

#h_nav ul li:last-child,
#h_nav_sp ul li:last-child {
  margin-right: 0;
}

#h_nav ul li:nth-child(2),
#h_nav_sp ul li:nth-child(2) {
  border-color: #f6a6ac;
}

#h_nav ul li:nth-child(3),
#h_nav_sp ul li:nth-child(3) {
  border-color: #00b2bc;
}

#h_nav ul li:nth-child(4),
#h_nav_sp ul li:nth-child(4) {
  border-color: #aa5f69;
}

#h_nav ul li:nth-child(5),
#h_nav_sp ul li:nth-child(5) {
  border-color: #fdd22b;
}

#h_nav ul li:nth-child(6),
#h_nav_sp ul li:nth-child(6) {
  border-color: #6bbc6e;
}

#h_nav ul li:nth-child(7),
#h_nav_sp ul li:nth-child(6) {
  border-color: #a19fc9;
}

#h_nav ul li a,
#h_nav_sp ul li a {
  color: #000;
}

#h_nav ul li a:hover {
  transform: scale(1.1);
}

#Menu {
  display: none;
}


/* =========================================================
#container_PC_1400px以上
========================================================= */

#container {
  padding-top: 120px;
}

#main_visual_wrap {
  background-image: url("../images/bg_01.jpg");
  min-width: 1024px;
}

#main_visual_inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 170px 10px 125px;
}

#main_visual,
#main_v_text_wrap {
  text-align: center;
}

#main_v_text {
  height: 235px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  -webkit-text-orientation: upright;
  text-orientation: upright;
  display: inline-block;
  font-weight:400;
  text-align: initial;
  line-height: 2.5;
  font-size: 1.7rem;
  text-align: justify;
  text-justify: inter-character;
  margin-top: 30px;
}

.fade_in,
.fade_in img {
  opacity: 0;
}

.fade_in.show,
.fade_in.show img {
  opacity: 1;
}

.fadein_itm_01 {
  transition: opacity 1.5s ease-in-out 2s;
}

.fadein_itm_02 {
  transition: opacity 1.5s ease-in-out 1s;
}

.fadein_itm_03 {
  transition: opacity 1.5s ease-in-out 0.0s;
}

.fadein_itm_04 {
  transition: opacity 1.5s ease-in-out 3s;
}

.contents {
  max-width: 1400px;
  margin: 0 auto;
  padding: 130px 10px;
}

.contents_wrap {
  min-width: 1024px;
}

.contents_inner {
  width: 1000px;
  margin: 0 auto;
}

.contents_wrap:nth-child(2) {
  background-image: url("../images/bg_02.jpg");
}

.contents_wrap:nth-child(3) {
  background-image: url("../images/bg_03.jpg");
}

.contents_wrap:nth-child(4) {
  background-image: url("../images/bg_04.jpg");
}

.contents_wrap:nth-child(5) {
  background-image: url("../images/bg_05.jpg");
}

.contents_wrap:nth-child(6) {
  background-image: url("../images/bg_06.jpg");
}

.contents_wrap:nth-child(7) {
  background-image: url("../images/bg_07.jpg");
}

.news_wrap {
  /* display: flex; */
  letter-spacing: 0.1em;
}

.news_wrap_inner {
  display: flex;
  margin-top: 5rem;
}

.news_wrap_inner:first-of-type {
  margin-top: 0;
}

.year_wrap {
  flex: 0 0 auto;
}

.trend_wrap .year_wrap {
  margin-top: -8px;
}

.list_news li {
  display: flex;
  margin-bottom: 35px;
}

.list_news li:last-child {
  margin-bottom: 0;
}

.list_news li a {
  color: #000000;
}

.list_news li a:hover {
  opacity: 0.7;
}

.entry_date {
  flex: 0 0 auto;
  margin-left: 20px;
}

.trend_wrap .entry_date {
  margin-top: -8px;
}

.entry_txt {
  margin-left: 20px;
}

.list_news .entry_txt {
  margin-left: 10px;
  width: 780px;
}

.list_link_wrap {
  margin-top: 60px;
}

.list_link_wrap a {
  padding: 10px 15px;
  background-color: #fff;
  text-align: center;
  font-size: 2.9rem;
  color: #000;
  transition: all 0.3s ease 0s;
}

.list_link_wrap.news a:hover {
  box-shadow: 0 0 15px 0 rgba(244, 100, 118, .5);
  color: #f46476;
}

.list_link_wrap.trend a:hover {
  box-shadow: 0 0 15px 0 rgba(0, 149, 183, .5);
  color: #0095b7;
}

.list_link_wrap.special a:hover {
  box-shadow: 0 0 20px 0 rgba(247, 191, 11, .5);
  color: #f7bf0b;
}

.trend_wrap {
  /* display: flex; */
  letter-spacing: 0.1em;
}

.trend_wrap_inner {
  display: flex;
  margin-top: 5rem;
}

.trend_wrap_inner:first-of-type {
  margin-top: 0;
}

.list_trend li {
  display: flex;
  margin-bottom: 35px;
}

.list_trend li:last-child {
  margin-bottom: 0;
}

.list_trend li a {
  color: #000;
}

.list_trend li a:hover {
  opacity: 0.7;
}

.cat {
  font-size: 1.4rem;
  margin-left: 10px;
  text-align: center;
  font-weight: 600;
  width: 85px;
  flex: 0 0 auto;
  line-height: 1.2;
}

.cat p {
  border-bottom: 3px solid #eb6039;
  padding-bottom: 5px;
}

.list_nav li {
  background-color: #fff;
  width: 128px;
  height: 128px;
  background: url("../images/list_nav_bg_01.jpg") no-repeat left top / cover;
}

.cat_02 p {
  border-color: #00cab4;
}
.list_nav li:nth-child(2) {
  background: url("../images/list_nav_bg_02.jpg") no-repeat left top / cover;
}

.cat_03 p {
  border-color: #807cd7;
}
.list_nav li:nth-child(3) {
  background: url("../images/list_nav_bg_03.jpg") no-repeat left top / cover;
}

.cat_04 p {
  border-color: #6cd25a;
}
.list_nav li:nth-child(4) {
  background: url("../images/list_nav_bg_04.jpg") no-repeat left top / cover;
}

.cat_05 p {
  border-color: #f0a600;
}
.list_nav li:nth-child(5) {
  background: url("../images/list_nav_bg_05.jpg") no-repeat left top / cover;
}

.cat_06 p {
  border-color: #fe6b9e;
}
.list_nav li:nth-child(6) {
  background: url("../images/list_nav_bg_06.jpg") no-repeat left top / cover;
}

.cat_07 p {
  border-color: #8d9fa9;
}
.list_nav li:nth-child(7) {
  background: url("../images/list_nav_bg_07.jpg") no-repeat left top / cover;
}

.list_nav_wrap {
  margin-top: 60px;
}

.list_nav {
  display: flex;
  justify-content: space-between;
}

.list_nav li div {
  width: 100%;
  height: 100%;
  text-align: center;
  position: relative;
  color: #fff;
  font-weight: bold;
  transition: all 0.3s ease 0s;
}

.list_nav li div p {
  width: 100%;
  line-height: 1.5;
  letter-spacing: 0.2rem;
  font-size: 1.8rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.list_nav li div:hover {
  cursor: pointer;
  box-shadow: 0 0 15px 0 rgba(235, 96, 57, .8);
  /* color: #f28b79; */
}

.list_nav li:nth-child(2) div:hover {
  box-shadow: 0 0 15px 0 rgba(0, 202, 180, .8);
  /* color: #c1f4eb; */
}

.list_nav li:nth-child(3) div:hover {
  box-shadow: 0 0 15px 0 rgba(128, 124, 215, .8);
  /* color: #807cd7; */
}

.list_nav li:nth-child(4) div:hover {
  box-shadow: 0 0 15px 0 rgba(108, 210, 90, .8);
  /* color: #6cd25a; */
}

.list_nav li:nth-child(5) div:hover {
  box-shadow: 0 0 15px 0 rgba(240, 166, 0, .8);
  /* color: #f0a600; */
}

.list_nav li:nth-child(6) div:hover {
  box-shadow: 0 0 15px 0 rgba(254, 107, 158, .8);
  /* color: #fe6b9e; */
}

.list_nav li:nth-child(7) div:hover {
  box-shadow: 0 0 15px 0 rgba(141, 159, 169, .8);
  /* color: #8d9fa9; */
}

.list_trend .entry_txt {
  width: 675px;
  margin-top: -8px;
}

#no_result {
  display: none;
  text-align: center;
}

.list_aim li {
  margin-bottom: 35px;
  position: relative;
  padding-left: 25px;
}

.list_aim li:last-child {
  margin-bottom: 0;
}

.list_aim li::before {
  content: '';
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background-color: #fff;
  display: inline-block;
  position: absolute;
  top: 10px;
  left: 0;
}

#about_logo_wrap {
  margin-top: 60px;
}

#about_logo {
  background-color: #fff;
  padding: 40px 20px 50px;
  text-align: center;
}

.text_about_logo {
  margin-top: 35px;
  font-weight: 500;
}

.title_style02.mgt_adjust {
  margin-top: 130px;
}

.list_ho_wrap {
  margin-top: 60px;
  background-color: #fff;
  padding: 10px;
  display: flex;
  justify-content: space-between;
  font-size: 1.3rem;
}

.right_box {
  margin-left: 10px;
}

.list_ho li {
  display: flex;
}

.name {
  width: 80px;
  letter-spacing: 0.3rem;
}

.name.adjust {
  letter-spacing: 0;
}

.address {
  flex: 1 1 auto;
  margin-left: 10px;
}

.tel {
  width: 110px;
  margin-left: 10px;
  position: relative;
  padding-left: 15px;
  letter-spacing: -0.1rem;
}

.tel::before {
  content: '';
  width: 15px;
  height: 15px;
  background-image: url("../images/tel.png");
  display: inline-block;
  background-repeat: no-repeat;
  position: absolute;
  top: 7px;
  left: 0;
}

.special_wrap {
  margin-top: 60px;
  text-align: center;
}

.member_wrap {
  margin-top: 60px;
}

.list_member_wrap {
  background-color: #fff;
  padding: 10px;
  display: flex;
  line-height: 1;
}

.list_member li {
  display: flex;
  margin-bottom: 5px;
	line-height: 1.4;
}

.list_member li:last-child {
  margin-bottom: 0;
}

.pref {
  font-size: 1.3rem;
  width: 60px;
  height: 70px;
  background-color: #6bbc6e;
  color: #fff;
  text-align: center;
  position: relative;
}

.pref p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}

.m_name {
  font-size: 1.3rem;
  width: 423px;
  height: 70px;
  position: relative;
}

.m_name p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  padding: 8px 4px;
	line-height: 1.5;
}

.m_name.bg_c{
  background-color: #e9f5e9;
}

.m_name.none {
  text-align: center;
}

.booklet_wrap {
  margin-top: 60px;
}

.booklet {
  display: flex;
  justify-content: space-around;
  width: 640px;
  margin: 0 auto;
}

.booklet .left_box a,
.booklet .right_box a {
  width: 275px;
  height: 275px;
  color: #fff;
}

.booklet .left_box a {
  background: url("../images/booklet_01.jpg") no-repeat left top;
}

.booklet .right_box a {
  background: url("../images/booklet_02.jpg") no-repeat left top;
}

.booklet_box {
  position: relative;
  width: 100%;
  height: 100%;
}

.booklet_box p {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 3.2rem;
  text-align: center;
  line-height: 1.5;
}

.booklet a:hover img {
  opacity: 1;
}

.booklet a {
  color: #000;
  transition: all 0.3s ease 0s;
}

.booklet a:hover {
  box-shadow: 0 0 20px 0 rgba(65, 65, 147, .5);
  color: #414193;
}

.booklet_box .booklet_font_adjust {
  font-size: 5.4rem;
}

.booklet_box .booklet_font_adjust span {
  font-size: 3.2rem;
}

.simple-pagination {
  display: inline-block;
}



/* =========================================================
footer_PC_1400px以上
========================================================= */

#footer {
  background-color: #000;
  color: #fff;
  position: relative;
  min-width: 1024px;
}

#page_top {
  position: fixed;
  bottom: 20px;
  right: 5%;
}

#f_nav_wrap {
  padding: 50px 10px 0;
}

#f_nav {
  max-width: 1130px;
  margin: 0 auto;
}

#f_nav ul {
  display: flex;
  justify-content: space-between;
  color: #fff;
  font-weight: 500;
}

#f_nav ul li a {
  color: #fff;
}

#f_nav ul li a:hover {
  color: #8d80bb;
  transform: scale(1.1);
}

#copyright_wrap {
  padding: 20px 30px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: 135px;
}

.f_address_wrap {
  display: flex;
}

.f_address_rbox {
  margin-left: 1.3rem;
}

.f_logo_cn {
  line-height: 1;
  margin-bottom: 0.5rem;
}

.f_logo_cn img {
  vertical-align: top;
}

.f_address_rbox p {
  font-size: 1.4rem;
  line-height: 1.5;
}

.f_address_lbox {
  line-height: 1;
}

.copyright {
  font-size: 1.3rem;
}



/* =========================================================
#info_PC_1400px以上
========================================================= */

.pagination_wrap {
  text-align: right;
}

.pagination {
  display: inline-block;
}

.pagination li {
  background-color: #fff;
  display: inline-block;
}

.pagination li.this {
  background-color: #808080;
}

.pagination li a {
  padding: 10px 15px;
  line-height: 1;
  color:#000;
}

.pagination li a:first-of-type,
.pagination li a:last-of-type {
  padding: 10px 27px;
}

.pagination li a:hover{
  background-color: rgba(254, 107, 158, .8);
}

.pagination .triangle_R {
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid transparent;
  border-left: 7px solid #000;
  display: inline-block;
  transform: translateX(25%);
}

.pagination .triangle_L {
  width: 0;
  height: 0;
  border-top: 7px solid transparent;
  border-right: 7px solid #000;
  border-bottom: 7px solid transparent;
  border-left: 7px solid transparent;
  display: inline-block;
  transform: translateX(-25%);
}

#info #container {
  background-image: url("../images/bg_02.jpg");
}

#info .news_wrap {
  margin-bottom: 100px;
}

#info .date_wrap {
  margin-bottom: 30px;
  border-bottom: 1px solid #fff;
  padding-bottom: 10px;
}
#info .pdf_link {
	text-align: right;
}
#info .pdf_link a:hover {
	opacity:0.5;
}

#info .date_wrap .year_wrap,
#info .date_wrap .entry_date {
  font-size: 1.8rem;
}

#info .date_wrap .news_title {
  font-size: 2rem;
  line-height: 1.5;
}

#info .news_cont_wrap .img_wrap {
  float: right;
  margin: 10px 0 20px 21px;
  width: 50%;
}


/* =========================================================
#trend_PC_1400px以上
========================================================= */

#trend #container {
  background-image: url("../images/bg_03.jpg");
}

#trend .trend_cont {
  display: flex;
  margin-bottom: 100px;
}

#trend .list_nav_wrap {
  margin: 0;
  flex-shrink: 0;
  width: 70px;
}


#trend .list_nav_wrap ul li {
  font-size: 1.4rem;
  font-weight: bold;
  color: #808080;
  border-bottom: 3px solid #808080;
  text-align: center;
  margin-bottom: 50px;
  line-height: 1.2;
}
	#trend .list_nav_wrap ul li a {
		color: #808080;
	}
	#trend .list_nav_wrap ul li:hover,
	#trend .list_nav_wrap ul li.cat_00.current a,
	#trend .list_nav_wrap ul li.cat_01.current a,
	#trend .list_nav_wrap ul li.cat_01:hover a,
	#trend .list_nav_wrap ul li.cat_02.current a,
	#trend .list_nav_wrap ul li.cat_02:hover a,
	#trend .list_nav_wrap ul li.cat_03.current a,
	#trend .list_nav_wrap ul li.cat_03:hover a,
	#trend .list_nav_wrap ul li.cat_04.current a,
	#trend .list_nav_wrap ul li.cat_04:hover a,
	#trend .list_nav_wrap ul li.cat_05.current a,
	#trend .list_nav_wrap ul li.cat_05:hover a,
	#trend .list_nav_wrap ul li.cat_06.current a,
	#trend .list_nav_wrap ul li.cat_06:hover a,
	#trend .list_nav_wrap ul li.cat_07.current a,
	#trend .list_nav_wrap ul li.cat_07:hover a {
		color: #000;
	}

#trend .list_nav_wrap ul li.cat_00.current {
  color: #000;
  border-color: #000;
  letter-spacing: 0.2em;
}

#trend .list_nav_wrap ul li.cat_01.current,
#trend .list_nav_wrap ul li.cat_01:hover {
  color: #000;
  border-color: #eb6039;
}

#trend .list_nav_wrap ul li.cat_02.current,
#trend .list_nav_wrap ul li.cat_02:hover {
  color: #000;
  border-color: #00cab4;
  letter-spacing: 0;
}

#trend .list_nav_wrap ul li.cat_03.current,
#trend .list_nav_wrap ul li.cat_03:hover {
  color: #000;
  border-color: #807cd7;
}

#trend .list_nav_wrap ul li.cat_04.current,
#trend .list_nav_wrap ul li.cat_04:hover {
  color: #000;
  border-color: #6cd25a;
}

#trend .list_nav_wrap ul li.cat_05.current,
#trend .list_nav_wrap ul li.cat_05:hover {
  color: #000;
  border-color: #f0a600;
}

#trend .list_nav_wrap ul li.cat_06.current,
#trend .list_nav_wrap ul li.cat_06:hover {
  color: #000;
  border-color: #fe6b9e;
}

#trend .list_nav_wrap ul li.cat_07.current,
#trend .list_nav_wrap ul li.cat_07:hover {
  color: #000;
  border-color: #666;
}

#trend .list_nav_wrap ul li:hover {
  cursor: pointer;
}

#trend .trend_wrap {
  margin-left: 40px;
}

#trend .pagination li a:hover{
  background-color: rgba(0, 202, 180, .8);
}

#trend .date_wrap {
  margin-bottom: 30px;
  border-bottom: 1px solid #fff;
  padding-bottom: 10px;
}

#trend .date_wrap .year_wrap,
#trend .date_wrap .entry_date {
  font-size: 1.8rem;
}

#trend .date_wrap .trend_title {
  font-size: 2rem;
  line-height: 1.5;
}

#trend .pdf_link {
	text-align: right;
}
#trend .pdf_link a:hover {
	opacity:0.5;
}

#trend .trend_cont_wrap .img_wrap {
  float: right;
  margin: 10px 0 20px 21px;
  width: 50%;
}

#trend .datewrap_inner {
  margin-bottom: 10px;
}

#trend .datewrap_inner .cat.cat_06 {
  float: right;
  width: 140px;
  margin-top: 10px;
}

/* =========================================================
#login_PC_1400px以上
========================================================= */

#login #container {
  background-image: url("../images/bg_05.jpg");
}

#login label {
  display: inline-block;
}

#login #id,
#login #password {
  width: 525px;
  padding: 9.5px 0;
  margin-left: 20px;
  font-size: 1.6rem;
  background-color: #F6F6F6;
  border-width: 0;
}

#login .field-icon {
  position: absolute;
  top: 0;
  left: 95%;
}

#login .formBox {
  background-color: #fff;
  padding: 70px 100px;
  width: 990px;
  margin: 80px auto 0;
}

#login .form_wrapBox {
  display: flex;
  justify-content: space-between;

}

#login .form_wrap .inputBox {
  position: relative;
  width: 630px;
}

#login .form_wrap .inputBox:last-of-type {
  margin-top: 15px;
}

#login .text_wrap {
  margin-top: 60px;
}

#login .buttonBox input[type="submit"] {
  font-weight: bold;
  font-size: 1.4rem;
  background-color: #fdd22b;
  width: 130px;
  height: 95px;
  line-height: 1;
  border-radius: 0.5rem;
  padding: 10px 20px;
}

#login .buttonBox input[type="submit"]:hover {
  background-color: #fcca00;
}

#login .about_id {
  margin-top: 50px;
  display: flex;
  justify-content: center;
}

#login .about_id a {
  color: #000;
}

#login .about_id a:first-of-type {
  margin-right: 20px;
}

#login .about_id a:hover {
  opacity: 0.7;
}

#login .about_id a p {
  position: relative;
  padding-left: 22px;
}

#login .about_id a p::before {
  content: '';
  width: 15px;
  height: 15px;
  background: #e95464;
  position: absolute;
  top: 55%;
  left: 0;
  margin-top: -9px;
}

#login .about_id a p.forgot::before {
  background: #0075c2;
}

#login .about_id a p::after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 6px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 55%;
  left: 5px;
  margin-top: -5px;
}

.error {
  font-size: 1.3rem;
  width: 100%;
}

#id-error,
#password-error {
  margin-left: 100px;
  width: 525px;
}

/* エラーの文字色 */
form.cmxform label.error, label.error {
  color: red;
}


/* =========================================================
#archive_PC_1400px以上
========================================================= */

#archive #container {
  background-image: url("../images/bg_05.jpg");
  padding-top: 0;
}

#archive .contents {
  padding-top: 60px;
}

#archive #header_special {
  padding: 10px 20px;
  border-bottom: 7px solid #000;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#archive #h_logo_wrap_s {
  display: flex;
  align-items: center;
}

#archive #h_logo_wrap_s .sp_none {
  display: inline-block;
  margin: 0;
}

#archive #header_special h1 {
  display: flex;
  align-items: center;
}

#archive #header_special h1 img {
  width: 6.5rem;
}

#archive #header_special h1 span {
  font-size: 1.5vw;
  font-weight: 500;
  margin-bottom: 0;
  margin-left: 20px;
}

#archive #logout {
  width: 110px;
  padding: 10px 20px;
  font-weight: bold;
  vertical-align: bottom;
  background-color: #fdd22b;
  border-radius: 0.5rem;
}

#archive #logout:hover {
  background-color: #fcca00;
}

#archive .title_box {
  position: relative;
  background-color: #fdd22b;
  padding: 20px;
  text-align: center;
}

#archive h2 {
  font-size: 2rem;
  margin-bottom: 0;
  color: #000;
  display: inline-block;
  padding-right: 20px;
}

#archive h2::before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url("../images/search.png") no-repeat;
  position: relative;
  top: 5px;
}

#archive .title_box::before {
  content: "";
  position: absolute;
  bottom: -8px;
  left: 50%;
  display: block;
  width: 0;
  height: 0;
  margin-left: -8px;
  border-style: solid;
  border-width: 10px 15px 0px 15px;
  border-color: #fdd22b transparent transparent transparent;
}

#archive .form_wrap {
  background-color: #fff;
  padding: 20px 40px;
}

#archive #search_form .keyword_search_box {
  text-align: center;
  margin-top: 30px;
}

#archive #search_form #keyword {
  border: none;
  outline: 0;
  width: 450px;
  padding: 13px 20px;
  background: #eee;
  font-size: 1.6rem;
}

#archive #search_form #seach_btn {
  border: 1px solid #fdd22b;
  width: 110px;
  padding: 10px 20px;
  background: #fdd22b;
  color: #000;
  font-size: 1.4rem;
  font-weight: bold;
  border-radius: 0.5rem;
  margin-left: 20px;
}

#archive input[type="reset"] {
  background-color: transparent;
  padding: 11px 20px;
  border: 1px solid #fdd22b;
  border-radius: 0.5rem;
  font-weight: bold;
  font-size: 1.4rem;
}

#archive #search_form #seach_btn:hover,
#archive input[type="reset"]:hover {
  background: #eee;
}

#archive .check_search_box {
  margin: 0 auto;
}

#archive input[name="select"] {
  display: none;
}

#archive input[name="select"] + label {
  display: inline-block;
  width: 180px;
  height: 30px;
  margin: 0 auto 2px;
  position: relative;
  padding-left: 30px;
  line-height: 1;
}

#archive input[type="checkbox"] + label:before {
  content: '';
  border: 2px solid #5a5a5a;
  color: #1d1d1d;
  cursor: pointer;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 5px;
  outline-color: #eaeaea;
  padding: 0;
  position:relative;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  z-index:1;
}

#archive input[type="checkbox"]:checked + label:before {
  border-left: 2px solid #fca32d;
  border-bottom: 4px solid #fca32d;
  border-top: 1px solid rgba(0,0,0,0);
  border-right: 1px solid rgba(0,0,0,0);
  -webkit-transform: rotate(-45deg) scaleY(0.5);
  -moz-transform: rotate(-45deg) scaleY(0.5);
  -ms-transform: rotate(-45deg) scaleY(0.5);
  -o-transform: rotate(-45deg) scaleY(0.5);
  transform: rotate(-45deg) scaleY(0.5);
}

#archive input[name="select"]:checked + label img {
 opacity: 0.5;
}

#archive .cont_wrap {
  margin-top: 30px;
  margin-bottom: 50px;
}

#archive .cont {
  background-color: #fff;
  padding: 40px;
  display: flex;
}

#archive .details ol {
  list-style-type: cjk-ideographic;
  padding-left: 50px;
}

#archive .details .list_num {
  list-style-type: decimal;
  padding-left: 20px;
}

#archive .title_wrap {
  width: 25%;
}

#archive .title_wrap h3 {
  font-size: 2rem;
}

#archive .description_wrap {
  width: 75%;
}

#archive .description_wrap ul {
  padding: 10px;
}

#archive .accordion {
  display: none;
}

#archive .accordion {
  display: flex;
  justify-content: space-between;
  padding: 5px 25px 5px 10px;
  border-bottom: 1px solid #fdd22b;
  position: relative;
  font-size: 2rem;
  font-weight: 500;
}

#archive .accordion p {
  font-weight: bold;
}

#archive .accordion:hover {
  cursor: pointer;
}

#archive .accordion::after {
  content: "";
  position: absolute;
  right: 12px;
  transition: all 0.2s ease-in-out;
  display: block;
  width: 8px;
  height: 8px;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  top: 27%;
}

#archive .accordion.open::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 32%;
}

#archive .accordion::before {
  content: "開く";
  position: absolute;
  top: 10%;
  right: 0;
  font-size: 1.3rem;
  width: 100px;
  background-color: #fdd22b;
  text-align: center;
  border-radius: 0.5rem;
  transition: all 0.2s ease-in-out;
  font-weight: 400;
}

#archive .accordion.open::before {
  content: "閉じる";
}

#archive .description ul {
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
}

#archive .description ul li {
  width: 50%;
}

#archive .description ul li a,
#archive .details a {
  color: #000;
  display: block;
}

#archive .details p a {
  position: relative;
  padding-right: 20px;
}

#archive .details p a::after {
  content: "";
  width: 12px;
  height: 12px;
  border: 1px solid;
  border-color: #fdd22b #fdd22b transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  top: 12px;
  right: 12px;
}


#archive .description ul li a:hover,
#archive .details a:hover {
  opacity: 0.6;
}

#archive .details {
  margin-top: 20px;
  padding: 10px;
  display: none;
}

#archive .details_leftbox,
#archive .details_rightbox {
  width: 50%;
}

#archive .details_box_inner {
  margin-bottom: 20px;
}

#archive .details_box_inner p {
  margin-bottom: 10px;
}

#archive .description_wrap ul.inner {
  padding: 0;
  padding-left: 20px;
}

#archive .list_box,
#archive ul.inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  line-height: 1.7;
}

#archive .list_box li,
#archive ul.inner li {
  width: 305px;
  margin-bottom: 10px;
}

#archive .list_box li:nth-child(even) {
  width: 255px;
}

#archive .list_box li > ol > li {
  margin-bottom: 0;
}

#archive .details_box_inner p {
  font-weight: bold;
  border-bottom: 1px solid #fdd22b;
}

#archive .details_box_inner p.font_bold {
  font-weight: 500;
}

/* =========================================================
#archive.result_PC_1400px以上
========================================================= */

#archive.result h3 {
  font-size: 2rem;
  font-weight: normal;
  text-align: center;
}

#archive.result h3::before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url("../images/search.png") no-repeat;
  position: relative;
  top: 5px;
}

#archive.result .cont {
  padding-bottom: 0;
}

#archive.result .cont:last-of-type {
  padding-bottom: 40px;
}

#archive.result .result_cont  {
  border-bottom: 1px solid #80868b;
  display: block;
  width: 100%;
  text-align: left;
  padding-bottom: 20px;
}

#archive.result .cont:last-of-type .result_cont {
  border: none;
  padding-bottom: 0;
}

#archive.result .cond {
  display: flex;
  color: #6f6f6f;
  font-size: 1.4rem;
}

#archive.result .cond #Selected,
#archive.result .cond #key {
  font-weight: normal;
  font-size: 1.6rem;
}

#archive.result .cond .key {
  margin-left: 2rem;
}

#archive.result .cond_title {
  position: relative;
  padding-left: 2rem;
  text-indent: -2rem;
  line-height: 1.5;
}

#archive.result .cond_title::before {
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  background-color: #000;
  position: relative;
  top: 2px;
  margin-right: 5px;
}

#archive.result .marker {
  background-color: #fdeead;
}

#archive.result .cond_text {
  line-height: 1.5;
}

#archive.result .cond_text {
  margin-top: 10px;
}

#archive.result .cont a {
  color: #000;
}

#archive.result  .cont a .cond_text,
#archive.result  .cont a .cond_url {
  color: #80868b;
  font-size: 1.4rem;
  text-align: justify;
  text-justify: inter-character;
}

#archive.result  .cont a:hover {
  opacity: 0.7;
}

/* =========================================================
#booklet_PC_1400px以上
========================================================= */

#booklet #container {
  background-image: url("../images/bg_07.jpg");
}

#booklet .booklet_cont {
  display: flex;
  margin-bottom: 100px;
}

#booklet .flyer .booklet_cont p {
  word-break: break-all;
}

#booklet .booklet_cont .booklet_cont_Lbox {
  width: 680px;
}

#booklet .booklet_cont .booklet_cont_Lbox h3 {
  font-size: 2.3rem;
  font-weight: normal;
  line-height: 1.2;
}

#booklet .booklet_cont .booklet_cont_Lbox h3 span {
  font-size: 1.7rem;
}

#booklet .booklet_cont .booklet_cont_Rbox {
  flex: 1;
  text-align: center;
}

#booklet .booklet_cont .booklet_cont_Rbox a:hover img {
  transition: none;
}

#booklet .booklet_cont .booklet_cont_Rbox a:hover img {
  transform: scale(1.05);
  opacity: 1;
  transition: all 0.3s ease 0s;
}

#booklet .booklet_cont .booklet_cont_Lbox a.arrow_s:link, a.arrow_s:visited {
  position: relative;
  display: inline-block;
  padding-left: 12px;
  color: #e94831;
  font-weight: bold;
  text-decoration: none;
}

#booklet .booklet_cont .booklet_cont_Lbox a.arrow_s:hover {
  transform: scale(1.1);
}

#booklet .booklet_cont .booklet_cont_Lbox .arrow_s:before {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 0 6px 8px;
  border-color: transparent transparent transparent #e94831;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -6px;
}

#booklet .pagination li a:hover{
  background-color: rgba(65, 65, 147, .8);
}

/* =========================================================
#register_PC_1400px以上
========================================================= */

#register .contents {
  padding-top: 60px;
}

#register #container {
  background-image: url("../images/bg_05.jpg");
}

#register .form_wrap {
  background-color: #fff;
  padding: 50px 100px;
  margin: 0 auto;
}

#register h2 {
  margin-bottom: 30px;
}

#register h3 {
  font-size: 2.5rem;
  font-weight: 400;
  text-align: center;
  line-height: 1;
  margin-bottom: 10px;
}

#register .text_wrap {
  margin-bottom: 30px;
}

#register h4 {
  font-weight: 500;
}

#register .form_wrap .inputBox {
  position: relative;
  line-height: 1.5;
  margin-bottom: 30px;
}

#register .form_wrap .inputBox label {
  display: block;
  margin-bottom: 5px;
}

#register .form_wrap .inputBox label span {
  font-size: 1.2rem;
  padding: 0 5px;
  margin-right: 8px;
  display: inline-block;
  border-radius: 3px;
  color: #fff;
}

#register .form_wrap .inputBox .required {
  background-color: #e95464;
}

#register .form_wrap .inputBox .optional {
  background-color: #999;
}

#register .input_field {
  width: 100%;
  display: block;
  padding: 10px;
  background-color: #F6F6F6;
  border-width: 0;
}

#register .note {
  font-size: 1.2rem;
  color: #666;
}

#register .sey,
#register .mei,
#register .form_tel {
  display: inline-block;
}

#register .form_pref,
#register .jinja_name,
#register .post,
#register .post_k,
#register .job {
  width: 30%;
}

.register_sub {
  border: 1px solid #fdd22b;
  width: 110px;
  padding: 10px 20px;
  background: #fdd22b;
  color: #000;
  font-size: 1.4rem;
  font-weight: bold;
  border-radius: 0.5rem !important;
}

#register .buttonBox {
  text-align: center;
  margin-top: 30px;
}

#register .buttonBox input[type="submit"]:hover {
  background-color: #fcca00;
}

.form_select select{
  outline:none;
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.arrow_select {
  position: relative;
}

.arrow_select::before {
  content:"";
  display:block;
  position:absolute;
  right:15px;
  left:auto;
  top:17px;
  bottom:0;
  margin:auto;
  width:10px;
  height:10px;
  z-index:1;
  border-right:2px solid #999;
  border-bottom:2px solid #999;
  -webkit-transform:rotate(45deg);
  transform:rotate(45deg);
  -webkit-transition:all 0.5s;
  transition:all 0.5s;
}

.form_select:hover::before {
  border-right:2px solid #666;
  border-bottom:2px solid #666;
  -webkit-transition:all 0.5s;
  transition:all 0.5s;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

.clearfix:before {
  content: "";
	display: block;
	clear: both;
}

.clearfix {
	display: block;
}

input[type="radio"] {
  position: absolute;
  visibility: hidden;
}

.navi_wrap li {
  float: left;
  text-align: center;
  width : 25% ; /* 未対応ブラウザ用フォールバック */
  width : -webkit-calc(100% / 4) ;
  width : calc(100% / 4) ;
  list-style-type: none;
  color: #666;
  line-height: 1;
  border-right: 1px solid #fff;
  background: #fcf7e3;
}

.navi_wrap li:last-of-type {
  border-right: none;
}

.navi_wrap li input:hover {
  opacity: 0.8;
  cursor: pointer;
}

.navi_wrap li label {
  cursor: pointer;
  width: 100%;
  display: inline-block;
  padding: 25px 5px;
  font-weight: 500;
  color: #000;
}

.navi_wrap li.select {
  position: relative;
  background: #fdd22b;
}

.navi_wrap li.select::before {
	content: "";
	position: absolute;
	bottom: -10px;
	left: 50%;
	display: block;
	width: 0;
	height: 0;
	margin-left: -8px;
	border-style: solid;
	border-width: 10px 8px 0px 8px;
	border-color:	#fdd22b transparent transparent transparent;
}

.flex_box {
  display: flex;
}

.flex_box span:not(:first-of-type) {
  margin-left: 10px;
}

#mei-error {
  margin-left: 10px;
}


/* =========================================================
#forgot_PC_1400px以上
========================================================= */

#forgot #container {
  background-image: url("../images/bg_05.jpg");
}

#forgot .text_wrap {
  margin-bottom: 30px;
}

#forgot .formBox {
  background-color: #fff;
  padding: 50px 100px;
  margin: 0 auto;
}

#forgot .form_wrap .inputBox label {
  display: block;
  margin-bottom: 5px;
}

#forgot .form_wrap .inputBox label span {
  font-size: 1.2rem;
  padding: 0 5px;
  margin-right: 8px;
  display: inline-block;
  border-radius: 3px;
  color: #fff;
}

#forgot .form_wrap .inputBox .required {
  background-color: #e95464;
}

#forgot .form_wrap .inputBox .optional {
  background-color: #999;
}

#forgot .input_field {
  width: 100%;
  display: block;
  padding: 10px;
  background-color: #F6F6F6;
  border-width: 0;
}

#forgot .buttonBox {
  text-align: center;
  margin-top: 30px;
}

.forgot_sub {
  border: 1px solid #fdd22b;
  width: 110px;
  padding: 10px 20px;
  background: #fdd22b;
  color: #000;
  font-size: 1.4rem;
  font-weight: bold;
  border-radius: 0.5rem !important;
}

#forgot .buttonBox input[type="submit"]:hover {
  background-color: #fcca00;
}

#forgot .note {
  font-size: 1.5rem;
}


/* =========================================================
#change_PC_1400px以上
========================================================= */
#change #container {
  background-image: url("../images/bg_05.jpg");
}

#change .text_wrap {
  margin-bottom: 30px;
}

#change .formBox {
  background-color: #fff;
  padding: 50px 100px;
  margin: 0 auto;
}

#change .form_wrap .inputBox label {
  display: block;
}

#change .form_wrap .inputBox label span {
  font-size: 1.2rem;
  padding: 0 5px;
  margin-right: 8px;
  display: inline-block;
  border-radius: 3px;
  color: #fff;
}

#change .form_wrap .inputBox .required {
  background-color: #e95464;
}

#change .form_wrap .inputBox .optional {
  background-color: #999;
}

#change .input_field {
  width: 100%;
  display: block;
  padding: 10px;
  background-color: #F6F6F6;
  border-width: 0;
}

#change .form_wrap .inputBox {
  position: relative;
}

#change .field-icon {
  position: absolute;
  top: 60%;
  left: 95%;
  line-height: 1;
}

.change_sub {
  border: 1px solid #fdd22b;
  width: 110px;
  padding: 10px 20px;
  background: #fdd22b;
  color: #000;
  font-size: 1.4rem;
  font-weight: bold;
  border-radius: 0.5rem !important;
}

#change .buttonBox {
  text-align: center;
  margin-top: 30px;
}

#change .buttonBox input[type="submit"]:hover {
  background-color: #fcca00;
}

#change .note {
  font-size: 1.2rem;
  color: #666;
  margin-bottom: 30px;
}


/* ==================================================================================================================
画面幅1400px未満
================================================================================================================== */

@media screen and (max-width: 1399px) {
  /* =========================================================
  header_PC_1400px未満
  ========================================================= */

  #header {
    height: 80px;
    padding: 10px;
    border-bottom: 7px solid #000;
    display: block;
  }

  #h_logo_wrap {
    width: 235px;
  }

  #h_nav_wrap {
    display: none;
  }

  #h_nav_wrap_sp {
    margin: 10px -10px 0;
    padding: 0;
    text-align: left;
    width: 30%;
    position: absolute;
    right: 10px;
  }

  #menu_bg {
    position: fixed;
    width: 30%;
    right: 0;
    height: 100vh;
    background-color: rgba(255, 255, 255, .9);
    display: none;
    z-index: 9998;
  }

  #h_nav_sp ul {
    display: block;
  }

  #h_nav_sp ul li {
    margin: 0;
  }

  #h_nav_sp ul li a {
    background-color: #fff;
    padding: 10px 40px 10px 20px;
    position: relative;
  }

  #h_nav_sp ul li a:hover {
    transform: none;
    opacity: 0.7;
  }

  #h_nav_sp ul li a::after {
  	content: '';
    width: 0.8rem;
    height: 0.8rem;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 2rem;
    margin-top: -0.3rem;
  }

  #Menu{
  	position: absolute;
  	top:0;
  	right:0;
  	background-color: #fff;
  	width: 73px;
  	height: 73px;
  	display: flex;
  	justify-content: center;
  	align-items: center;
  }

  .menu-trigger,
  .menu-trigger span {
  	display: inline-block;
  	transition: all .4s;
  	box-sizing: border-box;
  }
  .menu-trigger {
  	position: relative;
  	width: 32px;
  	height: 30px;
  }
  .menu-trigger:hover {
    cursor: pointer;
  }
  .menu-trigger span {
  	position: absolute;
  	left: 0;
  	width: 100%;
  	height: 4px;
  	background-color: #000;
  	border-radius: 4px;
  }
  .menu-trigger span:nth-of-type(1) {
  	top: 0;
  }
  .menu-trigger span:nth-of-type(2) {
  	top: 14px;
  }
  .menu-trigger span:nth-of-type(3) {
  	bottom: -2px;
  }

  .menu-trigger.active span:nth-of-type(1) {
  	transform: translateY(14px) rotate(-45deg);
  }
  .menu-trigger.active span:nth-of-type(2) {
  	opacity: 0;
  }
  .menu-trigger.active span:nth-of-type(3) {
  	transform: translateY(-14px) rotate(45deg);
  }

  #container {
    padding-top: 80px;
  }

/* =========================================================
#archive_PC_1400px未満
========================================================= */
  #archive #header_special h1 span {
    font-size: 2rem;
  }

}

/* ==================================================================================================================
画面幅560px以下
================================================================================================================== */

@media screen and (max-width: 559px) {

  body {
    min-width: initial;
    width: 100%;
  }

  /* =========================================================
  #container_SP
  ========================================================= */

  #menu_bg {
    width: 100vw;
  }

  #h_nav_wrap_sp {
    width: 100vw;
  }

  #main_visual {
    width: 80%;
    margin: 0 auto;
  }

  #main_visual .fade_in img {
    width: 33.3%;
  }

  #main_visual_wrap {
    min-width: initial;
  }

  #main_visual_inner {
    padding: 50px 10px;
  }

  #main_v_text_wrap {
    margin-top: 30px;
  }

  .contents_inner {
    width: 99%;
  }

  .contents_wrap {
    min-width: initial;
  }

  .contents {
    padding: 50px 10px 80px;
  }

  .list_member_wrap {
    display: block;
  }

  .list_ho_wrap {
    display: block;
  }

  .booklet {
    display: block;
    width: 100%;
  }

  #main_v_text {
    height: auto;
    width: 80%;
    writing-mode: initial;
    line-height: 2;
    font-size: 1.4rem;
  }

  .news_wrap_inner {
    display: block;
  }

  .list_news li {
    display: block;
  }

  .list_news .entry_txt {
    width: 99%;
  }

  .entry_date {
    margin-left: 10px;
  }

  .trend_wrap .entry_date {
    margin-top: 0;
  }

  .year_wrap {
    font-size: 2rem;
    text-align: center;
    margin-bottom: 30px;
  }

  .trend_wrap .year_wrap {
    margin-top: 0;
  }

  .list_link_wrap a {
    font-size: 2rem;
  }

  .trend_wrap_inner {
    display: block;
  }

  .list_trend li {
    display: block;
  }

  .list_trend .entry_txt {
    width: 99%;
    margin-top: 0;
  }

  .cat {
    width: 45%;
  }

  .entry_txt {
    margin-left: 10px;
    font-size: 1.4rem;
  }

  .list_nav {
    flex-wrap: wrap;
/*
    justify-content: center;
*/
  }

  .list_nav li {
    margin: 0 0 2% 2%;
    width: 100px;
    height: 100px;
  }

  .list_nav li div p {
    font-size: 1.4rem;
  }

  .list_nav li a p {
    line-height: 1;
  }

  .text_about_logo {
    text-align: left;
    text-align: justify;
    text-justify: inter-character;
  }

  .list_ho_wrap {
    padding: 20px;
    font-size: 1.4rem;
  }

  .list_ho li {
    display: block;
    margin-bottom: 15px;
  }

  .name {
    width: 100%;
    font-weight: bold;
  }

  .address,
  .tel {
    line-height: 1.5;
  }

  .tel::before {
    top: 3px;
  }

  .right_box {
    margin-left: 0;
  }

  .pref {
    font-size: 1.4rem;
    width: 80px;
    height: 120px;
  }

  .m_name {
    height: 120px;
    font-size: 1.4rem;
    line-height: 1.2;
  }

  .list_member_wrap .right_box {
    margin-top: 5px;
  }

  .special_logo img {
    width: 50%;
  }

  .booklet .left_box a,
  .booklet .right_box a {
    margin: 0 auto;
  }

  .booklet_wrap .left_box {
    text-align: center;
  }

  .booklet_wrap .right_box {
    text-align: center;
    margin-top: 30px;
  }

  /* =========================================================
  footer_SP
  ========================================================= */

  #footer {
    min-width: initial;
  }

  #f_nav_wrap {
    padding-top: 25px;
  }

  #f_nav ul {
    display: block;
    padding: 20px;
    font-size: 1.4rem;
  }

  #copyright_wrap {
    display: block;
    padding: 20px;
    margin-top: 0
  }

  .copyright {
    font-size: 1.2rem;
    text-align: center;
    margin-top: 10px;
  }

  .f_address_rbox {
    margin-left: 2rem;
  }

  .f_address_rbox p {
    line-height: 1.2;
  }

  #page_top {
    width: 40px;
    box-shadow: 0 1px 4px 0 rgba(0,0,0,.37);
    opacity: 0.9;
  }

  .pagination_wrap {
    text-align: center;
  }

	#f_nav ul li a:hover {
	  color: #8d80bb;
	  transform: scale(1);
	}

  /* =========================================================
  #info_SP
  ========================================================= */

  #info .news_cont_wrap .img_wrap {
    float: none;
    width: 100%;
    margin: 10px 0 20px 0;
  }


  /* =========================================================
  #trend_SP
  ========================================================= */

  #trend .trend_wrap {
    margin-left: 0;
  }

  #trend .trend_cont {
    display: block;
  }

  #trend .list_nav_wrap {
    width: 100%;
  }

  #trend .list_nav_wrap ul {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
  }

  #trend .list_nav_wrap ul li {
    width: 38%;
    margin-bottom: 20px;
    line-height: 1.2;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  #trend .trend_cont_wrap .img_wrap {
    float: none;
    width: 100%;
    margin: 10px 0 20px 0;
  }

  #trend .datewrap_inner .cat.cat_06 {
    float: none;
    margin-left: 0;
    width: 50%;
  }

  /* =========================================================
  #login_SP
  ========================================================= */

  #login .form_wrapBox {
    display: block;
  }

  #login .formBox {
    width: 100%;
    padding: 50px 20px;
  }

  #login #id,
  #login #password {
    width: 100%;
    margin-left: 0;
  }

  #login .buttonBox {
    width: 100%;
    margin-top: 30px;
    text-align: center;
  }

  #login .buttonBox input[type="submit"] {
    width: 110px;
    height: auto;
  }

  #login .about_id {
    width: 100%;
    display: block;
  }

  #login .form_wrap .inputBox {
    width: 100%;
  }

  #login .field-icon {
    top: 35px;
    left: 90%;
  }

  #id-error,
  #password-error {
    margin-left: 0;
    width: 100%;
  }

  /* =========================================================
  #archive_SP
  ========================================================= */

  #archive #header_special {
    padding: 10px 15px;
  }

  #archive .form_wrap {
    padding: 20px 10px;
  }

  #archive input[name="select"] + label {
    width: 46%;
    padding-left: 0;
    font-size: 1.3rem;
  }

  #archive input[name="select"] + label:nth-child(even) {
    margin-left: 10px;
  }

  #archive #header_special h1 {
    line-height: 1.2;
  }

  #archive #header_special h1 img {
    width: 5.5rem;
  }

  #archive #header_special h1 span {
    font-size: 1.5rem;
    margin-left: 10px;
  }

  #archive #logout {
    width: 90px;
    padding: 10px 0;
  }

  #archive #search_form #keyword {
    width: 100%;
  }

  #archive #search_form #seach_btn {
    width: 100%;
    margin: 20px 0 0;
  }

  #archive input[type="reset"] {
    width: 100%;
    margin: 10px 0 0;
  }

  #archive .cont {
    padding: 20px 10px 50px;
    display: block;
  }

  #archive .title_wrap {
    width: 100%;
    text-align: center;
  }

  #archive .description_wrap {
    width: 100%;
    margin-top: 30px;
  }

  #archive .accordion::before {
    top: 30%;
  }

  #archive .accordion::after {
    top: 50%;
  }

  #archive .accordion.open::after {
    top: 47%;
  }

  #archive .description ul {
    display: block;
  }

  #archive .description ul li {
    width: 100%;
  }

  #archive .details_leftbox,
  #archive .details_rightbox {
    width: 100%;
  }

  #archive #h_logo_wrap_s .sp_none {
    display: none;
  }

  #archive .list_box li,
  #archive ul.inner li {
    width: 100%;
  }

  /* =========================================================
  #archive.result_SP
  ========================================================= */

  #archive.result .cond {
    display: block;
  }

  #archive.result .cond .key {
    margin-left: 0;
    margin-bottom: 1rem;
  }

  #archive.result .cont:last-of-type {
  padding-bottom: 20px;
  }

  #archive.result .cont {
    padding: 20px 15px 10px;
  }


  /* =========================================================
  #booklet_SP
  ========================================================= */

  #booklet .booklet_cont {
    display: block;
  }

  #booklet .booklet_cont .booklet_cont_Lbox {
    width: 100%;
  }
  #booklet .booklet_cont .booklet_cont_Lbox .arrow_box {
    text-align: center;
  }

  #booklet .booklet_cont .booklet_cont_Rbox {
    margin: 0;
    text-align: center;
  }

  /* =========================================================
  #register_SP_560px未満
  ========================================================= */

  #register .special_cont {
    width: 100%;
  }

  #register .form_wrap {
    padding: 30px 20px;
  }

  #register .form_pref,
  #register .jinja_name,
  #register .post,
  #register .post_k,
  #register .job {
    width: 100%;
  }

  #register h3 {
    font-size: 2rem;
  }

  .flex_box {
    justify-content: space-between;
  }

  .flex_box span {
    margin-right: 0;
  }

  .navi_wrap li {
    font-size: 1.2rem;
    padding: 0;
  }

  .flex_box span {
    flex: 1 1 auto;
  }

  /* =========================================================
  #forgot_SP_560px未満
  ========================================================= */

  #forgot .formBox {
    padding: 30px 20px;
  }

  /* =========================================================
  #change_SP_560px未満
  ========================================================= */

  #change .formBox {
    padding: 30px 20px;
  }

  #change .field-icon {
    left: 90%;
  }

}
