@media only screen and (max-width: 768px) {
  
  /*----------------------------------------------
  u_mab
  ---------------------------------------------*/
	.u_mab10, .u_sp_mab10 { margin-bottom: 1.32vh; }
	.u_mab15, .u_sp_mab15 { margin-bottom: 1.98vh; }
	.u_mab20, .u_sp_mab20 { margin-bottom: 2.65vh; }
	.u_mab25, .u_sp_mab25 { margin-bottom: 3.31vh; }
	.u_mab30, .u_sp_mab30 { margin-bottom: 3.97vh; }
	.u_mab40, .u_sp_mab40 { margin-bottom: 5.30vh; }
	.u_mab50, .u_sp_mab50 { margin-bottom: 7.95vh; }
  
  /*----------------------------------------------
  u_sp_mar
  ---------------------------------------------*/
  .u_sp_mar0 { margin-right: 0; }

  /*----------------------------------------------
  miscellaneous
  ---------------------------------------------*/
	.u_pc {
		display: none !important;
	}

	.u_sp {
		display: block !important;
	}
  
  .u_sp_ALcenter { text-align: center !important; }
  .u_sp_ALright { text-align: right !important; }
  .u_sp_ALleft { text-align: left !important; }

	.u_fs11 { font-size: calc(25px + 25 * ((100vw - 750px) / 750)); }
	.u_fs12 { font-size: calc(26px + 26 * ((100vw - 750px) / 750)); }
	.u_fs13 { font-size: calc(27px + 27 * ((100vw - 750px) / 750)); }
  .u_fs14 { font-size: calc(28px + 28 * ((100vw - 750px) / 750)); }
	.u_fs15 { font-size: calc(29px + 29 * ((100vw - 750px) / 750)); }
	.u_fs16 { font-size: calc(30px + 30 * ((100vw - 750px) / 750)); }
	.u_fs17 { font-size: calc(31px + 31 * ((100vw - 750px) / 750)); }
	.u_fs18 { font-size: calc(32px + 32 * ((100vw - 750px) / 750)); }
	.u_fs19 { font-size: calc(33px + 33 * ((100vw - 750px) / 750)); }
	.u_fs20 { font-size: calc(34px + 34 * ((100vw - 750px) / 750)); }
	.u_fs21 { font-size: calc(35px + 35 * ((100vw - 750px) / 750)); }
	.u_fs22 { font-size: calc(36px + 36 * ((100vw - 750px) / 750)); }
	.u_fs23 { font-size: calc(37px + 37 * ((100vw - 750px) / 750)); }
	.u_fs24 { font-size: calc(38px + 38 * ((100vw - 750px) / 750)); }

	a {
		line-break: anywhere;
	}
  
  a.menu_button {
    position: absolute;
    right: 0px;
    top: 0px;
    z-index: 9;
    display: block;
    font-size: 11px;
    color: #fff;
    width: 60px;
    height: 60px;
    line-height: 56px;
    text-decoration: none;
    background: #0077b3;
  }
  a.menu_button:before {
    content: "";
    background-image: url("../images/icon_menu_btn.png");
    background-repeat: no-repeat;
    color: #fff;
    position: absolute;
    top: 17px;
    left: 19px;
    font-size: 18px;
    width: 24px;
    height: 24px;
    line-height: 24px;
    text-align: center;
  }
  
  /*----------------------------------------------
  u_flex
  ---------------------------------------------*/
  .u_flex.is_sp_column {
    flex-direction: column;
  }

  /*----------------------------------------------
    .l_wrap
  ---------------------------------------------*/
  .l_wrap {
    width: 100%;
    margin: 0 auto;
  }
  
  .l_logo_image {
    float: left;
    margin: 38px 15px;
    font-size: 21px;
    line-height: 140%;
  }
  .l_logo_image img {
    display: none;
  }
  .l_logo_image a:before {
    content: attr(data-label);
    font-size: 2em;
  }
  .l_logo_txt {
    display: none;
  }
  
  /*----------------------------------------------
    .l_page_top
  ---------------------------------------------*/
  .l_page_top {
    position: fixed;
    bottom: 0;
    right: 0;
    display: block;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    width: 50px;
    height: 50px;
    margin: 0;
    padding: 0;
    border-radius: 0;
    }
  
  /*----------------------------------------------
    .l_container
  ---------------------------------------------*/
  .l_container {
  }
  .l_main_contents {
    padding: 0 10px;
    float: none;
  }
  
  /*----------------------------------------------
    .l_header_area
  ---------------------------------------------*/
  .l_header_area {
    border: none;
  }

  .l_header_btn_area {
    display: none;
  }
  
  /*----------------------------------------------
    .l_global_menu
  ---------------------------------------------*/
  .l_global_menu {
    display: none;
  }
  
  .l_global_menu.active {
    display: block;
    clear: both;
    width: 100%;
    margin: 0;
    top: 60px;
    position: absolute;
    box-shadow: 1px 2px 1.5px rgba(0, 0, 0, 0.1);
    z-index: 999;
    background: #ddd;
  }
  .l_global_menu.active > ul {
    width: 100%;
    height: auto;
    border: unset;
  }
  .l_global_menu.active > ul > li {
    float: none;
    margin: 0;
    width: 100%;
  }
  .l_global_menu.active > ul > li > a {
    display: block;
    border: 1px solid #ccc;
    margin: 0 0 -1px 0;
    padding: 0 10px 0 32px;
    line-height: 40px;
    text-decoration: none;
    background: #fff url("../images/arrow4.png") no-repeat 20px;
    height: unset;
    border-radius: 0px;
    font-size: unset;
    letter-spacing: unset;
    font-weight: unset;
    text-align: left;
    color: inherit;
  }
  .l_global_menu.active > ul > li > span {
    border-radius: 0;
  }
  .l_global_menu.active > ul > li > a:hover,
  .l_global_menu.active .l_global_sub_menu a:hover {
    background-color: #eee;
    color: #333;
  }
  .l_global_menu.active .l_global_sub_menu {
    display: block;
    position: static;
    margin-bottom: 0;
  }
  .l_global_menu.active .l_global_sub_menu a {
    padding-left: 42px;
    background: #fff url("../images/arrow4.png") no-repeat 30px;
  }
  
  .global_menu_list > .l_global_sub_menu {
    height: auto;
    overflow: visible;
    opacity: 1;
  }
  
  /*----------------------------------------------
    .l_main_slider
  ---------------------------------------------*/
  .l_main_slider {
    width: 100%;
    float: left;
    height: auto;
  }
  .slick-slide img {
    width: 100%;
  }   
  
  /*----------------------------------------------
    .l_sub_slider
  ---------------------------------------------*/
  .l_sub_slider {
    display: none;
  }
  
  /*----------------------------------------------
    .l_side_contents
  ---------------------------------------------*/
  .l_side_contents {
    width: 100%;
    margin-top: 20px;
    float: right;
  }
  
  /*----------------------------------------------
    .l_recent_post
  ---------------------------------------------*/
  .l_recent_post li {
    width: 100%;
    display: flex;
  }
  .l_recent_post .is_post_info {
    float: inherit;
    margin: 10px 0 0 0;
  }
  
  /*----------------------------------------------
    .l_icon_list
  ---------------------------------------------*/
  .l_icon_list {
    display: grid;
    grid-template-columns: 1fr;
    padding-top: 15px;
    padding-bottom: 0;
  }
  .l_icon_list li {
    width: 100%;
    padding: 20px 0;
  }
  .l_icon_list li:not(:last-child) {
    border-bottom: dotted 1px #666;
  }
  
  /*----------------------------------------------
    .l_bread_crumb
  ---------------------------------------------*/
  .l_bread_crumb {
    padding: 0 .5em;
  }
  .l_bread_crumb li {
    padding-right: 1.5em;
    margin-right: 1em;
    font-size: 10px;
  }
  
  /*----------------------------------------------
    .l_inner_contents
  ---------------------------------------------*/
  .l_inner_contents {
    width: 100%;
  }
  .l_inner_contents > div {
    display: block;
  }
  
  /*----------------------------------------------
    .l_footer_area
  ---------------------------------------------*/
  .l_footer_area {
    display: none;
  }
  
  /*----------------------------------------------
    .l_footer_area
  ---------------------------------------------*/
  .l_copyright {
    width: calc(100% - 40px);
    color: #fff;
    font-size: 10px;
    background: #000;
    margin: 0;
    line-height: 50px;
    height: 50px;
    padding: 0 20px;
    text-align: center;
  }
  
  /*----------------------------------------------
    タイトル
  ---------------------------------------------*/
  .c_ttl_type03 {
    font-size: 14px;
  }

  /*----------------------------------------------
    ボタン
  ---------------------------------------------*/
  .c_btn_type02 {
    width: 100%;
  }

  .c_btn_type03 {
    text-align: center;
    width: 150px;
    height: 42px;
    font-size: 14px;
    color: #fff;
    line-height: 42px;
    margin: 15px auto;
    display: block;
    float: inherit
  }
  
  /*----------------------------------------------
    リスト
  ---------------------------------------------*/
  .c_list_type03 li {
    float: inherit;
    width: 100%;
    height: 100px;
    border-bottom: 1px solid #ccc;
  }
  .c_list_type03 a {
    display: grid;
    grid-template-columns: 100px 1fr;
    padding: 10px;
    height: 80px;
  }

  /*----------------------------------------------
    トップ
  ---------------------------------------------*/
  .c_recent_post li {
    border: 1px solid #ccc;
    border-top: none;
    padding: 15px;
    height: inherit;
    float: none;
    width: 100%;
  }
  .c_recent_post li:nth-child(odd){
    border-right: 1px solid #ccc;
    width: 100%;
  }
  .c_recent_post .is_post_img {
    float: left;
    width: 30%;
    height: inherit;
    margin: 0 5% 0 0;
  }
  .c_recent_post .is_post_info {
    float: left;
    width: 65%;
    margin: 0;
  }
  .c_recent_post .is_post_img img {
    width: 100%;
    height: auto;
  }
  
  /*----------------------------------------------
    中ページ
  ---------------------------------------------*/
  .c_content_grid {
    grid-gap: 20px;
    grid-template-columns: 1fr 1fr;
  }

}