@charset "UTF-8";
/*
Foundation
Component
Main Contents
Individual pages
JS initial
Utility
*/
/*
  This mixin can be used to set the object-fit:
  @include object-fit(contain);

  or object-fit and object-position:
  @include object-fit(cover, top);
*/
/* Foundation -------------------------------*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, .itemSearch_control-input label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video, input, textarea {
  border: 0;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  text-decoration: none;
  font-weight: normal;
  font-style: normal;
  box-sizing: border-box;
}

body {
  font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", "Yu Gothic", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
  line-height: 1.6;
  color: #333;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  position: relative;
}

img {
  text-decoration: none;
  vertical-align: top;
  font-size: 0px;
}

article, aside, main, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
  box-sizing: border-box;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

a {
  color: #000;
  box-sizing: border-box;
  outline: none;
}

p {
  color: #333;
}
strong {
  color: #666;
    font-weight: bold;
}
.form-group{margin-bottom: 10px;}
.tag_etc{font-size: 120% !important; display: inline-block !important; margin-bottom: 10px;}
@media (max-width: 767px) {
  .pc{display: none;}
  .img_r{width: 100%;}
  .container {
      padding: 10px;
  }
  .c_thumbnail_item{width:100% !important;}

}
@media (min-width: 767px) {
  .sp{display: none;}
}
.c_thumbnail {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 27px;
}
.c_thumbnail_item {
    position: relative;
    width: 31.5%;
    margin-right: 1.3%;
    margin-bottom: 30px;
    padding: 15px;
    background: #eee;
}
.c_thumbnail_title{
  font-size: 120%;
  font-weight: bold;
}
.c_thumbnail_item:nth-child(3){
  margin-right: 0%;

}
.c_thumbnail_img {
    margin-bottom: 10px;
    border: 1px solid #ccc;
}
.c_thumbnail_img img{
  width: 100%;
}
.c_thumbnail_item a {
    text-decoration: none;
    display: block;
}
.search_tag{margin-bottom: 10px;}
.itemSearch_control-label{
  font-weight: bold;
  font-size: 80%;
}
.itemSearch_control-input input{
	display: none;
}
.itemSearch_control-input label{
	display: inline-block;
	position: relative;
	cursor: pointer;
	padding: 2px 5px 0 25px;
	border-radius: 2px;
	color: #3e4956;
	font-size: 117%;
	text-align: center;
	line-height: 1;
}
.itemSearch_control-input label:before{
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  margin-top: 0;
  border-radius: 50%;
  border: 1px solid #6c6c6c;
}
.itemSearch_control-input input[type="checkbox"]:checked +  label:after {
  position: absolute;
  content: "";
  top: 0;
  left: 0px;
  width: 6px;
  height: 6px;
  margin-top: 0;
  border-radius: 50%;
  background: #fff;
  border: 6px solid #00a0a4;
}
.contents__body h3 {
    border: 1px solid #0f6d71;
    font-size: 22px;
    margin-bottom: 20px;
    padding: 10px;
}
.contents__body h4 {
    border-left: 4px solid #0f6d71;
    font-size: 20px;
    margin-bottom: 20px;
    padding: 10px;
}
.contents__body h5 {
    color: #0f6d71;
    font-size: 120%;
    font-weight: bold;
    margin-bottom: 5px;
}
.contents__body p {
    margin: 0 0 30px 0;
    line-height: 1.6;
}
.contents__body_imgtitle{
    text-align: center;
}
.contents__body_imgtitle img{
    width: 70%;
}
.contents__body img {
    border: 2px solid #fff;
    box-shadow: 0 0 5px #999;
}
.img-responsive {
    max-width: 100%;
    height: auto;
}
.list-img li {
    float: left;
    margin-right: 2%;
    width: 49%;
}
.list-img li:last-child {
    margin-right: 0;
}
.list-normal {
    list-style: disc outside;
    margin: 10px 0 30px 0;
    padding-left: 20px;
}
.list-number {
    list-style: decimal outside;
    margin: 10px 0 30px 0;
    padding-left: 20px;
}
.fc-blue {
    color: #0f6d71;
}
.w45 {
    width: 45%;
}
.pull-right {
    float: right;
}
.pull-left {
    float: left;
}
.p-t-30 {
    padding-top: 30px;
}
.p-b-30 {
    padding-bottom: 30px;
}

.data {
    background-color: #eff9f8;
    border-radius: 8px;
    padding: 20px 20px 10px;
}
.contents-block {
    padding-bottom: 30px;
}
.list-img {
    margin-bottom: 20px;
}
.clearfix::after {
    clear: both;
}
.clearfix::before, .clearfix::after {
    content: "";
    display: table;
}
.center .img-responsive {
    max-width: 60%;
    height: auto;
}
.center {
    text-align: center;
}
.img-graph {
    max-width: 100%;
    width: 100%;
    height: auto;
}
.data__item--pdf {
    background-image: url(../img/detail/icon/icon_pdf.png);
}
.data__item--xls {
    background-image: url(../img/detail/icon/icon_xls.png);
}
.data__item--doc {
    background-image: url(../img/detail/icon/icon_doc.png);
}
.data__item--ppt {
    background-image: url(../img/detail/icon/icon_ppt.png);
}
.data__item--movie {
    background-image: url(../img/detail/icon/icon_youtube.png);
}
.data__item {
    background-position: left center;
    background-repeat: no-repeat;
    background-size: contain;
    color: #333;
    padding: 5px 0 5px 30px;
}
.data li {
    margin-bottom: 10px;
}
.subtitle {
    font-weight: bold;
}

.table-normal {
  width: 100%;
  border-collapse: collapse;
}
.table-normal th, .table-normal td {
  border: 1px solid #ccc;
  padding: 10px;
  vertical-align: top;
}
.table-normal th {
  background-color: #eff9f8;
  white-space: nowrap;
}

.contact_wrap{
  display: -ms-flexbox;
  display: flex;

  flex-wrap: wrap;
  }
.p_form_body {
  margin-right: 30px;
  width: 440px;
}
.p_map p{
  font-size: 90%;
  margin-bottom: 30px;
}
.p_form input, .p_form textarea {
      width: 100%;
      display: block;
      border: solid 1px #c6b27b;
      background-color: #fcf9f2;
      padding: 5px;
      border-radius: 0;
}
.p_form_footer {
    width: 200px;
    margin-right: auto;
    margin-left: auto;
    margin-top: 20px;
}
.p_form button {
    background-color: transparent;
}
.c_button__border {
    color: #4a2900;
    border: solid 1px #4a2900;
}
.c_button {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 134%;
    position: relative;
    line-height: 1;
    padding: 10px;
}
/* overview page ------------------------------------*/
.contents__body_ttl {
    border: none !important;
    color: #0f6d71;
    font-size: 120% !important;
    font-weight: bold;
    margin-bottom: 5px !important;
    padding: 0 !important;
}

.contents__body_img {
  margin-bottom: 40px;
  width: 70%;
  display: block;
  margin: 0 auto 30px;
}
.contents__body_linkBox {
  border: 1px solid #666;
  margin-bottom: 0 !important;
  padding: 10px 1em 16px 2em;
  text-indent: -1em;
}
.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.contents__body_linkBox a {
  text-indent: -1em;
}
@media (max-width:767px){
  .contents__body_img{
    width:100%;
  }
  .p_form_body {
    width: 100%;
    margin-right: 0px !important;
  }
  .contact_inner{
    padding: 0 10%;
    width: 100%;
    margin: 0 auto;
  }
  .contact_wrap{
    display: block;
  }
  .p_form{
    margin-bottom: 30px;
  }
  .ggmap {
    margin-bottom: 30px;
  }

}
/* Plugins ------------------------------------*/
/*slick*/
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Custom Slick slider css -------------------*/
.slick-slider {
  position: relative;
}

.slick-arrow {
  color: #fff;
  width: 48px;
  height: 48px;
  background-color: transparent;
  border: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  font-size: 60px;
  padding: 0;
  position: absolute;
  top: calc(50% - 27px);
  z-index: 9;
}

@media (max-width: 767px) {
  .slick-arrow {
    font-size: 40px;
  }
}

.slick-prev {
  left: 0;
}

.slick-prev:after {
  content: '\63';
  font-family: "icofont";
}

.slick-next {
  right: 0;
}

.slick-next:after {
  content: '\61';
  font-family: "icofont";
}

.slick-dots {
  text-align: center;
  margin-top: 13px;
}

@media (max-width: 767px) {
  .slick-dots {
    margin-top: 11px;
  }
}

.slick-dots li {
  display: inline-block;
  margin-left: 4.5px;
  margin-right: 4.5px;
}

.slick-dots button {
  background-color: #b9b9b9;
  text-indent: -9999px;
  border: none;
  width: 12px;
  height: 12px;
  border-radius: 100%;
  padding: 0;
}

@media (max-width: 767px) {
  .slick-dots button {
    width: 10px;
    height: 10px;
  }
}

.slick-dots .slick-active button {
  background-color: #000;
}

/* Layout -------------------------------------*/
body {
  background: #fff;
  font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", "Yu Gothic", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
}

p {
  line-height: 1.9;
}

p + p {
  margin-top: 0.5em;
}

.l_header {
  color: #fff;
  top: 0;
  z-index: 20;
  text-align: center;
  position: relative;
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
}

.l_header .l_container {
  padding: 0;
}

@media (min-width: 768px) {
  .l_header .l_container {
    display: flex;
    justify-content: center;
  }
  .l_container h1{
    margin-right: 20px;
    margin-left: 29%;
    margin-top: 5px;
    }
}

.l_header_logo {
  object-fit: contain;
  font-family: "object-fit: contain";
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 384px;
  height: 29px;
}

@media (max-width: 767px) {
  .l_header_logo {
    width: 230px;
    height: 33px;
  }
  .l_container p {
    }
  .l_container p img{
    width: 44%;
    }
}

.l_header_logo img {
  width: 100%;
  height: auto;
  display: block;
}

.l_header_burger {
  display: block;
  position: absolute;
  border: none;
  padding: 0;
  cursor: pointer;
  top: 20px;
  right: 13px;
  background-color: transparent;
}

.l_header_burger img {
  object-fit: contain;
  font-family: "object-fit: contain";
  width: 31px;
  height: 24px;
  image-rendering: crisp-edges;
}

@media (min-width: 768px) {
  .l_header_burger {
    display: none;
  }
}

.l_header_upper {
  background-color: #0f6d71;
  position: relative;
  padding: 10px 0;
  z-index: 20;
}

@media (max-width: 767px) {
  .l_header_upper {
    padding: 17px 13px;
  }
}

@media (max-width: 767px) {
  .l_header_upper .l_container {
    padding: 0;
  }
}

.l_header_menu {
  width: 100%;
  display: block;
  position: relative;
  background-color: #0f6d71;
  z-index: 19;
  opacity: 0;
  display: none !important;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

@media (max-width: 767px) {
  .l_header_menu .l_container {
    padding: 0;
  }
}

.l_header_menu_btn {
  color: #fff;
  display: inline-block;
  text-decoration: none;
  background-color: #0f6d71;
  padding: 14px 14px;
  font-weight: bold;
}

@media (min-width: 768px) {
  .l_header_menu_btn {
    position: relative;
    z-index: 19;
  }
}

@media (max-width: 767px) {
  .l_header_menu_btn {
    background-color: #fff;
    border-bottom: 1px solid #0f6d71;
    color: #0f6d71;
    display: block;
    line-height: 1;
    padding: 22px 25px;
    position: relative;
    text-align: left;
  }
}

@media (min-width: 768px) {
  .l_header_menu_btn:hover {
    background-color: #137377;
  }
}

@media (max-width: 767px) {
  .l_header_menu_btn:after {
    content: "\61";
    font-family: "icofont";
    position: absolute;
    right: 29px;
    top: 22px;
    font-size: 134%;
    transition: transform 400ms ease-out;
  }
}

@media (max-width: 767px) and (-webkit-min-device-pixel-ratio: 0) {
  .l_header_menu_btn:after {
    top: 24px;
  }
}

@media (max-width: 767px) {
  .l_header_menu_btn.is_open:after {
    transform: rotate(90deg);
  }
}

.l_header_menu_slide {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  width: auto;
}

@media (min-width: 768px) {
  .l_header_menu_slide {
    position: absolute;
    bottom: 0;
    z-index: 18;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  }
}

@media (min-width: 768px) {
  .l_header_menu_slide.is_open {
    bottom: auto;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  }
}

@media (min-width: 768px) {
  .l_header_menu_slide .l_header_menu_btn {
    min-width: 150px;
  }
}

@media (max-width: 767px) {
  .l_header_menu_slide .l_header_menu_btn {
    padding-left: 28px;
  }
  .l_header_menu_slide .l_header_menu_btn:before {
    content: '・';
  }
}

@media (min-width: 768px) {
  .l_header_menu_title {
    background: none;
  }
}

.l_header_menu_title:hover {
  background: none;
}

@media (min-width: 768px) {
  .l_header_menu_title:hover {
    opacity: 0.8;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
  }
}

@media (max-width: 767px) {
  .l_header_menu_title:hover {
    background-color: #fff;
  }
}

@media (min-width: 768px) {
  .l_header_menu_title + .l_header_menu_title,
  .l_header_menu_slide + .l_header_menu_title {
    background: url(../img/header/divider.gif) no-repeat center left;
  }
}

.l_main {
  background: url(../img/common/mainBg.png) repeat center top;
}

.l_container {
  width: auto;
  max-width: 800px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

.l_footer {
  -ms-flex-align: center;
      align-items: center;
  color: #fff;
  background-color: #666;
  font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", "Yu Gothic", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
  -ms-flex-pack: center;
      justify-content: center;
  letter-spacing: 0.1em;
  padding: 0;
  box-shadow: 1px 0px 5px 0px rgba(0, 0, 0, 0.2);
}

.l_footer a {
  color: #fff;
}

.l_footer hr {
  border: none;
  height: 1px;
  background-color: #949494;
  margin: 12px 0 19px;
}

.l_footer_btn {
  color: #000 !important;
  background-color: #fff;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  width: 100%;
  display: block;
  padding-top: 4px;
}

.l_footer_btn span {
  font-size: 32px;
}

.l_footer_txt {
  padding: 0 0;
  font-weight: bold;
  margin-bottom: 9px;
}

@media (max-width: 767px) {
  .l_footer_txt {
    padding: 25px 0 7px;
  }
}

@media (max-width: 767px) {
  .l_footer_txt_logo {
    width: 210px;
    height: auto;
  }
}

.l_footer_info p {
  color: #fff;
}

.l_footer_info p a {
  text-decoration: none;
}

.l_footer_info + .l_footer_info {
  margin-top: 38px;
}

.l_footer_sitemap {
  padding: 45px 0 55px;
}

@media (max-width: 767px) {
  .l_footer_sitemap {
    padding-top: 18px;
  }
}
.l_navi_sitemap_wrap {
  display: -ms-flexbox;
  display: flex;

  -ms-flex-align: start;
      align-items: flex-start;
  position: relative;
  margin: 0 -23px;
}
.l_footer_sitemap_wrap {
  display: -ms-flexbox;
  display: flex;

  -ms-flex-align: start;
      align-items: flex-start;
  position: relative;
  margin: 0 -23px;
}

.l_footer_sitemap_list {
  line-height: 2.2;
}

.l_footer_sitemap_list a {
  text-decoration: none;
  letter-spacing: 0.08em;
  line-height: 1;
}

.l_footer_sitemap_list a:hover {
  text-decoration: underline;
}

.l_footer_sitemap_list li {
  display: inline-block;
  padding: 6px 23px;
  position: relative;
  overflow: visible;
}
.l_navi_sitemap_list {
  line-height: 2.2;
}

.l_navi_sitemap_list a {
  text-decoration: none;
  font-size: 100%;
  letter-spacing: 0.08em;
  line-height: 1;
}

.l_navi_sitemap_list a:hover {
  text-decoration: underline;
}

.l_navi_sitemap_list li {
  display: inline-block;
  padding: 6px 23px;
  position: relative;
  overflow: visible;
}
@media (min-width: 768px) {
  .l_footer_sitemap_list li + li {
    background: url(../img/footer/divider.gif) no-repeat center left;
  }
  .l_navi_sitemap_list li + li {
    background: url(../img/footer/divider.gif) no-repeat center left;
  }
}

@media (min-width: 768px) {
  .l_footer_sitemap_list li + li.no_divider {
    background: none;
  }
  .l_navi_sitemap_list li + li.no_divider {
    background: none;
  }
}

.l_footer_sitemap_list_children:before {
  content: '-';
  padding-right: 5px;
}
.l_navi_sitemap_list_children:before {
  content: '-';
  padding-right: 5px;
}
.l_navi_tooltip {
  display: table;
  position: absolute;
  width: auto;
  padding-bottom: 16px;
  overflow: visible;
  z-index: 20;
  left: 0;
}

.l_navi_tooltip_wrap {
  display: block;
  width: auto;
  min-width: 305px;
  padding: 15px;
  background-color: #fff;
  border: 1px solid #acacac;
  -ms-flex-direction: column;
      flex-direction: column;
  position: relative;
}

.l_navi_tooltip_wrap:after {
  content: '';
  width: 14px;
  height: 16px;
  position: absolute;
  bottom: -16px;
  left: 24px;
  background: url(../img/footer/tip.png) no-repeat top center;
}

.l_navi_tooltip a {
  color: #000;
  font-size: 90%;
  text-decoration: underline;
  display: block;
  line-height: 1.5;
}

.l_navi_tooltip a:hover {
  text-decoration: none;
}

.l_navi_tooltip a + a {
  margin-top: 16px;
}

.l_footer_tooltip {
  display: table;
  position: absolute;
  width: auto;
  padding-bottom: 16px;
  overflow: visible;
  z-index: 20;
  left: 50%;
}

.l_footer_tooltip_wrap {
  display: block;
  width: auto;
  min-width: 305px;
  padding: 15px;
  background-color: #fff;
  border: 1px solid #acacac;
  -ms-flex-direction: column;
      flex-direction: column;
  position: relative;
}

.l_footer_tooltip_wrap:after {
  content: '';
  width: 14px;
  height: 16px;
  position: absolute;
  bottom: -16px;
  left: 24px;
  background: url(../img/footer/tip.png) no-repeat top center;
}

.l_footer_tooltip a {
  color: #000;
  font-size: 90%;
  text-decoration: underline;
  display: block;
  line-height: 1.5;
}

.l_footer_tooltip a:hover {
  text-decoration: none;
}

.l_footer_tooltip a + a {
  margin-top: 16px;
}

.l_footer .l_copyright {
  color: #333;
  background-color: #fff;
  letter-spacing: 0.05em;
  padding: 25px 15px 20px;
  text-align: center;
  width: 100%;
}

@media (max-width: 767px) {
  .l_footer .l_copyright {
    font-size: 12px;
  }
}

/* header parts -------------*/
/* Icon Fonts ------------------------------*/
@font-face {
  font-family: "icofont";
  src: url("../fonts/icofont.eot");
  src: url("../fonts/icofont.eot?#iefix") format("embedded-opentype"), url("../fonts/icofont.woff") format("woff"), url("../fonts/icofont.ttf") format("truetype"), url("../fonts/icofont.svg#icofont") format("svg");
  font-weight: normal;
  font-style: normal;
}

[data-icon]:before {
  font-family: "icofont" !important;
  content: attr(data-icon);
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

[class^="ico-"]:before,
[class*=" ico-"]:before {
  font-family: "icofont" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.ico-angle-right:before {
  content: "\61";
}

.ico-angle-down:before {
  content: "\62";
}

.ico-angle-left:before {
  content: "\63";
}

.ico-angle-up:before {
  content: "\64";
}

.ico-check:before {
  content: "\65";
}

.ico-thumbnails:before {
  content: "\66";
}

.ico-external-link:before {
  content: "\67";
}

/* Component -------------------------------*/
.c_breadcrumb {
  padding: 30px 0;
}

.c_breadcrumb_content {
  font-size: 11px;
}

.c_breadcrumb_content a {
  text-decoration: none;
}

.c_breadcrumb_content a:hover {
  text-decoration: underline;
}

.c_heading_tag {
  display: block;
  text-decoration: none;
}

@media (max-width: 767px) {
  .c_heading_tag {
    margin-right: 8px;
    margin-top: 8px;
  }
}

@media (min-width: 768px) {
  .c_heading_tag + .c_heading_tag {
    margin-right: 15px;
  }
}

.c_heading_tag_wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.c_heading_tag_wrap > *{
  margin-bottom: 10px;
}
.c_heading_tag_wrap span{font-size: 120%; margin-top: 4px; font-weight: bold;}
@media (max-width: 767px) {
  .c_heading_tag_wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .c_heading_tag_wrap span{
    font-size: 110%;
  }
}

.c_heading_category {
  display: block;
  text-decoration: none;
}

@media (max-width: 767px) {
  .c_heading_category {
    margin-right: 8px;
    margin-top: 8px;
  }
}

@media (min-width: 768px) {
  .c_heading_category + .c_heading_category {
    margin-left: 8px;
  }
}

.c_heading_category_wrap {
  display: -ms-flexbox;
  display: flex;
}

@media (max-width: 767px) {
  .c_heading_category_wrap {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.c_section {
  padding-bottom: 35px;
  padding-top: 35px;
  font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", "Yu Gothic", YuGothic, Hiragino Sans, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
}

@media (max-width: 767px) {
  .c_section {
    padding-top: 9px;
    padding-bottom: 50px;
  }
}

.c_btn {
  display: inline-block;
  text-decoration: none;
  padding: 10.5px 35px;
  position: relative;
  box-sizing: border-box;
  text-align: center;
}

@media (min-width: 768px) {
  .c_btn {
    min-width: 238px;
  }
}

@media (max-width: 767px) {
  .c_btn {
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 1.225em;
  }
}

.c_btn_default {
  color: #fff;
  background-color: #888;
}

.c_btn_black {
  color: #fff;
  background-color: #000;
}

.c_btn_return {
  color: #000;
  background-color: #666;
}

.c_btn_form {
  letter-spacing: 0.05em;
}

@media (min-width: 768px) {
  .c_btn_form {
    min-width: 300px;
  }
}

.c_btn_wrap {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  margin-top: 64px;
}

@media (max-width: 767px) {
  .c_btn_wrap {
    margin-top: 36px;
    -ms-flex-direction: column;
        flex-direction: column;
  }
}

.c_btn_wrap_triple {
  -ms-flex-pack: justify;
      justify-content: space-between;
}

@media (min-width: 768px) {
  .c_btn_wrap .c_btn + .c_btn {
    margin-left: 50px;
  }
}

@media (max-width: 767px) {
  .c_btn_wrap .c_btn + .c_btn {
    margin-top: 25px;
  }
}

.c_btn_next {
  padding-right: 35px;
}

.c_btn_next:before, .c_btn_next:after {
  font-size: 1em;
  position: absolute;
  top: calc(46% - (1em/2));
}

@media (max-width: 767px) {
  .c_btn_next:before, .c_btn_next:after {
    font-size: 1.1em;
    top: calc(49% - (1.1em/2));
  }
}

.c_btn_next:after {
  content: "a";
  font-family: "icofont";
  right: 25px;
}

.c_btn_prev {
  padding-left: 35px;
}

.c_btn_prev:before, .c_btn_prev:after {
  font-size: 1em;
  position: absolute;
  top: calc(46% - (1em/2));
}

@media (max-width: 767px) {
  .c_btn_prev:before, .c_btn_prev:after {
    font-size: 1.1em;
    top: calc(49% - (1.1em/2));
  }
}

.c_btn_prev:before {
  content: "c";
  font-family: "icofont";
  left: 25px;
}

.c_btn_index {
  padding-left: 35px;
}

.c_btn_index:before, .c_btn_index:after {
  font-size: 1em;
  position: absolute;
  top: calc(46% - (1em/2));
}

@media (max-width: 767px) {
  .c_btn_index:before, .c_btn_index:after {
    font-size: 1.1em;
    top: calc(49% - (1.1em/2));
  }
}

.c_btn_index:before {
  content: "f";
  font-family: "icofont";
  left: 25px;
}

@media (min-width: 768px) {
  .c_btn_index:before {
    font-size: 19px;
    left: 59px;
  }
}

.c_btn_blank {
  padding-right: 35px;
}

.c_btn_blank:before, .c_btn_blank:after {
  font-size: 1em;
  position: absolute;
  top: calc(46% - (1em/2));
}

@media (max-width: 767px) {
  .c_btn_blank:before, .c_btn_blank:after {
    font-size: 1.1em;
    top: calc(49% - (1.1em/2));
  }
}

.c_btn_blank:after {
  content: "g";
  font-family: "icofont";
  right: 25px;
}

.c_form_row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
  width: 100%;
}

@media (max-width: 767px) {
  .c_form_row {
    -ms-flex-direction: column;
        flex-direction: column;
  }
}

.c_form_row + .c_form_row {
  margin-top: 52px;
}

@media (max-width: 767px) {
  .c_form_row + .c_form_row {
    margin-top: 40px;
  }
}

.c_form_row + .c_form_row_error {
  margin-top: 10px;
}

.c_form_row + .c_form_row_error .c_form_error {
  margin-top: 0;
}

@media (min-width: 768px) {
  .c_form_row.has_input .c_form_title {
    padding-top: 13px;
  }
}

.c_form_title {
  width: 23%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: baseline;
      align-items: baseline;
}

@media (min-width: 768px) {
  .c_form_title {
    margin-right: 30px;
  }
}

@media (max-width: 767px) {
  .c_form_title {
    width: 100%;
    -ms-flex-pack: start;
        justify-content: flex-start;
    margin-bottom: 8px;
  }
}

.c_form_title .itemSearch_control-input label {
  font-weight: bold;
}

.c_form_content {
  width: calc(100% - (23% + 30px));
}

@media (max-width: 767px) {
  .c_form_content {
    width: 100%;
  }
}

.c_form_content p {
  color: #333;
}

.c_form_input {
  border: 1px solid #ccc;
  padding: 15px;
  border-radius: 4px;
}

.c_form_input::-webkit-input-placeholder {
  color: #b3b3b3;
}

.c_form_input:-ms-input-placeholder {
  color: #b3b3b3;
}

.c_form_input::placeholder {
  color: #b3b3b3;
}

@media (min-width: 768px) {
  .c_form_input {
    min-width: 420px;
  }
}

@media (max-width: 767px) {
  .c_form_input {
    padding: 13.5px 9px;
    width: 100%;
  }
}

.c_form_hissu {
  color: #ff4444;
  min-width: 28px;
}

@media (max-width: 767px) {
  .c_form_hissu {
    margin-left: 16px;
  }
}

.c_form_hissu_check {
  margin-right: 30px;
  padding-top: 5px;
}

@media (max-width: 767px) {
  .c_form_hissu_check {
    margin-right: 20px;
  }
}

@media (max-width: 374px) {
  .c_form_hissu_check {
    margin-right: 15px;
  }
}

@media (max-width: 767px) {
  .c_form_hissu_spMr0 {
    margin-right: 0;
  }
}

@media (max-width: 767px) {
  .c_form_hissu_spMl0 {
    margin-left: 0;
  }
}

.c_form_checkradio {
  display: -ms-flexbox;
  display: flex;
}

@media (max-width: 767px) {
  .c_form_checkradio {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-top: 8px;
  }
}

.c_form_checkradio input {
  position: absolute;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  cursor: pointer;
}

.c_form_radio {
  position: relative;
  padding-left: 50px;
  padding-top: 6px;
  height: 34px;
}

@media (max-width: 767px) {
  .c_form_radio {
    padding-left: 32px;
    padding-top: 1px;
    margin-right: 30px;
    height: 24px;
    margin-bottom: 20px;
  }
}

.c_form_radio + .c_form_radio {
  margin-left: 58px;
}

@media (max-width: 767px) {
  .c_form_radio + .c_form_radio {
    margin-left: 0;
  }
}

.c_form_radio .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 100%;
  width: 30px;
  height: 30px;
  border: 2px solid #ccc;
  background-color: #fff;
}

@media (max-width: 767px) {
  .c_form_radio .checkmark {
    width: 22px;
    height: 22px;
    border-width: 1px;
  }
}

.c_form_radio input:checked ~ .checkmark {
  background-color: #333;
  border-color: #333;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.c_form_radio input:checked ~ .checkmark:after {
  content: ' ';
  width: 11px;
  height: 11px;
  background-color: #fff;
  border-radius: 100%;
}

@media (max-width: 767px) {
  .c_form_radio input:checked ~ .checkmark:after {
    width: 10px;
    height: 10px;
  }
}

.c_form_check {
  position: relative;
  padding-left: 50px;
  padding-top: 6px;
  height: 34px;
}

@media (max-width: 767px) {
  .c_form_check {
    padding-top: 0;
    padding-left: 25px;
    height: 20px;
  }
}

.c_form_check + .c_form_check {
  margin-left: 58px;
}

@media (max-width: 767px) {
  .c_form_check + .c_form_check {
    margin-left: 0;
  }
}

.c_form_check .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 2px;
  width: 30px;
  height: 30px;
  border: 2px solid #ccc;
  background-color: #fff;
}

@media (max-width: 767px) {
  .c_form_check .checkmark {
    width: 15px;
    height: 15px;
    border-width: 1px;
  }
}

.c_form_check input:checked ~ .checkmark {
  background-color: #333;
  border-color: #333;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
}

.c_form_check input:checked ~ .checkmark:after {
  content: "\65";
  color: #fff;
  font-family: "icofont";
  line-height: 0.75;
  font-size: 20px;
  position: relative;
  top: 3px;
}

@media (max-width: 767px) {
  .c_form_check input:checked ~ .checkmark:after {
    font-size: 15px;
  }
}

.c_form_align-start {
  -ms-flex-align: start;
      align-items: flex-start;
}

.c_form_justify-center {
  -ms-flex-pack: center;
      justify-content: center;
}

.c_form_mtSmall, .c_form_row.c_form_mtSmall {
  margin-top: 30px;
}

@media (max-width: 767px) {
  .c_form_mtSmall, .c_form_row.c_form_mtSmall {
    margin-top: 35px;
  }
}

.c_form_spRow {
  -ms-flex-direction: row;
      flex-direction: row;
}

.c_form_error {
  color: #ff4444;
  margin-top: 10px;
}

.c_link_blank:after {
  content: "\67";
  font-family: "icofont";
  position: relative;
  vertical-align: baseline;
}

.c_table_shaded .c_table_row:nth-child(even) {
  background-color: #f8f8f8;
}

.c_table_row {
  display: -ms-flexbox;
  display: flex;
}

.c_table_th {
  font-weight: bold;
}

/* Main Contents  -------------------------------*/
/* Individual pages  -------------------------------*/


@media (max-width: 767px) {
  .details_heading {
    margin-bottom: 32px;
  }
}

.details_heading_title {
  font-weight: bold;
  color: #000;
  font-size: 200%;
  letter-spacing: 0.05em;
}

@media (max-width: 767px) {
  .details_heading_title {
    margin-top: 20px;
    font-size: 19px;
  }
}

.details_heading .c_heading_tag_wrap {
  margin-top: 18px;
  position: relative;
}
.details_heading .c_heading_tag_wrap + .c_heading_tag_wrap{
  margin-top: 0;
}
h6{font-size: 120%;}
.details_heading .details_gakunen{
  padding-left: 116px;
}
.details_heading .details_gakunen >:first-child{
  position: absolute;
  left: 0;
}
.details_heading .details_other > span:not(.no_tag){
  margin-right: 15px;
}
.details_heading .details_other{
  display: block;
}
.details_heading .details_other > *{
  display: inline-block;
}
.details_heading_overview{

}
@media (max-width:767px){
  .details_heading_overview{
    padding-left: 10px;
    padding-right: 10px;
  }
  .details_heading .details_gakunen{
    padding-left:88px;
  }
  .details_heading .details_other .c_heading_tag{
    margin-right: 0;
  }
  .details_heading .details_other span:not(.no_tag){
    margin-right: 7px;
  }
}

.details_dl_wrap{
  background: #f8f8f8;
  border: #ccc 1px solid;
  border-radius: 10px;
  margin-bottom: 30px;
  padding: 14px 20px;
}
.details_dl_wrap dl{
  display: flex;
}
.details_dl_wrap dl + dl{
  margin-top: 10px;
}
.details_dl_wrap dt{
  font-weight: bold;
  margin-right: 20px;
  min-width: 100px;
}
@media (max-width: 767px) {
  .details_heading .c_heading_tag_wrap {
    margin-top: 10px;
  }

  /* .details_heading .details_other > :first-child{
    width: 85px;
  } */
  .details_heading .details_other > *{

  }
  .details_dl_wrap dl{
    flex-direction: column;
  }
}

.details_heading .c_heading_tag {
  color: #000;
  background-color: #fff;
  font-size: 134%;
  font-weight: bold;
  border: 2px solid #666;
  letter-spacing: 0.05em;
  padding:2px 10px;
  border-radius: 8px;
  margin-right: 15px;
}

@media (max-width: 767px) {
  .details_heading .c_heading_tag {
    font-size: 12px;
    padding: 1.5px 10px;
    border-radius: 5px;
  }
}

.details_heading .c_heading_category_wrap {
  margin-top: 29px;
}

@media (max-width: 767px) {
  .details_heading .c_heading_category_wrap {
    margin-top: 10px;
  }
}

.c_heading_category {
  color: #fff;
  background-color: #8F111E;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.05em;
  padding: 6px 14px;
  width: 205px;
  margin-bottom: 40px;
}

@media (max-width: 767px) {
  .details_heading .c_heading_category {
    font-size: 12px;
  }
}

.details_wrap {
  border: 1px solid #acacac;
  background-color: #fff;
}
.details_wrap .no_tag{
  margin-left: 10px;
  margin-right: 25px;
}
.details_wrap_search_inner {
  border: 1px solid #acacac;
  background-color: #fff;
}
.details_wrap_item_inner{
  border: 1px solid #acacac;
  background-color: #fff;
}
.details_wrap_search_title {
    background-color: #0f6d71;
    color: #fff;
    text-align: center;
    font-size: 120%;
    font-weight: bold;
    padding: 10px 0;

}
@media (min-width: 768px) {
  .details_wrap {
    padding: 50px 50px 40px;
    margin-bottom: 30px;
  }
  .details_wrap_search_inner {
    padding: 25px 25px;
    margin-bottom: 25px;
  }
  .details_wrap_item_inner{
      padding: 30px 0px 25px 3%;
      margin-bottom: 25px;
    }
  }
}

@media (max-width: 767px) {
  .details_wrap {
    padding: 15px;
  }
  .details_wrap_search_inner {
    padding: 15px;
  }
  .details_wrap_item_inner {
    padding: 15px;
  }
}

/* JS initial -----------------------------*/
.js-.accordion {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

/* Utility  -------------------------------*/
/* SP専用クラアス */
@media (max-width: 767px) {
  .u_mt0sp {
    margin-top: 0px !important;
  }
  .u_mr0sp {
    margin-right: 0px !important;
  }
  .u_mb0sp {
    margin-bottom: 0px !important;
  }
  .u_ml0sp {
    margin-left: 0px !important;
  }
  .u_pt0sp {
    padding-top: 0px !important;
  }
  .u_pr0sp {
    padding-right: 0px !important;
  }
  .u_pb0sp {
    padding-bottom: 0px !important;
  }
  .u_pl0sp {
    padding-left: 0px !important;
  }
  .u_mt5sp {
    margin-top: 5px !important;
  }
  .u_mr5sp {
    margin-right: 5px !important;
  }
  .u_mb5sp {
    margin-bottom: 5px !important;
  }
  .u_ml5sp {
    margin-left: 5px !important;
  }
  .u_pt5sp {
    padding-top: 5px !important;
  }
  .u_pr5sp {
    padding-right: 5px !important;
  }
  .u_pb5sp {
    padding-bottom: 5px !important;
  }
  .u_pl5sp {
    padding-left: 5px !important;
  }
  .u_mt10sp {
    margin-top: 10px !important;
  }
  .u_mr10sp {
    margin-right: 10px !important;
  }
  .u_mb10sp {
    margin-bottom: 10px !important;
  }
  .u_ml10sp {
    margin-left: 10px !important;
  }
  .u_pt10sp {
    padding-top: 10px !important;
  }
  .u_pr10sp {
    padding-right: 10px !important;
  }
  .u_pb10sp {
    padding-bottom: 10px !important;
  }
  .u_pl10sp {
    padding-left: 10px !important;
  }
  .u_mt15sp {
    margin-top: 15px !important;
  }
  .u_mr15sp {
    margin-right: 15px !important;
  }
  .u_mb15sp {
    margin-bottom: 15px !important;
  }
  .u_ml15sp {
    margin-left: 15px !important;
  }
  .u_pt15sp {
    padding-top: 15px !important;
  }
  .u_pr15sp {
    padding-right: 15px !important;
  }
  .u_pb15sp {
    padding-bottom: 15px !important;
  }
  .u_pl15sp {
    padding-left: 15px !important;
  }
  .u_mt20sp {
    margin-top: 20px !important;
  }
  .u_mr20sp {
    margin-right: 20px !important;
  }
  .u_mb20sp {
    margin-bottom: 20px !important;
  }
  .u_ml20sp {
    margin-left: 20px !important;
  }
  .u_pt20sp {
    padding-top: 20px !important;
  }
  .u_pr20sp {
    padding-right: 20px !important;
  }
  .u_pb20sp {
    padding-bottom: 20px !important;
  }
  .u_pl20sp {
    padding-left: 20px !important;
  }
  .u_mt25sp {
    margin-top: 25px !important;
  }
  .u_mr25sp {
    margin-right: 25px !important;
  }
  .u_mb25sp {
    margin-bottom: 25px !important;
  }
  .u_ml25sp {
    margin-left: 25px !important;
  }
  .u_pt25sp {
    padding-top: 25px !important;
  }
  .u_pr25sp {
    padding-right: 25px !important;
  }
  .u_pb25sp {
    padding-bottom: 25px !important;
  }
  .u_pl25sp {
    padding-left: 25px !important;
  }
  .u_mt30sp {
    margin-top: 30px !important;
  }
  .u_mr30sp {
    margin-right: 30px !important;
  }
  .u_mb30sp {
    margin-bottom: 30px !important;
  }
  .u_ml30sp {
    margin-left: 30px !important;
  }
  .u_pt30sp {
    padding-top: 30px !important;
  }
  .u_pr30sp {
    padding-right: 30px !important;
  }
  .u_pb30sp {
    padding-bottom: 30px !important;
  }
  .u_pl30sp {
    padding-left: 30px !important;
  }
  .u_mt35sp {
    margin-top: 35px !important;
  }
  .u_mr35sp {
    margin-right: 35px !important;
  }
  .u_mb35sp {
    margin-bottom: 35px !important;
  }
  .u_ml35sp {
    margin-left: 35px !important;
  }
  .u_pt35sp {
    padding-top: 35px !important;
  }
  .u_pr35sp {
    padding-right: 35px !important;
  }
  .u_pb35sp {
    padding-bottom: 35px !important;
  }
  .u_pl35sp {
    padding-left: 35px !important;
  }
  .u_mt40sp {
    margin-top: 40px !important;
  }
  .u_mr40sp {
    margin-right: 40px !important;
  }
  .u_mb40sp {
    margin-bottom: 40px !important;
  }
  .u_ml40sp {
    margin-left: 40px !important;
  }
  .u_pt40sp {
    padding-top: 40px !important;
  }
  .u_pr40sp {
    padding-right: 40px !important;
  }
  .u_pb40sp {
    padding-bottom: 40px !important;
  }
  .u_pl40sp {
    padding-left: 40px !important;
  }
  .u_mt45sp {
    margin-top: 45px !important;
  }
  .u_mr45sp {
    margin-right: 45px !important;
  }
  .u_mb45sp {
    margin-bottom: 45px !important;
  }
  .u_ml45sp {
    margin-left: 45px !important;
  }
  .u_pt45sp {
    padding-top: 45px !important;
  }
  .u_pr45sp {
    padding-right: 45px !important;
  }
  .u_pb45sp {
    padding-bottom: 45px !important;
  }
  .u_pl45sp {
    padding-left: 45px !important;
  }
  .u_mt50sp {
    margin-top: 50px !important;
  }
  .u_mr50sp {
    margin-right: 50px !important;
  }
  .u_mb50sp {
    margin-bottom: 50px !important;
  }
  .u_ml50sp {
    margin-left: 50px !important;
  }
  .u_pt50sp {
    padding-top: 50px !important;
  }
  .u_pr50sp {
    padding-right: 50px !important;
  }
  .u_pb50sp {
    padding-bottom: 50px !important;
  }
  .u_pl50sp {
    padding-left: 50px !important;
  }
  .u_spHide {
    display: none !important;
  }
}

/* PC専用クラアス */
@media (min-width: 768px) {
  .u_mt0pc {
    margin-top: 0px !important;
  }
  .u_mr0pc {
    margin-right: 0px !important;
  }
  .u_mb0pc {
    margin-bottom: 0px !important;
  }
  .u_ml0pc {
    margin-left: 0px !important;
  }
  .u_pt0pc {
    padding-top: 0px !important;
  }
  .u_pr0pc {
    padding-right: 0px !important;
  }
  .u_pb0pc {
    padding-bottom: 0px !important;
  }
  .u_pl0pc {
    padding-left: 0px !important;
  }
  .u_mt5pc {
    margin-top: 5px !important;
  }
  .u_mr5pc {
    margin-right: 5px !important;
  }
  .u_mb5pc {
    margin-bottom: 5px !important;
  }
  .u_ml5pc {
    margin-left: 5px !important;
  }
  .u_pt5pc {
    padding-top: 5px !important;
  }
  .u_pr5pc {
    padding-right: 5px !important;
  }
  .u_pb5pc {
    padding-bottom: 5px !important;
  }
  .u_pl5pc {
    padding-left: 5px !important;
  }
  .u_mt10pc {
    margin-top: 10px !important;
  }
  .u_mr10pc {
    margin-right: 10px !important;
  }
  .u_mb10pc {
    margin-bottom: 10px !important;
  }
  .u_ml10pc {
    margin-left: 10px !important;
  }
  .u_pt10pc {
    padding-top: 10px !important;
  }
  .u_pr10pc {
    padding-right: 10px !important;
  }
  .u_pb10pc {
    padding-bottom: 10px !important;
  }
  .u_pl10pc {
    padding-left: 10px !important;
  }
  .u_mt15pc {
    margin-top: 15px !important;
  }
  .u_mr15pc {
    margin-right: 15px !important;
  }
  .u_mb15pc {
    margin-bottom: 15px !important;
  }
  .u_ml15pc {
    margin-left: 15px !important;
  }
  .u_pt15pc {
    padding-top: 15px !important;
  }
  .u_pr15pc {
    padding-right: 15px !important;
  }
  .u_pb15pc {
    padding-bottom: 15px !important;
  }
  .u_pl15pc {
    padding-left: 15px !important;
  }
  .u_mt20pc {
    margin-top: 20px !important;
  }
  .u_mr20pc {
    margin-right: 20px !important;
  }
  .u_mb20pc {
    margin-bottom: 20px !important;
  }
  .u_ml20pc {
    margin-left: 20px !important;
  }
  .u_pt20pc {
    padding-top: 20px !important;
  }
  .u_pr20pc {
    padding-right: 20px !important;
  }
  .u_pb20pc {
    padding-bottom: 20px !important;
  }
  .u_pl20pc {
    padding-left: 20px !important;
  }
  .u_mt25pc {
    margin-top: 25px !important;
  }
  .u_mr25pc {
    margin-right: 25px !important;
  }
  .u_mb25pc {
    margin-bottom: 25px !important;
  }
  .u_ml25pc {
    margin-left: 25px !important;
  }
  .u_pt25pc {
    padding-top: 25px !important;
  }
  .u_pr25pc {
    padding-right: 25px !important;
  }
  .u_pb25pc {
    padding-bottom: 25px !important;
  }
  .u_pl25pc {
    padding-left: 25px !important;
  }
  .u_mt30pc {
    margin-top: 30px !important;
  }
  .u_mr30pc {
    margin-right: 30px !important;
  }
  .u_mb30pc {
    margin-bottom: 30px !important;
  }
  .u_ml30pc {
    margin-left: 30px !important;
  }
  .u_pt30pc {
    padding-top: 30px !important;
  }
  .u_pr30pc {
    padding-right: 30px !important;
  }
  .u_pb30pc {
    padding-bottom: 30px !important;
  }
  .u_pl30pc {
    padding-left: 30px !important;
  }
  .u_mt35pc {
    margin-top: 35px !important;
  }
  .u_mr35pc {
    margin-right: 35px !important;
  }
  .u_mb35pc {
    margin-bottom: 35px !important;
  }
  .u_ml35pc {
    margin-left: 35px !important;
  }
  .u_pt35pc {
    padding-top: 35px !important;
  }
  .u_pr35pc {
    padding-right: 35px !important;
  }
  .u_pb35pc {
    padding-bottom: 35px !important;
  }
  .u_pl35pc {
    padding-left: 35px !important;
  }
  .u_mt40pc {
    margin-top: 40px !important;
  }
  .u_mr40pc {
    margin-right: 40px !important;
  }
  .u_mb40pc {
    margin-bottom: 40px !important;
  }
  .u_ml40pc {
    margin-left: 40px !important;
  }
  .u_pt40pc {
    padding-top: 40px !important;
  }
  .u_pr40pc {
    padding-right: 40px !important;
  }
  .u_pb40pc {
    padding-bottom: 40px !important;
  }
  .u_pl40pc {
    padding-left: 40px !important;
  }
  .u_mt45pc {
    margin-top: 45px !important;
  }
  .u_mr45pc {
    margin-right: 45px !important;
  }
  .u_mb45pc {
    margin-bottom: 45px !important;
  }
  .u_ml45pc {
    margin-left: 45px !important;
  }
  .u_pt45pc {
    padding-top: 45px !important;
  }
  .u_pr45pc {
    padding-right: 45px !important;
  }
  .u_pb45pc {
    padding-bottom: 45px !important;
  }
  .u_pl45pc {
    padding-left: 45px !important;
  }
  .u_mt50pc {
    margin-top: 50px !important;
  }
  .u_mr50pc {
    margin-right: 50px !important;
  }
  .u_mb50pc {
    margin-bottom: 50px !important;
  }
  .u_ml50pc {
    margin-left: 50px !important;
  }
  .u_pt50pc {
    padding-top: 50px !important;
  }
  .u_pr50pc {
    padding-right: 50px !important;
  }
  .u_pb50pc {
    padding-bottom: 50px !important;
  }
  .u_pl50pc {
    padding-left: 50px !important;
  }
  .u_pcHide {
    display: none !important;
  }
}

/* 全デバイス共通 */
.u_mt0 {
  margin-top: 0px !important;
}

.u_mr0 {
  margin-right: 0px !important;
}

.u_mb0 {
  margin-bottom: 0px !important;
}

.u_ml0 {
  margin-left: 0px !important;
}

.u_pt0 {
  padding-top: 0px !important;
}

.u_pr0 {
  padding-right: 0px !important;
}

.u_pb0 {
  padding-bottom: 0px !important;
}

.u_pl0 {
  padding-left: 0px !important;
}

.u_mt5 {
  margin-top: 5px !important;
}

.u_mr5 {
  margin-right: 5px !important;
}

.u_mb5 {
  margin-bottom: 5px !important;
}

.u_ml5 {
  margin-left: 5px !important;
}

.u_pt5 {
  padding-top: 5px !important;
}

.u_pr5 {
  padding-right: 5px !important;
}

.u_pb5 {
  padding-bottom: 5px !important;
}

.u_pl5 {
  padding-left: 5px !important;
}

.u_mt10 {
  margin-top: 10px !important;
}

.u_mr10 {
  margin-right: 10px !important;
}

.u_mb10 {
  margin-bottom: 10px !important;
}

.u_ml10 {
  margin-left: 10px !important;
}

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

.u_pr10 {
  padding-right: 10px !important;
}

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

.u_pl10 {
  padding-left: 10px !important;
}

.u_mt15 {
  margin-top: 15px !important;
}

.u_mr15 {
  margin-right: 15px !important;
}

.u_mb15 {
  margin-bottom: 15px !important;
}

.u_ml15 {
  margin-left: 15px !important;
}

.u_pt15 {
  padding-top: 15px !important;
}

.u_pr15 {
  padding-right: 15px !important;
}

.u_pb15 {
  padding-bottom: 15px !important;
}

.u_pl15 {
  padding-left: 15px !important;
}

.u_mt20 {
  margin-top: 20px !important;
}

.u_mr20 {
  margin-right: 20px !important;
}

.u_mb20 {
  margin-bottom: 20px !important;
}

.u_ml20 {
  margin-left: 20px !important;
}

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

.u_pr20 {
  padding-right: 20px !important;
}

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

.u_pl20 {
  padding-left: 20px !important;
}

.u_mt25 {
  margin-top: 25px !important;
}

.u_mr25 {
  margin-right: 25px !important;
}

.u_mb25 {
  margin-bottom: 25px !important;
}

.u_ml25 {
  margin-left: 25px !important;
}

.u_pt25 {
  padding-top: 25px !important;
}

.u_pr25 {
  padding-right: 25px !important;
}

.u_pb25 {
  padding-bottom: 25px !important;
}

.u_pl25 {
  padding-left: 25px !important;
}

.u_mt30 {
  margin-top: 30px !important;
}

.u_mr30 {
  margin-right: 30px !important;
}

.u_mb30 {
  margin-bottom: 30px !important;
}

.u_ml30 {
  margin-left: 30px !important;
}

.u_pt30 {
  padding-top: 30px !important;
}

.u_pr30 {
  padding-right: 30px !important;
}

.u_pb30 {
  padding-bottom: 30px !important;
}

.u_pl30 {
  padding-left: 30px !important;
}

.u_mt35 {
  margin-top: 35px !important;
}

.u_mr35 {
  margin-right: 35px !important;
}

.u_mb35 {
  margin-bottom: 35px !important;
}

.u_ml35 {
  margin-left: 35px !important;
}

.u_pt35 {
  padding-top: 35px !important;
}

.u_pr35 {
  padding-right: 35px !important;
}

.u_pb35 {
  padding-bottom: 35px !important;
}

.u_pl35 {
  padding-left: 35px !important;
}

.u_mt40 {
  margin-top: 40px !important;
}

.u_mr40 {
  margin-right: 40px !important;
}

.u_mb40 {
  margin-bottom: 40px !important;
}

.u_ml40 {
  margin-left: 40px !important;
}

.u_pt40 {
  padding-top: 40px !important;
}

.u_pr40 {
  padding-right: 40px !important;
}

.u_pb40 {
  padding-bottom: 40px !important;
}

.u_pl40 {
  padding-left: 40px !important;
}

.u_mt45 {
  margin-top: 45px !important;
}

.u_mr45 {
  margin-right: 45px !important;
}

.u_mb45 {
  margin-bottom: 45px !important;
}

.u_ml45 {
  margin-left: 45px !important;
}

.u_pt45 {
  padding-top: 45px !important;
}

.u_pr45 {
  padding-right: 45px !important;
}

.u_pb45 {
  padding-bottom: 45px !important;
}

.u_pl45 {
  padding-left: 45px !important;
}

.u_mt50 {
  margin-top: 50px !important;
}

.u_mr50 {
  margin-right: 50px !important;
}

.u_mb50 {
  margin-bottom: 50px !important;
}

.u_ml50 {
  margin-left: 50px !important;
}

.u_pt50 {
  padding-top: 50px !important;
}

.u_pr50 {
  padding-right: 50px !important;
}

.u_pb50 {
  padding-bottom: 50px !important;
}

.u_pl50 {
  padding-left: 50px !important;
}

.u_fz10 {
  font-size: 10px !important;
}

.u_fz11 {
  font-size: 11px !important;
}

.u_fz12 {
  font-size: 12px !important;
}

.u_fz13 {
  font-size: 13px !important;
}

.u_fz14 {
  font-size: 14px !important;
}

.u_fz15 {
  font-size: 15px !important;
}

.u_fz16 {
  font-size: 16px !important;
}

.u_fz17 {
  font-size: 17px !important;
}

.u_fz18 {
  font-size: 18px !important;
}

.u_fz19 {
  font-size: 19px !important;
}

.u_fz20 {
  font-size: 20px !important;
}

.u_fz21 {
  font-size: 21px !important;
}

.u_fz22 {
  font-size: 22px !important;
}

.u_fz23 {
  font-size: 23px !important;
}

.u_fz24 {
  font-size: 24px !important;
}

.u_fz25 {
  font-size: 25px !important;
}

.u_fz26 {
  font-size: 26px !important;
}

.u_fz27 {
  font-size: 27px !important;
}

.u_fz28 {
  font-size: 28px !important;
}

.u_fz29 {
  font-size: 29px !important;
}

.u_fz30 {
  font-size: 30px !important;
}

.u_fz31 {
  font-size: 31px !important;
}

.u_fz32 {
  font-size: 32px !important;
}

.u_fz33 {
  font-size: 33px !important;
}

.u_fz34 {
  font-size: 34px !important;
}

.u_fz35 {
  font-size: 35px !important;
}

.u_fz36 {
  font-size: 36px !important;
}

.u_fz37 {
  font-size: 37px !important;
}

.u_fz38 {
  font-size: 38px !important;
}

.u_fz39 {
  font-size: 39px !important;
}

.u_fz40 {
  font-size: 40px !important;
}

.u_fz41 {
  font-size: 41px !important;
}

.u_fz42 {
  font-size: 42px !important;
}

.u_fz43 {
  font-size: 43px !important;
}

.u_fz44 {
  font-size: 44px !important;
}

.u_fz45 {
  font-size: 45px !important;
}

.u_fz46 {
  font-size: 46px !important;
}

.u_fz47 {
  font-size: 47px !important;
}

.u_fz48 {
  font-size: 48px !important;
}

.u_fz49 {
  font-size: 49px !important;
}

.u_fz50 {
  font-size: 50px !important;
}

.u_textRight {
  text-align: right !important;
}

.u_textCenter {
  text-align: center !important;
}

.u_textLeft {
  text-align: left !important;
}

.u_vaBase {
  vertical-align: baseline !important;
}

.u_vaTop {
  vertical-align: top !important;
}

.u_vaMiddle {
  vertical-align: middle !important;
}

.u_vaBottom {
  vertical-align: bottom !important;
}

.u_vaTextTop {
  vertical-align: text-top !important;
}

.u_vaTextBottom {
  vertical-align: text-bottom !important;
}

.u_vaSuper {
  vertical-align: super !important;
}

.u_vaSub {
  vertical-align: sub !important;
}

.u_block {
  display: block !important;
}

.u_inline {
  display: inline !important;
}

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

.u_flex {
  display: -ms-flexbox !important;
  display: flex !important;
}

.u_fxdRow {
  -ms-flex-direction: row !important;
      flex-direction: row !important;
}

.u_fxdRowRev {
  -ms-flex-direction: row-reverse !important;
      flex-direction: row-reverse !important;
}

.u_fxdCol {
  -ms-flex-direction: column !important;
      flex-direction: column !important;
}

.u_fxdColRev {
  -ms-flex-direction: column-reverse !important;
      flex-direction: column-reverse !important;
}

.u_fxwNo {
  -ms-flex-wrap: nowrap !important;
      flex-wrap: nowrap !important;
}

.u_fxwWrap {
  -ms-flex-wrap: wrap !important;
      flex-wrap: wrap !important;
}

.u_fxwWrapRev {
  -ms-flex-wrap: wrap-reverse !important;
      flex-wrap: wrap-reverse !important;
}

.u_jcFlexStart {
  -ms-flex-pack: start !important;
      justify-content: flex-start !important;
}

.u_jcFlexEnd {
  -ms-flex-pack: end !important;
      justify-content: flex-end !important;
}

.u_jcCenter {
  -ms-flex-pack: center !important;
      justify-content: center !important;
}

.u_jcSpaceBetween {
  -ms-flex-pack: justify !important;
      justify-content: space-between !important;
}

.u_jcSpaceAround {
  -ms-flex-pack: distribute !important;
      justify-content: space-around !important;
}

.u_aiFlexStart {
  -ms-flex-align: start !important;
      align-items: flex-start !important;
}

.u_aiFlexEnd {
  -ms-flex-align: end !important;
      align-items: flex-end !important;
}

.u_aiCenter {
  -ms-flex-align: center !important;
      align-items: center !important;
}

.u_aiBase {
  -ms-flex-align: baseline !important;
      align-items: baseline !important;
}

.u_aiStretch {
  -ms-flex-align: stretch !important;
      align-items: stretch !important;
}

.u_acFlexStart {
  -ms-flex-line-pack: start !important;
      align-content: flex-start !important;
}

.u_acFlexEnd {
  -ms-flex-line-pack: end !important;
      align-content: flex-end !important;
}

.u_acCenter {
  -ms-flex-line-pack: center !important;
      align-content: center !important;
}

.u_acSpaceBetween {
  -ms-flex-line-pack: justify !important;
      align-content: space-between !important;
}

.u_acSpaceAround {
  -ms-flex-line-pack: distribute !important;
      align-content: space-around !important;
}

.u_acStretch {
  -ms-flex-line-pack: stretch !important;
      align-content: stretch !important;
}

.u_asAuto {
  -ms-flex-item-align: auto !important;
      -ms-grid-row-align: auto !important;
      align-self: auto !important;
}

.u_asFlexStart {
  -ms-flex-item-align: start !important;
      align-self: flex-start !important;
}

.u_asFlexEnd {
  -ms-flex-item-align: end !important;
      align-self: flex-end !important;
}

.u_asCenter {
  -ms-flex-item-align: center !important;
      -ms-grid-row-align: center !important;
      align-self: center !important;
}

.u_asBase {
  -ms-flex-item-align: baseline !important;
      align-self: baseline !important;
}

.u_asStretch {
  -ms-flex-item-align: stretch !important;
      -ms-grid-row-align: stretch !important;
      align-self: stretch !important;
}

.u_floatLeft {
  float: left !important;
}

.u_floatRight {
  float: right !important;
}

.u_static {
  position: static !important;
}

.u_relative {
  position: relative !important;
}

.u_absolute {
  position: absolute !important;
}

.u_bgNone {
  background: none !important;
}

.u_fwBold {
  font-weight: bold !important;
}

.u_fwNormal {
  font-weight: normal !important;
}

.u_textKerning {
  font-feature-settings: "palt" !important;
}

.u_textUnderline {
  text-decoration: underline !important;
}

.u_clearfix:after {
  content: "" !important;
  display: block !important;
  clear: both !important;
}

.u_wh100p {
  width: 100% !important;
  height: auto !important;
}

.u_marginSideAuto {
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (min-width: 768px) {
  .u_pcOverflowHide {
    overflow: hidden !important;
  }
}

.u_hover:hover {
  opacity: .7 !important;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  transition: opacity 250ms !important;
}

@media (max-width: 767px) {
  .u_hover:hover {
    opacity: 1 !important;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  }
}

/*# sourceMappingURL=style.css.map */

