@charset "utf-8";
/*
Theme Name: template022719
Theme URI: https://mawsdesign.com/
Description: mawsdesignテーマ
Version: 1.0
Author: mawsdesign
Author URI: https://mawsdesign.com/
Tags: mawsdesign

	mawsdesign template v1.0
	 https://mawsdesign.com/

	designed and built by mawsdesign template,

	The CSS, XHTML and design is released under GPL:
	http://www.opensource.org/licenses/gpl-license.php

*/

/*-------------------コンテンツ幅-----------------------*/

.container {
  max-width: 1260px;
}






/*-------------------サイトスタイル-----------------------*/
html {
  font-size: 62.5%;
}
.contents-main main{
	width: 100%;
}
body {
  color: #4d4d4d;
  background: #ffffff;
  font-size: 62.5%;
  overflow: unset;
}

p {
  font-family: 'Noto sans JP';
  font-weight: 400;
}

.medium {
  font-weight: 500;
}

a {
  color: #4d4d4d;
  transition: all 0.3s ease;
}

a:hover,
a:active {
  color: #005eae;
}

#footer .footer-body {
  background: #a60000;
}

#footer .footer-body a {
  color: #ffffff;
}

#footer .footer-body a:hover {
  color: #d33535;
}


.bg_footer {
  background: #245892;
  background: -moz-linear-gradient(left, #306fb6 0%, #245892 100%);
  background: -webkit-gradient(linear, left center, right center, from(#306fb6), to(#245892));
  background: -webkit-linear-gradient(left, #306fb6 0%, #245892 100%);
  background: -o-linear-gradient(left, #306fb6 0%, #245892 100%);
  background: linear-gradient(to right, #306fb6 0%, #245892 100%);

}




/* footer */
.footer_container {
  width: 90%;
  max-width: 1262px;
  margin: 0 auto;
  padding-top: 30px;
  padding-bottom: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.footer_left_container {
  width: 100%;
}

.footer_info h1 {
  font: 700 2.7rem 'Noto Sans JP';
  color: #0071bc;
  width: 250px;
  margin-right: 20px;
}

.footer_info {
  font: 500 1.6rem 'Noto Sans JP';
  line-height: 1.8;
  margin-top: 30px;
  text-align: left;
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer_link {
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.footer_link_list {
  display: flex;
  justify-content: center;
  padding-bottom: 15px;
  border-bottom: 1px solid #4d4d4d;
}

.footer_link_list li {
  width: fit-content;
}

.footer_link_list li a {
  padding: 0 8px;
  font: 400 1.6rem 'Noto Sans JP';
  color: #4d4d4d;
}

.footer_right_container {
  width: 40%;
}

.footer_g_map_container {
  width: 100%;
  height: 302px;
}

.footer_g_map_container iframe {
  width: 100%;
  height: 100%;
}

.copy_right {
  font: 400 1.3rem 'Noto Sans JP';
  color: #4d4d4d;
  text-align: center;
  padding-bottom: 10px;
}

@media only screen and (max-width: 900px) {
  .footer_left_container {
    width: 100%;
  }



  .pc_footer .footer_container {
    padding-bottom: 40px;


  }

  .footer_info {
    font-size: 1.4rem;
    line-height: 2 !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
}

/* footer_end */

/*-------------------余白の設定-----------------------*/

/* margin */
.m-ll {
  margin: 120px !important;
}

.mt-ll {
  margin-top: 120px !important;
}

.mb-ll {
  margin-bottom: 120px !important;
}

.ml-ll {
  margin-left: 120px !important;
}

.mr-ll {
  margin-right: 120px !important;
}

.m-l {
  margin: 90px !important;
}

.mt-l {
  margin-top: 90px !important;
}

.mb-l {
  margin-bottom: 90px !important;
}

.ml-l {
  margin-left: 90px !important;
}

.mr-l {
  margin-right: 90px !important;
}

.m-mm {
  margin: 60px !important;
}

.mt-mm {
  margin-top: 95px !important;
}

.mb-mm {
  margin-bottom: 60px !important;
}

.ml-mm {
  margin-left: 60px !important;
}

.mr-mm {
  margin-right: 60px !important;
}

.m-m {
  margin: 30px !important;
}

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

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

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

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

.m-s {
  margin: 15px !important;
}

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

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

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

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

.m-ss {
  margin: 10px !important;
}

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

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

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

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

.mb-55 {
  margin-bottom: 55px !important;
}

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

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

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

.mb-60 {
  margin-bottom: 60px !important;
}

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

.pb_150 {
  padding-bottom: 150px !important;
}

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

.pb_90 {
  padding-bottom: 90px !important;
}

/* padding */
.pt_90 {
  padding-top: 90px !important;
}

.p-llp {
  padding: 15% !important;
}

.pt-llp {
  padding-top: 15% !important;
}

.pb-llp {
  padding-bottom: 15% !important;
}

.pl-llp {
  padding-left: 15% !important;
}

.pr-llp {
  padding-right: 15% !important;
}

.p-ll {
  padding: 120px !important;
}

.pt-ll {
  padding-top: 120px !important;
}

.pb-ll {
  padding-bottom: 120px !important;
}

.pl-ll {
  padding-left: 120px !important;
}

.pr-ll {
  padding-right: 120px !important;
}

.p-l {
  padding: 90px !important;
}

.p-lp {
  padding: 10% !important;
}

.pt-lp {
  padding-top: 10% !important;
}

.pb-lp {
  padding-bottom: 10% !important;
}

.pl-lp {
  padding-left: 10% !important;
}

.pr-lp {
  padding-right: 10% !important;
}

.pt-l {
  padding-top: 90px !important;
}

.pb-l {
  padding-bottom: 90px !important;
}

.pl-l {
  padding-left: 90px !important;
}

.pr-l {
  padding-right: 90px !important;
}

.p-mm {
  padding: 60px !important;
}

.p-mmp {
  padding: 7% !important;
}

.pt-mmp {
  padding-top: 7% !important;
}

.pb-mmp {
  padding-bottom: 7% !important;
}

.pl-mmp {
  padding-left: 7% !important;
}

.pr-mmp {
  padding-right: 7% !important;
}

.pt-mm {
  padding-top: 60px !important;
}

.pb-mm {
  padding-bottom: 60px !important;
}

.p-m {
  padding: 30px !important;
}

.p-mp {
  padding: 5% !important;
}

.pt-mp {
  padding-top: 5% !important;
}

.pb-mp {
  padding-bottom: 5% !important;
}

.pl-mp {
  padding-left: 5% !important;
}

.pr-mp {
  padding-right: 5% !important;
}

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

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

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

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

.p-s {
  padding: 15px !important;
}

.p-sp {
  padding: 3% !important;
}

.pt-sp {
  padding-top: 3% !important;
}

.pb-sp {
  padding-bottom: 3% !important;
}

.pl-sp {
  padding-left: 3% !important;
}

.pr-sp {
  padding-right: 3% !important;
}

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

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

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

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

.p-ss {
  padding: 10px !important;
}

.p-ssp {
  padding: 1% !important;
}

.pt-ssp {
  padding-top: 1% !important;
}

.pb-ssp {
  padding-bottom: 1% !important;
}

.pl-ssp {
  padding-left: 1% !important;
}

.pr-ssp {
  padding-right: 1% !important;
}

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

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

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

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

.pt-70 {
  padding-top: 70px !important;
}

.bg_f2 {
  background-color: #f2f2f2 !important;
}

.nav_ptpb {
  margin-top: 40px !important;
  margin-bottom: 100px !important;
}

.archive.container,
.single.container,
  {
  padding-top: 90px;
  padding-bottom: 90px;
}

.section-l {
  padding-top: 90px;
  padding-bottom: 90px;
}

.section-mm {
  padding-top: 60px;
  padding-bottom: 60px;
}

.section-m {
  padding-top: 30px;
  padding-bottom: 30px;
}

.section-s {
  padding-top: 15px;
  padding-bottom: 15px;
}

.section-ss {
  padding-top: 10px;
  padding-bottom: 10px;
}

.btn-box {
  margin-top: 30px;
}

.post-box h1 {
  margin-top: 90px;
  margin-bottom: 60px;
}

.post-box h2 {
  margin-top: 60px;
  margin-bottom: 30px;
}

.post-box h3 {
  margin-top: 60px;
  margin-bottom: 30px;
}

.post-box h4 {
  margin-top: 30px;
  margin-bottom: 15px;
}

.col-mb-m div[class*="col-"] {
  margin-bottom: 30px;
}

.col-mb-s div[class*="col-"] {
  margin-bottom: 15px;
}

.col-mb-ss div[class*="col-"] {
  margin-bottom: 10px;
}



/*-------------------文字間・行間-----------------------*/


/*--bodyのスタイル--*/
body {
  line-height: 1.8;
  letter-spacing: normal;
  text-align: justify;
}

p {
  padding: 0.5em 0;
}

.lh-ll {
  line-height: 2.5 !important;
}

.lh-l {
  line-height: 2 !important;
}

.lh-mm {
  line-height: 1.8 !important;
}

.lh-m {
  line-height: 1.5 !important;
}

.lh-s {
  line-height: 1.3 !important;
}

.lh-ss {
  line-height: 1.1 !important;
}

.ls-l {
  letter-spacing: 3px !important;
}

.ls-m {
  letter-spacing: normal !important;
}

.ls-s {
  letter-spacing: -3px;
   !important;
}



/*-------------------書体-----------------------*/

body {
  font-family: 'Noto Serif', 'Sawarabi Mincho', serif;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
}




/*-------------------文字サイズ-----------------------*/

body {
  font-size: 16px;
}

h1 {
  font-size: 36px;
}

h2 {
  font-size: 28px;
}

h3 {
  font-size: 20px;
}

h4 {
  font-size: 16px;
}

.fs-ss {
  font-size: 12px;
}

.fs-s {
  font-size: 14px;
}

.fs-m {
  font-size: 16px;
}

.fs-mm {
  font-size: 20px;
}

.fs-l {
  font-size: 28px;
}

.fs-ll {
  font-size: 36px;
}

.fs-3l {
  font-size: 48px;
}



/*-------------------トップ見出し-----------------------*/
.single_title {
  font: 400 2.4rem 'Noto Sans JP';
  color: #0071bc;
}

.title-top {
  position: relative;
  color: #ffffff;
  display: inline-block;
  padding: 30px;
  z-index: 10;
}

.title-top:before {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background: #a60000;
  z-index: -1;
  opacity: 0.7;
}

#link3 {
  padding-top: 100px;
  padding-bottom: 100px;
}

/*-------------------リンクスタイル-----------------------*/

a {
  text-decoration: none;
}

main p a {
  text-decoration: underline;
}






/*-------------------見出し１-----------------------*/

.title1,
.post-contents h1 {
  position: relative;
  color: #4d4d4d;
}

.title1 span:before,
.post-contents h1 span:before {
  display: inline-block;
  width: 50px;
  height: 2px;
  background: #a60000;
  vertical-align: middle;
  margin-right: 20px;
  content: "";
}

.title1 span:after,
.post-contents h1 span:after {
  display: inline-block;
  width: 50px;
  height: 2px;
  background: #a60000;
  vertical-align: middle;
  margin-left: 20px;
  content: "";
}


/*-------------------見出し２-----------------------*/

.title2,
.post-contents h2 {
  color: #4d4d4d;
  position: relative;
  font-weight: bold;
  padding: 10px 0;
}

.title2:before,
.post-contents h2:before {
  border-bottom: 2px solid #a60000;
  width: 20%;
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  content: "";
}

.title2:after,
.post-contents h2:after {
  border-bottom: 2px solid #ccc;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
}


/*-------------------見出し３-----------------------*/

.title3,
.post-contents h3 {
  position: relative;
  padding: 0.3em 0 0.3em 0.8em;
  border-radius: 0px;
  color: #4d4d4d;
}

.title3:before,
.post-contents h3:before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0em;
  width: .3em;
  /* 四角形の横幅 */
  height: 1em;
  /* 四角形の縦幅 */
  background: #a60000;
  border-radius: 0px;
}


/*-------------------見出し４-----------------------*/

.title4,
.post-contents h4 {
  position: relative;
  padding-left: 1em;
  color: #4d4d4d;
}

.title4:after,
.post-contents h4:after {
  position: absolute;
  top: 0.4em;
  left: 0;
  width: .5em;
  height: .5em;
  content: "";
  background: #a60000;
  border-radius: 0px;
}



/*-------------------見出しの書式-----------------------*/
.body_wrap {
  margin-top: 110px !important;
}

#wrapper h1,
#wrapper h2,
#wrapper h3,
#wrapper h4 {
  line-height: 1.4;
}




/*-------------------見出し５-----------------------*/

.title5,
.post-contents h5 {
  font-weight: bold;
}

.title5:first-letter,
.post-contents h5:first-letter {
  color: #a60000;
}













/*-------------------ヘッダーレイアウト-----------------------*/

header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}

header>.container {
  display: flex;
  align-items: center;
  max-width: 100%;
  transition-duration: 0.5s;
  padding: 30px;
}

header.stick>.container {
  max-width: 1260px;
  padding: 10px;
}

.logo {
  width: 20%;
}

.desktop-nav {
  width: 80%;
}

@media screen and (max-width: 1180px) and (min-width: 1000px) {
  header>.container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 100%;
    transition-duration: 0.5s;
    padding: 30px 10px 30px 10px;
  }

  .logo {
    width: 15%;
  }
}

/*-------------------ヘッダー装飾スタイル１-----------------------*/

header,
header.stick,
header.stick .desktop-nav .sub-menu {
  background: #ffffff;
  transition: 0.5s;
}


/*-------------------ヘッダー装飾スタイル2-----------------------*/

header {
  box-shadow: 0px 0px 5px 3px rgba(100, 100, 100, 0.3);
}


/*-------------------ヘッダー装飾スタイル3-----------------------*/

header {
  border-top: 5px solid #0071bc;
}


/*-------------------メニューレイアウト-----------------------*/

.desktop-nav ul {
  display: flex;
  flex-wrap: wrap;
  /*折り返しあり*/
  align-items: center;
  justify-content: flex-end;
  /*右寄せ　指定しなければ左寄せになる*/
}

.desktop-nav li {
  position: relative;
  padding: 0 5px;
}

.desktop-nav li a {
  text-align: center;
  text-decoration: none;
  display: inline-block;
  padding: 0.5em 1em;
  font-weight: bold;
  letter-spacing: 1px;
  font: 500 1.6rem 'Noto Sans JP';
}

.desktop-nav li span {
  display: block;
  text-align: center;
  font-size: 0.8em;
}

.desktop-nav li:hover>ul {
  box-shadow: 5px 0px 10px 3px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 5px 0px 10px 3px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 5px 0px 10px 3px rgba(0, 0, 0, 0.3);
}

.desktop-nav li:hover>ul>li {
  overflow: visible;
  height: auto;
}

/*--子要素の指定
----------------------------------*/
.desktop-nav li ul {
  position: absolute;
  z-index: 100;
  top: 100%;
  left: 0;
  width: 12em;
  margin: 0;
  padding: 0;
  transition: .2s;
}

/*
 .desktop-nav .navbar-nav > li:last-child > ul {
    position: absolute;
    left: -5em;
    right: 0;
}
*/
.desktop-nav li ul li {
  overflow: hidden;
  width: 100%;
  height: 0;
  padding: 0;
  margin: 0;
}

.desktop-nav li ul li a {
  display: block;
  text-align: left;
  padding: 0.5em;
  ;
  border-right: none;
}

/*--孫要素の指定
----------------------------------*/
.desktop-nav li ul li ul {
  top: 0;
  left: 100%;
}

/*--menu矢印 fontawsome--*/
.navbar-nav>.menu-item-has-children>a {
  /*	padding-right:2em;*/
}

.navbar-nav>.menu-item-has-children>a {
  position: relative;
}

.navbar-nav>.menu-item-has-children>a:after {
  position: absolute;
  top: 50%;
  right: 0px;
  font-family: 'Font Awesome 5 Free';
  content: '\f078';
  margin-top: -0.6em;
  font-size: 0.8em;
  font-weight: bold;
}

.navbar-nav>.menu-item-has-children>.menu-item-has-children>a:after {
  display: inline-block;
  margin: 0 0.5em 0;
  font-family: 'Font Awesome 5 Free';
  content: '\f105';
  font-weight: bold;
  font-size: 0.8em;
}

/*--ボタンアイコン
----------------------------------*/
.icon-font a {
  position: relative;
  padding-left: 2em !important;
}

.icon-font a:after {
  position: absolute;
  top: 50%;
  left: 0.6em;
  font-family: 'Font Awesome 5 Free';
  margin-top: -0.85em;
  font-size: 0.8em;
  font-weight: bold;
}

.icon-cart a:after {
  content: '\f07a';
}

.icon-login a:after {
  content: '\f2f6';
}

.icon-regist a:after {
  content: '\f007';
}

.icon-mail a:after {
  content: '\f0e0';
}

.mobile-nav {
  display: none;
}






/*-------------------メニューリンク装飾スタイル-----------------------*/

.desktop-nav li a {
  position: relative;
  color: #4d4d4d;
}


.desktop-nav li.current-menu-item a::before,
.desktop-nav li a:hover::before {
  transform: scale(1, 1);
}

.desktop-nav li.current-menu-item a,
.desktop-nav li.current-menu-item a::before,
.desktop-nav li a:hover,
.desktop-nav li a:hover::before {
  opacity: 0.8;
  color: #005eae;
}

.desktop-nav li:hover>ul {
  background: #ffffff;
}









/*-------------------toggleスタイル-----------------------*/

/*スマホ時のメニューボタンのスタイル
    ---------------------------------------------*/
.toggle {
  padding: 10px 0px;
}

.menu-btn {
  overflow: hidden;
  display: block;
  position: relative;
  z-index: 0;
  height: 30px;
  cursor: pointer;
}

.menu-btn span,
.menu-btn::before,
.menu-btn::after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 30px;
  height: 2px;
  /*線の太さを変える*/
  margin: auto;
  background: #4d4d4d;
}

.menu-btn span {
  overflow: hidden;
  z-index: 1;
  color: #4d4d4d;
}

.menu-btn::before {
  z-index: 2;
  transform: translate(0, -12px);
  content: "";
}

.menu-btn::after {
  z-index: 2;
  transform: translate(0, 12px);
  content: "";
}

.menu-btn span {
  opacity: 1;
  transition: opacity 150ms 50ms;
}

.menu-btn::before,
.menu-btn::after {
  transition: transform 200ms;
}

.menu-btn.active span {
  opacity: 0;
  transition: opacity 150ms;
}

.menu-btn.active::before {
  transform: rotate(45deg);
}

.menu-btn.active::after {
  transform: rotate(-45deg);
}

.menu-text {
  display: block;
  font-size: 0.6em;
  width: 100%;
  text-align: center;
  line-height: 1;
  margin-top: 5px;
  color: #4d4d4d;
}





/*-------------------インデックスページ（index.php）-----------------------*/

.page-header.index-page {
  background: #a60000;
}

.page-header {
  height: auto;
}

.page-header:before {
  padding-top: 62.5%;
}








/*-------------------カスタムページ（page-custom2.php）-----------------------*/

.column-2-page.container {
  padding-top: 120px;
  padding-bottom: 120px;
}





/*-------------------一覧ページ(archive.php)-----------------------*/

.page-header.archive-page {
  background: #a60000;
}


/*-------------------検索スタイル-----------------------*/
#searchStyle {
  position: relative;
  width: 100%;
  overflow: hidden;
  height: 3em;
}

#searchStyle #s {
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  padding: 0 6em 0 0.5em;
  position: absolute;
  top: 0;
  left: 0;
  border: 1px solid #7373731;
  border-radius: 0px;
}

#searchStyle #searchButton {
  position: absolute;
  margin: 0;
  top: 50%;
  right: 5px;
  margin-top: -1em;
}

#searchStyle i {
  font-size: 1.5em;
}

/*-------------------左サイド内リスト-----------------------*/
#left .widget_archive ul,
#left .widget_recent_comments ul,
#left .widget_recent_entries ul,
#left .widget_text ul,
#left .widget_categories ul,
#left .widget_nav_menu ul,
#left .widget_meta ul,
#left .widget_welcart_category ul,
#left .widget_welcart_page ul,
#left .widget_welcart_bestseller ul,
#left .usces_recent_entries ul {
  padding: 0px;
  margin: 0px;
  list-style: none;
  /*line-height:1;*/
}

#left .widget_archive ul li,
#left .widget_recent_comments ul li,
#left .widget_recent_entries ul li,
#left .widget_text ul li,
#left .widget_categories ul li,
#left .widget_nav_menu ul li,
#left .widget_meta ul li,
#left .widget_welcart_category ul li,
#left .widget_welcart_page ul li,
#left .widget_welcart_bestseller ul li,
#left .usces_recent_entries ul li {
  width: 100%;
  padding: 0px;
  position: relative;
}

#left .widget_archive ul li span,
#left .widget_archive ul li a,
#left .widget_recent_comments ul li span,
#left .widget_recent_comments ul li a,
#left .widget_recent_entries ul li span,
#left .widget_recent_entries ul li a,
#left .widget_text ul li span,
#left .widget_text ul li a,
#left .widget_categories ul li span,
#left .widget_categories ul li a,
#left .widget_nav_menu ul li span,
#left .widget_nav_menu ul li a,
#left .widget_meta ul li span,
#left .widget_meta ul li a,
#left .widget_welcart_category ul li span,
#left .widget_welcart_category ul li a,
#left .widget_welcart_page ul li span,
#left .widget_welcart_page ul li a,
#left .widget_welcart_bestseller ul li span,
#left .widget_welcart_bestseller ul li a,
#left .usces_recent_entries ul li span,
#left .usces_recent_entries ul li a {
  color: #4d4d4d;
  display: block;
  padding: 10px 30px 10px 10px;
  border-bottom: solid 1px #eee;
}

#left .widget_archive ul li a:hover,
#left .widget_recent_comments ul li a:hover,
#left .widget_recent_entries ul li a:hover,
#left .widget_text ul li a:hover,
#left .widget_categories ul li a:hover,
#left .widget_nav_menu ul li a:hover,
#left .widget_meta ul li a:hover,
#left .widget_welcart_category ul li a:hover,
#left .widget_welcart_page ul li a:hover,
#left .widget_welcart_bestseller ul li a:hover,
#left .usces_recent_entries ul li a:hover {
  color: #a60000;
}

/*--リストマークのスタイル--*/
#left .widget_archive ul li a:after,
/*--リストマークのスタイル--*/
#left .widget_recent_comments ul li a:after,
/*--リストマークのスタイル--*/
#left .widget_recent_entries ul li a:after,
/*--リストマークのスタイル--*/
#left .widget_text ul li a:after,
/*--リストマークのスタイル--*/
#left .widget_categories ul li a:after,
/*--リストマークのスタイル--*/
#left .widget_nav_menu ul li a:after,
/*--リストマークのスタイル--*/
#left .widget_meta ul li a:after,
/*--リストマークのスタイル--*/
#left .widget_welcart_category ul li a:after,
/*--リストマークのスタイル--*/
#left .widget_welcart_page ul li a:after,
/*--リストマークのスタイル--*/
#left .widget_welcart_bestseller ul li a:after,
/*--リストマークのスタイル--*/
#left .usces_recent_entries ul li a:after {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.5em;
  width: 0.5em;
  height: 0.5em;
  margin-top: -0.3em;
  border-top: solid 2px #a60000;
  border-right: solid 2px #a60000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  content: "";
}




/*-------------------メインコンテンツ内リスト-----------------------*/

main .widget_archive ul,
main .widget_recent_comments ul,
main .widget_recent_entries ul,
main .widget_text ul,
main .widget_categories ul,
main .widget_nav_menu ul,
main .widget_meta ul,
main .widget_welcart_category ul,
main .widget_welcart_page ul,
main .widget_welcart_bestseller ul,
main .usces_recent_entries ul {
  padding: 0;
  margin: 0;
}

main .widget_archive ul li span,
main .widget_recent_comments ul li span,
main .widget_recent_entries ul li span,
main .widget_text ul li span,
main .widget_categories ul li span,
main .widget_nav_menu ul li span,
main .widget_meta ul li span,
main .widget_welcart_category ul li span,
main .widget_welcart_page ul li span,
main .widget_welcart_bestseller ul li span,
main .usces_recent_entries ul li span {
  color: #4d4d4d;
}

main .widget_archive ul li:hover,
main .widget_recent_comments ul li:hover,
main .widget_recent_entries ul li:hover,
main .widget_text ul li:hover,
main .widget_categories ul li:hover,
main .widget_nav_menu ul li:hover,
main .widget_meta ul li:hover,
main .widget_welcart_category ul li:hover,
main .widget_welcart_page ul li:hover,
main .widget_welcart_bestseller ul li:hover,
main .usces_recent_entries ul li:hover {
  text-decoration: none;
}

main .widget_archive ul li,
main .widget_recent_comments ul li,
main .widget_recent_entries ul li,
main .widget_text ul li,
main .widget_categories ul li,
main .widget_nav_menu ul li,
main .widget_meta ul li,
main .widget_welcart_category ul li,
main .widget_welcart_page ul li,
main .widget_welcart_bestseller ul li,
main .usces_recent_entries ul li {
  position: relative;
  padding: 10px 0 10px 1.3em;
}

main .widget_archive ul li a,
main .widget_recent_comments ul li a,
main .widget_recent_entries ul li a,
main .widget_text ul li a,
main .widget_categories ul li a,
main .widget_nav_menu ul li a,
main .widget_meta ul li a,
main .widget_welcart_category ul li a,
main .widget_welcart_page ul li a,
main .widget_welcart_bestseller ul li a,
main .usces_recent_entries ul li a {
  display: block;
}

/*--リストマークの●型スタイル--*/
main .widget_archive ul li:before,
/*--リストマークの●型スタイル--*/
main .widget_recent_comments ul li:before,
/*--リストマークの●型スタイル--*/
main .widget_recent_entries ul li:before,
/*--リストマークの●型スタイル--*/
main .widget_text ul li:before,
/*--リストマークの●型スタイル--*/
main .widget_categories ul li:before,
/*--リストマークの●型スタイル--*/
main .widget_nav_menu ul li:before,
/*--リストマークの●型スタイル--*/
main .widget_meta ul li:before,
/*--リストマークの●型スタイル--*/
main .widget_welcart_category ul li:before,
/*--リストマークの●型スタイル--*/
main .widget_welcart_page ul li:before,
/*--リストマークの●型スタイル--*/
main .widget_welcart_bestseller ul li:before,
/*--リストマークの●型スタイル--*/
main .usces_recent_entries ul li:before {
  display: block;
  content: "";
  position: absolute;
  top: 10px;
  left: 0em;
  width: 0.8em;
  height: 0.8em;
  border-radius: 50%;
  background: #a60000;
  margin-top: 0.4em;
  line-height: 1;
}

/*--リストマークの矢印型スタイル--*/
main .widget_archive ul li:after,
/*--リストマークの矢印型スタイル--*/
main .widget_recent_comments ul li:after,
/*--リストマークの矢印型スタイル--*/
main .widget_recent_entries ul li:after,
/*--リストマークの矢印型スタイル--*/
main .widget_text ul li:after,
/*--リストマークの矢印型スタイル--*/
main .widget_categories ul li:after,
/*--リストマークの矢印型スタイル--*/
main .widget_nav_menu ul li:after,
/*--リストマークの矢印型スタイル--*/
main .widget_meta ul li:after,
/*--リストマークの矢印型スタイル--*/
main .widget_welcart_category ul li:after,
/*--リストマークの矢印型スタイル--*/
main .widget_welcart_page ul li:after,
/*--リストマークの矢印型スタイル--*/
main .widget_welcart_bestseller ul li:after,
/*--リストマークの矢印型スタイル--*/
main .usces_recent_entries ul li:after {
  display: block;
  position: absolute;
  top: 10px;
  left: 0.1em;
  width: .4em;
  height: .4em;
  border-top: solid .1em #ffffff;
  border-right: solid .1em #ffffff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  content: "";
  margin-top: 0.6em;
  line-height: 1;
}

main .widget_archive ul li ul,
main .widget_recent_comments ul li ul,
main .widget_recent_entries ul li ul,
main .widget_text ul li ul,
main .widget_categories ul li ul,
main .widget_nav_menu ul li ul,
main .widget_meta ul li ul,
main .widget_welcart_category ul li ul,
main .widget_welcart_page ul li ul,
main .widget_welcart_bestseller ul li ul,
main .usces_recent_entries ul li ul {
  margin: 0.5em 0 -0.5em 0;
}



/*-------------------シングルパーツ(content.php)-----------------------*/

.nav-box {
  margin: 0.5em 0;
  padding: 0.5em 0;
}

.nav-box .prev {
  width: 49%;
  float: left;
  text-align: left;
}

.nav-box .next {
  width: 49%;
  float: right;
  text-align: right;
}







/*-------------------単一スタイル-----------------------*/

.single-date-label {
  padding-bottom: 10px;
  color: #4d4d4d;
}

.date-label {
  padding-bottom: 2px;
  color: #4d4d4d;
  font-size: 14px;
}

.date-label i {
  color: #4d4d4d !important;
}

.date-label time {
  font: 500 1.4rem 'Noto Sans JP';
  line-height: 1.8;
  color: #4d4d4d;
}

.max_width_1300 {
  width: 100%;
  max-width: 1300px;
  margin: 0 auto;
}

.card-text {
  font: 500 2.2rem 'Noto Sans JP';
  line-height: 1.3;
  color: #0071bc;
  margin-bottom: 15px;
}

.card-content {
  font: 400 1.6rem 'Noto Sans JP';
  line-height: 1.8;
}

.post-contents {
  margin-top: 15px;
  margin-bottom: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
  color: #4d4d4d;
  font: 400 1.6rem 'Noto Sans JP';
}

.single_container {
  width: 100%;
  margin: 0 auto;
  background-color: #fff;
  max-width: 1260px;
}

.single_container figure {
  display: block;
}

.single_container figure img {
  width: 100% !important;
  display: block;
}

.single_container p {
  line-height: 1.875;
  letter-spacing: 0.05em;
}

.single_post {
  width: 87%;
  margin: 0 auto;
  padding-top: 60px;
  padding-bottom: 80px;
}

.width_full {
  width: 100% !important;
  max-width: none;
  padding: 0px !important;
}

.max_width_1260 {
  max-width: 1260px;
}

.single-date-label time {
  padding-left: 10px;
}


/*-------------------右サイド内リスト-----------------------*/
#right .widget_archive ul,
#right .widget_recent_comments ul,
#right .widget_recent_entries ul,
#right .widget_text ul,
#right .widget_categories ul,
#right .widget_nav_menu ul,
#right .widget_meta ul,
#right .widget_welcart_category ul,
#right .widget_welcart_page ul,
#right .widget_welcart_bestseller ul,
#right .usces_recent_entries ul {
  padding: 0px;
  margin: 0px;
  list-style: none;
  /*line-height:1;*/
}

#right .widget_archive ul li,
#right .widget_recent_comments ul li,
#right .widget_recent_entries ul li,
#right .widget_text ul li,
#right .widget_categories ul li,
#right .widget_nav_menu ul li,
#right .widget_meta ul li,
#right .widget_welcart_category ul li,
#right .widget_welcart_page ul li,
#right .widget_welcart_bestseller ul li,
#right .usces_recent_entries ul li {
  width: 100%;
  padding: 0px;
  position: relative;
}

#right .widget_archive ul li span,
#right .widget_archive ul li a,
#right .widget_recent_comments ul li span,
#right .widget_recent_comments ul li a,
#right .widget_recent_entries ul li span,
#right .widget_recent_entries ul li a,
#right .widget_text ul li span,
#right .widget_text ul li a,
#right .widget_categories ul li span,
#right .widget_categories ul li a,
#right .widget_nav_menu ul li span,
#right .widget_nav_menu ul li a,
#right .widget_meta ul li span,
#right .widget_meta ul li a,
#right .widget_welcart_category ul li span,
#right .widget_welcart_category ul li a,
#right .widget_welcart_page ul li span,
#right .widget_welcart_page ul li a,
#right .widget_welcart_bestseller ul li span,
#right .widget_welcart_bestseller ul li a,
#right .usces_recent_entries ul li span,
#right .usces_recent_entries ul li a {
  color: #4d4d4d;
  display: block;
  padding: 10px 30px 10px 10px;
  border-bottom: solid 1px #eee;
}

#right .widget_archive ul li a:hover,
#right .widget_recent_comments ul li a:hover,
#right .widget_recent_entries ul li a:hover,
#right .widget_text ul li a:hover,
#right .widget_categories ul li a:hover,
#right .widget_nav_menu ul li a:hover,
#right .widget_meta ul li a:hover,
#right .widget_welcart_category ul li a:hover,
#right .widget_welcart_page ul li a:hover,
#right .widget_welcart_bestseller ul li a:hover,
#right .usces_recent_entries ul li a:hover {
  color: #a60000;
}

/*--リストマークのスタイル--*/
#right .widget_archive ul li a:after,
/*--リストマークのスタイル--*/
#right .widget_recent_comments ul li a:after,
/*--リストマークのスタイル--*/
#right .widget_recent_entries ul li a:after,
/*--リストマークのスタイル--*/
#right .widget_text ul li a:after,
/*--リストマークのスタイル--*/
#right .widget_categories ul li a:after,
/*--リストマークのスタイル--*/
#right .widget_nav_menu ul li a:after,
/*--リストマークのスタイル--*/
#right .widget_meta ul li a:after,
/*--リストマークのスタイル--*/
#right .widget_welcart_category ul li a:after,
/*--リストマークのスタイル--*/
#right .widget_welcart_page ul li a:after,
/*--リストマークのスタイル--*/
#right .widget_welcart_bestseller ul li a:after,
/*--リストマークのスタイル--*/
#right .usces_recent_entries ul li a:after {
  display: block;
  position: absolute;
  top: 50%;
  right: 0.5em;
  width: 0.5em;
  height: 0.5em;
  margin-top: -0.3em;
  border-top: solid 2px #a60000;
  border-right: solid 2px #a60000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  content: "";
}



/*-------------------右サイド見出し-----------------------*/

.title-right-side {
  color: #4d4d4d;
  border-bottom: 1px solid #a60000;
}














/*-------------------一覧スタイル-----------------------*/

.archive-list .list-contents {
  padding: 10px 0;
}

.archive-list .tag-box,
.archive-list .category-box {
  padding: 10px 0;
  font-size: 0.8em;
}

.archive-list .btn-box {
  text-align: right;
}

ul.archive-list {
  margin-bottom: 80px !important;
}





/*-------------------一覧レイアウト-----------------------*/

.archive-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
}

.archive-list li {
  width: 31.5%;
  margin-left: 0;
  margin-bottom: 50px;
}

.archive-list li:nth-child(2n+1) {
  margin-left: 0;
}


.width_90 {
  width: 90%;
}

.margin_auto {
  margin: 0 auto !important;
}




/*-------------------最近の投稿(画像無し)-----------------------*/

.recent-posts {
  padding: 0;
  max-width: 930px;
  margin: 0 auto;
}

.recent-posts li {
  border-bottom: 1px solid #4d4d4d;
  border-top: 1px solid #4d4d4d;
  padding: 10px 0;
  margin-top: -1px;
  color: #4d4d4d;
}

.title a {
  color: #4d4d4d;
  width: 100%;
}

.recent-posts li .title,
.recent-posts li .date {
  display: inline-block;
  font-size: 1.6rem;
  font-family: 'Noto Sans JP';
  font-weight: 400 !important;
}

.recent-posts li .date {
  width: 15%;
}

.recent-posts li .category-box {
  padding: 10px 0;
}





/*-------------------テーブルスタイル-----------------------*/
.tableStyle {
  border-collapse: collapse;
  width: 100%;
}

.tableStyle tr {
  border-top: 1px solid #4d4d4d;
}

.tableStyle tr:last-child {
  border-bottom: 1px solid #4d4d4d;
}

.tableStyle th {
  padding: 15px 0px 15px 0px !important;
}

.tableStyle tr th,
.tableStyle td {
  padding: 10px 10px 10px 0px;
  font: 400 1.6rem 'Noto Sans JP';
  line-height: 1.6;
  vertical-align: top;
}

.tableStyle tr th {
  font: 500 1.6rem 'Noto Sans JP';
padding-left: 25px!important;
}

.tableStyle tr:nth-child(odd) {
  background-color: #fff;
}


/*-------------------テーブルレイアウト-----------------------*/
.tableLayout {
  table-layout: fixed;
  /*IEなどで、テーブル内でinputを使うと、はみ出る不具合を防ぐ*/
  border-collapse: collapse;
  border-spacing: 0;
  max-width: 930px;
  margin: 0 auto;
}

.tableLayout th,
.tableLayout td {
  padding: 15px 15px 15px 0px;
}

/* 
@media screen and (max-width: 1000px) {

  .tableLayout th,
  .tableLayout td {
    display: block;
  }
} */




/*-------------------inputボタンスタイル-----------------------*/

input[type="submit"],
input[type="button"] {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 1px;
  font-weight: 400;
  background: #a60000;
  border: 2px solid #a60000;
  border-radius: 0px;
  color: #ffffff;
}

input[type="submit"]:hover,
input[type="button"]:hover {
  background: #ffffff;
  text-decoration: none;
  color: #a60000;
}




/*-------------------アンカーボタンスタイル-----------------------*/

a.btn-main,
button.btn-main,
.desktop-nav li.btn-main a,
input[type="button"].btn-main,
input[type="submit"].btn-main {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 1px;
  font-weight: 400;
  background: #0071bc;
  border: 1px solid #ffffff;
  border-radius: 0px;
  color: #ffffff;
  position: relative;
  padding-right: 30px;
  padding-left: 30px;
  text-align: center;
}

a.btn-main:hover,
button.btn-main:hover,
.desktop-nav li.btn-main a:hover,
input[type="button"].btn-main:hover,
input[type="submit"].btn-main:hover {
  background: #ffffff;
  text-decoration: none;
  color: #0071bc;
}

a.btn-main::before,
button.btn-main::before,
.desktop-nav li.btn-main a::before,
input[type="button"].btn-main::before,
input[type="submit"].btn-main::before {
  position: absolute;
  top: 50%;
  right: 0.6em;
  font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";
  margin-top: -0.5em;
  font-size: 0.8em;
  content: '\f054';
  font-weight: bold;
}



/*-------------------ボタンサイズ-----------------------*/

.btn-s {
  line-height: 1;
  padding: 5px 10px !important;
}

input[type="submit"],
input[type="button"],
.btn-m {
  line-height: 1;
  padding: 10px 20px;
}

.btn-l {
  line-height: 1;
  padding: 20px 40px;
}

.btn-ll {
  line-height: 1;
  padding: 30px 60px;
}




/*-------------------アクセントボタン-----------------------*/

a.btn-accent,
button.btn-accent,
.desktop-nav li.btn-accent a,
input[type="button"].btn-accent,
input[type="submit"].btn-accent {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 1px;
  font-weight: 400;
  background: #737373;
  border: 2px solid #737373;
  border-radius: 0px;
  color: #ffffff;
  position: relative;
  padding-right: 30px;
  padding-left: 30px;
  text-align: center;
}

a.btn-accent:hover,
button.btn-accent:hover,
.desktop-nav li.btn-accent a:hover,
input[type="button"].btn-accent:hover,
input[type="submit"].btn-accent:hover {
  background: #ffffff;
  text-decoration: none;
  color: #737373;
}

a.btn-accent::before,
button.btn-accent::before,
.desktop-nav li.btn-accent a::before,
input[type="button"].btn-accent::before,
input[type="submit"].btn-accent::before {
  position: absolute;
  top: 50%;
  right: 0.6em;
  font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";
  margin-top: -0.5em;
  font-size: 0.8em;
  content: '\f054';
  font-weight: bold;
}



/*-------------------サブボタン-----------------------*/

a.btn-sub,
button.btn-sub,
.desktop-nav li.btn-sub a,
input[type="button"].btn-sub,
input[type="submit"].btn-sub,
input[type="button"][class^="back_"],
input[type="submit"][class^="back_"] {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 1px;
  font-family: 'Noto Sans JP';
  font-weight: 500;
  font-size: 18px;
  background: #0071bc;
  border: 2px solid #0071bc;
  border-radius: 0px;
  color: #ffffff;
  position: relative;
  padding-right: 40px;
  padding-left: 30px;
  text-align: center;
  margin: 0 auto;
}

a.btn-sub:hover,
button.btn-sub:hover,
.desktop-nav li.btn-sub a:hover,
input[type="button"].btn-sub:hover,
input[type="submit"].btn-sub:hover,
input[type="button"][class^="back_"]:hover,
input[type="submit"][class^="back_"]:hover {
  background: #ffffff;
  text-decoration: none;
  color: #0071bc;
}

a.btn-sub::before,
button.btn-sub::before,
.desktop-nav li.btn-sub a::before,
input[type="button"].btn-sub::before,
input[type="submit"].btn-sub::before,
input[type="button"][class^="back_"]::before,
input[type="submit"][class^="back_"]::before {
  position: absolute;
  top: 53%;
  right: 0.6em;
  font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";
  margin-top: -0.5em;
  font-size: 0.8em;
  content: '\f054';
  font-weight: bold;
}



/*-------------------ページャー-----------------------*/
.pagenation {
  margin: 1em 0;
}

.pagenation:after,
.pagenation ul:after {
  clear: both;
  content: ".";
  display: block;
  height: 0;
  visibility: hidden;
}

.pagenation ul {
  margin: 0;
}

.pagenation li {
  float: left;
  list-style: none outside none;
  margin-left: 3px;
}

.pagenation li:first-child {
  margin-left: 0;
}

.pagenation li.active {
  background-color: #a60000;
  border-radius: 0px;
  color: #ffffff;
  cursor: not-allowed;
  padding: 10px 20px;
}

.pagenation li a {
  background: none repeat scroll 0 0 #ccc;
  border-radius: 0px;
  color: #ffffff;
  display: block;
  padding: 10px 20px;
  text-decoration: none;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
}

.pagenation li a:hover {
  background-color: #d33535;
  color: #ffffff;
  opacity: 0.8;
  transition-duration: 500ms;
  transition-property: all;
  transition-timing-function: ease;
}

.pagenation {
  height: auto;
  display: block;
  position: relative;
  top: 0px;
  padding: 90px 0px 110px 0px;
}

.wp-pagenavi a {
  padding: 0px 15px;
  border: none;
  font: 400 1.6rem 'Montserrat' !important;
}

.current {
  padding: 0px 15px !important;
  border: none !important;
  font: 500 1.6rem 'Montserrat' !important;
}

.navigation {
  display: flex;
  justify-content: space-between;
  margin: 110px auto;
  width: 100%;
  max-width: 1100px;
}

@media screen and (max-width: 680px) {
  /*-------------------サブボタン-----------------------*/

  a.btn-sub,
  button.btn-sub,
  .desktop-nav li.btn-sub a,
  input[type="button"].btn-sub,
  input[type="submit"].btn-sub,
  input[type="button"][class^="back_"],
  input[type="submit"][class^="back_"] {
    display: inline-block;
    transition: all 0.5s;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 1px;
    font-family: 'Noto Sans JP';
    font-weight: 400;
    font-size: 1.6rem;
    background: #0071bc;
    border: 2px solid #0071bc;
    border-radius: 0px;
    color: #ffffff;
    position: relative;
    padding-right: 30px;
    padding-left: 30px;
    text-align: center;
    margin: 0 auto;
  }

  a.btn-sub:hover,
  button.btn-sub:hover,
  .desktop-nav li.btn-sub a:hover,
  input[type="button"].btn-sub:hover,
  input[type="submit"].btn-sub:hover,
  input[type="button"][class^="back_"]:hover,
  input[type="submit"][class^="back_"]:hover {
    background: #ffffff;
    text-decoration: none;
    color: #0071bc;
  }

  a.btn-sub::before,
  button.btn-sub::before,
  .desktop-nav li.btn-sub a::before,
  input[type="button"].btn-sub::before,
  input[type="submit"].btn-sub::before,
  input[type="button"][class^="back_"]::before,
  input[type="submit"][class^="back_"]::before {
    position: absolute;
    top: 50%;
    right: 0.6em;
    font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";
    margin-top: -0.5em;
    font-size: 0.8em;
    content: '\f054';
    font-weight: bold;
  }

  /*-------------------アンカーボタンスタイル-----------------------*/

  a.btn-main,
  button.btn-main,
  .desktop-nav li.btn-main a,
  input[type="button"].btn-main,
  input[type="submit"].btn-main {
    display: inline-block;
    transition: all 0.5s;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 1px;
    font-weight: 400;
    font-size: 1.4rem;
    background: #0071bc;
    border: 1px solid #ffffff;
    border-radius: 0px;
    color: #ffffff;
    position: relative;
    padding-right: 30px;
    padding-left: 30px;
    text-align: center;
  }

  a.btn-main:hover,
  button.btn-main:hover,
  .desktop-nav li.btn-main a:hover,
  input[type="button"].btn-main:hover,
  input[type="submit"].btn-main:hover {
    background: #ffffff;
    text-decoration: none;
    color: #0071bc;
  }

  a.btn-main::before,
  button.btn-main::before,
  .desktop-nav li.btn-main a::before,
  input[type="button"].btn-main::before,
  input[type="submit"].btn-main::before {
    position: absolute;
    top: 50%;
    right: 0.6em;
    font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands";
    margin-top: -0.5em;
    font-size: 0.8em;
    content: '\f054';
    font-weight: bold;
  }



}



@media screen and (max-width: 1200px) {
  .navigation {
    display: flex;
    justify-content: space-between;
    margin: 30px auto 50px;
    width: 90%;
    max-width: 1100px;
  }
}

.navileft {
  width: 33.3%;
  text-align: left;
  font: 400 1.8rem 'Montserrat';
  color: #4d4d4d !important;
}

.navitop {
  width: 33.3%;
  text-align: center;
  font: 400 1.8rem 'Montserrat';
  margin-top: 0px;
}

.navitop a {
  color: #005eae !important;
  font: 400 1.8rem 'Montserrat';
}

.naviright {
  width: 33.3%;
  text-align: right;
  font: 400 1.8rem 'Montserrat';

}

.naviright a {
  color: #4d4d4d !important;
}

.navileft a {
  color: #4d4d4d !important;
}

/*-------------------カテゴリースタイル-----------------------*/

.btn-category {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 1px;
  font-weight: 400;
  background: #a60000;
  border: 2px solid #a60000;
  border-radius: 0px;
  color: #ffffff;
}

.btn-category:hover {
  background: #ffffff;
  text-decoration: none;
  color: #a60000;
}




/*-------------------タグスタイル-----------------------*/

.btn-tag {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration: none;
  letter-spacing: 1px;
  font-weight: 400;
  background: #a60000;
  border: 2px solid #a60000;
  border-radius: 0px;
  color: #ffffff;
}

.btn-tag:hover {
  background: #ffffff;
  text-decoration: none;
  color: #a60000;
}




/*-------------------リストスタイル-----------------------*/
ul.list-style {
  padding: 0;
  margin: 0;
}

ul.list-style li {
  padding: 0.5em 0.3em 0.5em 0em;
  line-height: 1.5em;
}

ul.list-style li span {
  color: #4d4d4d;
}

ul.list-style li:hover {
  text-decoration: none;
}

ul.list-style li {
  position: relative;
  padding: 0.5em 0 0.5em 1.3em;
}

ul.list-style li a {
  display: block;
}

/*--リストマークの矢印型スタイル--*/
ul.list-style li:after {
  display: block;
  position: absolute;
  top: 1em;
  left: 0;
  width: .5em;
  height: .5em;
  content: "";
  background: #a60000;
}

ul.list-style li ul {
  margin: 0.5em 0 -0.5em 0;
}




/*-------------------カレンダースタイル-----------------------*/
table#wp-calendar {
  text-align: center;
  border-collapse: collapse;
  border-top-width: 1px;
  border-right-width: 1px;
  border-top-style: solid;
  border-right-style: solid;
  border-top-color: #d33535;
  border-right-color: #d33535;
  width: 100%;
}

table#wp-calendar th {
  background: #a60000;
  color: #ffffff;
  text-align: center;
  padding: 5px;
}

table#wp-calendar tr th {
  border-bottom-width: 1px;
  border-left-width: 1px;
  border-bottom-style: solid;
  border-left-style: solid;
  border-bottom-color: #d33535;
  border-left-color: #d33535;
}

table#wp-calendar td {
  text-align: center;
  padding: 5px;
  border-bottom-width: 1px;
  border-left-width: 1px;
  border-bottom-style: solid;
  border-left-style: solid;
  border-bottom-color: #d33535;
  border-left-color: #d33535;
}

table#wp-calendar caption {
  font-weight: bold;
  text-align: left;
}

table#wp-calendar tbody tr #today {
  background: #a60000;
  color: #ffffff;
}

table#wp-calendar tbody tr #today a {
  color: #ffffff;
}





/*-------------------inputスタイル-----------------------*/

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"],
select,
textarea {
  color: #4d4d4d;
  border: solid 1px #ccc;
  border-radius: 0px;
  background: #ffffff;
}

input:focus {
  border: solid 1px #a60000;
}



/*-------------------inputレイアウト-----------------------*/

input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="number"],
select,
textarea {
  width: 100%;
  padding: 5px 10px;
}

input[type="tel"],
input[type="number"],
select {
  width: auto;
}









/*-------------------javascript1-----------------------*/

.overlay-right,
.overlay-left {
  content: "";
  position: absolute;
  top: 0;
  /*  background: #ffffff;*/
  height: 100%;
  width: 100%;
  z-index: 999;
}

.overlay-right {
  right: 0;
}

.overlay-left {
  left: 0;
}

.sequence-fadeUp>span,
.sequence-fadeRight>span {
  display: inline-block;
}











/*-------------------javascript4-----------------------*/

/* sidebar追従
-----------------------------*/
#wrapper .contents-main {
  position: relative;
  align-items: flex-start;
}

#right,
#left {
  positoion: absolute;
}












/*-------------------フッターレイアウト-----------------------*/

#footer {
  background-color: #fff;
}

#footer .footer-body .container {
  padding-top: 30px;
  padding-bottom: 30px;
}

#copyright {
  padding-top: 30px;
  padding-bottom: 30px;
}

#footer .footer-sns ul {
  display: flex;
  justify-content: center;
  padding-top: 30px;
  padding-bottom: 30px;
}

#footer .footer-sns ul li {
  padding-left: 10px;
  padding-right: 10px;
  font-size: 36px;
}


/*-------------------javascript5-----------------------*/

body::after {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 9999;
  pointer-events: none;
  opacity: 0;
  -webkit-transition: opacity .8s ease;
  /* アニメーション時間は 0.8秒 */
  -ms- transition: opacity .8s ease;
  -moz- transition: opacity .8s ease;
  transition: opacity .8s ease;
}

/*body要素に.fadeoutセレクタがある場合には、レイヤーが表示されるようにopacityを１に設定します。*/
body.fadeout::after {
  opacity: 1;
}

.mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  z-index: 9999;
  pointer-events: none;
  animation: fadeIn 1s ease 0s 1 normal;
  -webkit-animation: fadeIn 1s ease 0s 1 normal;
  opacity: 0;
}

.btn-main {
  position: relative;
}

.main_btn_inner {
  position: relative;
  width: fit-content;
  padding-left: 48px;
  margin: 0 auto;
}

.main_btn_inner:after {
  content: "";
  position: absolute;
  width: 48px;
  height: 48px;
  background: url(./images/themplate_img/2x/tel.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  transform: translate(0, -50%);
  top: 47%;
  left: -5%;
}

.main_btn_inner span {
  font-weight: 700;
  font-size: 24px;
}

.mail_btn:after {
  background: url(./images/themplate_img/2x/mail.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.tel_main_btn span {
  font: 700 30px 'Montserrat';
}

@keyframes fadeIn {
  0% {
    opacity: 1
  }

  100% {
    opacity: 0
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 1
  }

  100% {
    opacity: 0
  }
}









/*-------------------javascript7-----------------------*/

#to_top {
  position: fixed;
  bottom: 20px;
  right: 15px;
  z-index: 999;
}

#to_top a {
  display: inline-block;
  background-color: #0071bc;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  padding: 10px 20px;
  line-height: 1.3;
  border-radius: 0px;
  border: 1px solid #ffffff;
}

#to_top a .text {
  font-size: 12px;
}

#to_top a:hover {
  background-color: #d33535;
  text-decoration: none;
}




/*-------------------copyrightレイアウト-----------------------*/

#copyright {
  padding-top: 15px;
  padding-bottom: 15px;
}

#copyright .copyright-left {
  text-align: left;
}

#copyright .copyright-right {
  text-align: right;
}

#copyright .footer-logo {
  max-height: 60px;
  max-width: 250px;
}




/*-------------------footer内リスト-----------------------*/

#footer .widget_archive ul,
#footer .widget_recent_comments ul,
#footer .widget_recent_entries ul,
#footer .widget_text ul,
#footer .widget_categories ul,
#footer .widget_nav_menu ul,
#footer .widget_meta ul,
#footer .widget_welcart_category ul,
#footer .widget_welcart_page ul,
#footer .widget_welcart_bestseller ul,
#footer .usces_recent_entries ul {
  padding: 0;
  margin: 0;
  list-style: none;
  line-height: 1;
}

#footer .widget_archive ul li,
#footer .widget_recent_comments ul li,
#footer .widget_recent_entries ul li,
#footer .widget_text ul li,
#footer .widget_categories ul li,
#footer .widget_nav_menu ul li,
#footer .widget_meta ul li,
#footer .widget_welcart_category ul li,
#footer .widget_welcart_page ul li,
#footer .widget_welcart_bestseller ul li,
#footer .usces_recent_entries ul li {
  float: left;
  padding: 0;
  margin: 0.2em 0;
  /*display:inline-block;*/
}

#footer .widget_archive ul li a,
#footer .widget_recent_comments ul li a,
#footer .widget_recent_entries ul li a,
#footer .widget_text ul li a,
#footer .widget_categories ul li a,
#footer .widget_nav_menu ul li a,
#footer .widget_meta ul li a,
#footer .widget_welcart_category ul li a,
#footer .widget_welcart_page ul li a,
#footer .widget_welcart_bestseller ul li a,
#footer .usces_recent_entries ul li a {
  display: block;
  margin: 0;
  padding: 0 0.6em;
}






/*-------------------コンポーネント-----------------------*/

.big-btn-sub,
.big-btn-main {
  position: relative;
  background: rgba(255, 255, 255, 0.5);
  color: #a60000;
  border: 4px #a60000 solid;
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  align-content: center;
  flex-direction: row;
  align-items: center;
}

.big-btn-sub {
  border: 4px #d33535 solid;
  color: #d33535;
}

.big-btn-sub a,
.big-btn-main a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 99;
}

.big-btn-hight {
  height: 500px;
}

.big-btn-middle {
  height: 300px;
}

.big-btn-low {
  height: 100px;
}


/*-------------------コンポーネント２-----------------------*/

.hover-scale {
  display: block;
  position: relative;
  width: 100%;
  padding-top: 65%;
  overflow: hidden;
  margin: 0 auto;
  transition-duration: 0.5s;
  /*変化の時間*/
}

.hover-scale img {
  position: absolute;
  top: 0%;
  left: 0%;
  -moz-transition: -moz-transform 0.5s linear;
  -webkit-transition: -webkit-transform 0.5s linear;
  -o-transition: -o-transform 0.5s linear;
  -ms-transition: -ms-transform 0.5s linear;
  transition: transform 0.5s linear;
}

.hover-scale.h-30 {
  padding-top: 30%;
}

.hover-scale.h-50 {
  padding-top: 50%;
}

.hover-scale.h-75 {
  padding-top: 75%;
}

.hover-scale.h-100 {
  padding-top: 100%;
}

.hover-scale .hover-contents {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0%;
  left: 0%;
}

.hover-scale:hover img {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
}
















/*-------------------よくある質問-----------------------*/
.faq-box .contents-box {
  border: 2px solid #a60000;
  padding: 1em;
  margin-bottom: 2em;
}

.faq-box .question {
  position: relative;
  padding: 1em 0 1em 2.5em;
  line-height: 1.8;
  font-weight: bold;
  background: #e0adad;
}

.faq-box .question:before,
.faq-box .answer:before {
  content: "Q";
  color: #ffffff;
  background: #a60000;
  border: 1px solid #a60000;
}

.faq-box .answer {
  position: relative;
  padding: 1em 0 1em 2.5em;
  line-height: 1.8;
}

.faq-box .answer:before {
  content: "A";
  background: #737373;
  border: 1px solid #737373;
  padding-bottom: 0.2em;
}

.faq-box .question:before,
.faq-box .answer:before {
  font-weight: bold;
  text-align: center;
  padding: 0em 0.2em 0.5em 0.2em;
  border-radius: 0px;
  position: absolute;
  top: 1em;
  left: 0.5em;
  height: 1.5em;
  width: 1.5em;
}




/*-------------------ユーティリティ１-----------------------*/

.overlay-black1 {
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
}

.overlay-black2 {
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
}

.overlay-black3 {
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
}

/* .overlay-black4 {
  background: rgba(0, 0, 0, 0.3);
  color: #fff;
} */

.overlay-black5 {
  background: rgba(0, 0, 0, 0.1);
  color: #fff;
}

.overlay-white1 {
  background: rgba(255, 255, 255, 0.6);
}

.overlay-white2 {
  background-color: rgba(255, 255, 255, 0.6);
}

.overlay-white3 {
  background: rgba(255, 255, 255, 0.5);
}

.overlay-white4 {
  background: rgba(255, 255, 255, 0.3);
}

.overlay-white5 {
  background: rgba(255, 255, 255, 0.1);
}

.overlay-a1,
.overlay-m,
.overlay-s1 {
  position: relative;
  color: #ffffff;
}

.overlay-a1:before,
.overlay-m:before,
.overlay-s1:before {
  width: 100%;
  height: 100%;
  position: absolute;
  background: #a60000;
  top: 0;
  left: 0;
  content: "";
  background: #a60000;
  z-index: -1;
  opacity: 0.6;
}

.overlay-a1:before {
  background: #737373;
}

.overlay-s1:before {
  background: #d33535;
}


/*-------------------ユーティリティ２-----------------------*/

.narrow {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}

ul.column-5,
ul.column-4,
ul.column-3,
ul.column-2 {
  display: flex;
  flex-wrap: wrap;
  /*折り返しあり*/
}

ul.column-2 li {
  width: 50%;
}

ul.column-3 li {
  width: 33.333%;
}

ul.column-4 li {
  width: 25%;
}

ul.column-5 li {
  width: 20%;
}

ul.column-2 li:nth-child(2n+1),
ul.column-3 li:nth-child(3n+1),
ul.column-4 li:nth-child(4n+1),
ul.column-5 li:nth-child(5n+1) {}

ul.li-margin {
  margin-left: -15px;
  margin-right: -15px;
}

ul.li-margin li {
  padding-left: 15px;
  padding-right: 15px;
}


/*-------------------ユーティリティ３-----------------------*/

/* ボーダー*/
.solid {
  border-style: solid;
  border-width: 2px;
}

.bt-solid {
  border-top-style: solid;
  border-width: 2px;
}

.bb-solid {
  border-bottom-style: solid;
  border-width: 2px;
}

.bl-solid {
  border-right-style: solid;
  border-width: 2px;
}

.br-solid {
  border-left-style: solid;
  border-width: 2px;
}

.dotted {
  border-style: dotted;
  border-width: 2px;
}

.bt-dotted {
  border-top-style: dotted;
  border-width: 2px;
}

.bb-dotted {
  border-bottom-style: dotted;
  border-width: 2px;
}

.bl-dotted {
  border-left-style: dotted;
  border-width: 2px;
}

.br-dotted {
  border-right-style: dotted;
  border-width: 2px;
}

/* フォントカラー*/
.c-m {
  color: #a60000;
}

.c-s {
  color: #d33535;
}

.c-s2 {
  color: #d35f5f;
}

.c-s3 {
  color: #e0adad;
}

.c-a {
  color: #737373;
}

.c-a2 {
  color: #250d72;
}

.c-a3 {
  color: #6c0000;
}

/* 背景カラー*/
.b-m {
  background: #a60000;
}

.b-s {
  background: #d33535;
}

.b-s2 {
  background: #d35f5f;
}

.b-s3 {
  background: #e0adad;
}

.b-a {
  background: #737373;
}

.b-a2 {
  background: #250d72;
}

.b-a3 {
  background: #6c0000;
}

.b-b {
  background: #ffffff;
}

/* ボーダーカラー*/
.bc-m {
  border-color: #a60000;
}

.bc-s {
  border-color: #d33535;
}

.bc-s2 {
  border-color: #d35f5f;
}

.bc-s3 {
  border-color: #e0adad;
}

.bc-a {
  border-color: #737373;
}

.btc-m {
  border-top-color: #a60000;
}

.btc-s {
  border-top-color: #d33535;
}

.btc-s2 {
  border-top-color: #d35f5f;
}

.btc-s3 {
  border-top-color: #e0adad;
}

.btc-a {
  border-top-color: #737373;
}

.bbc-m {
  border-bottom-color: #a60000;
}

.bbc-s {
  border-bottom-color: #d33535;
}

.bbc-s2 {
  border-bottom-color: #d35f5f;
}

.bbc-s3 {
  border-bottom-color: #e0adad;
}

.bbc-a {
  border-bottom-color: #737373;
}

.bc-g1 {
  border-color: #4d4d4d;
}

.bc-g2 {
  border-color: #999;
}

.bc-g3 {
  border-color: #aaa;
}

.bc-g4 {
  border-color: #ccc;
}

.bc-g5 {
  border-color: #eee;
}

.bc-white {
  border-color: #fff;
}

.gradation-main1 {
  background: #a60000;
  /* Old browsers */
  background: -moz-linear-gradient(left, #a60000 0%, #d33535 51%, #a60000 100%);
  /* FF3.6+ */
  background: -webkit-linear-gradient(left, #a60000 0%, #d33535 51%, #a60000 100%);
  /* Opera 11.10+ */
  background: linear-gradient(to right, #a60000 0%, #d33535 51%, #a60000 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a60000', endColorstr='#d33535', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}

.gradation-main2 {
  background: #a60000;
  /* Old browsers */
  background: -moz-linear-gradient(left, #a60000 0%, #d33535 51%, #d35f5f 100%);
  /* FF3.6+ */
  background: -webkit-linear-gradient(left, #a60000 0%, #d33535 51%, #d35f5f 100%);
  /* Opera 11.10+ */
  background: linear-gradient(to right, #a60000 0%, #d33535 51%, #d35f5f 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a60000', endColorstr='#d35f5f', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}

.gradation-main3 {
  background: #a60000;
  /* Old browsers */
  background: -moz-linear-gradient(left, #d35f5f 0%, #d33535 51%, #a60000 100%);
  /* FF3.6+ */
  background: -webkit-linear-gradient(left, #d35f5f 0%, #d33535 51%, #a60000 100%);
  /* Opera 11.10+ */
  background: linear-gradient(to right, #d35f5f 0%, #d33535 51%, #a60000 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d35f5f', endColorstr='#a60000', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}

.gradation-main4 {
  background: #d35f5f;
  /* Old browsers */
  background: -moz-linear-gradient(left, #d35f5f 0%, #a60000 51%, #d35f5f 100%);
  /* FF3.6+ */
  background: -webkit-linear-gradient(left, #d35f5f 0%, #a60000 51%, #d35f5f 100%);
  /* Opera 11.10+ */
  background: linear-gradient(to right, #d35f5f 0%, #a60000 51%, #d35f5f 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d35f5f', endColorstr='#a60000', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}

.gradation-sub1 {
  background: #subcolor;
  /* Old browsers */
  background: -moz-linear-gradient(left, #a60000 0%, #d35f5f 51%, #a60000 100%);
  /* FF3.6+ */
  background: -webkit-linear-gradient(left, #a60000 0%, #d35f5f 51%, #a60000 100%);
  /* Opera 11.10+ */
  background: linear-gradient(to right, #a60000 0%, #d35f5f 51%, #a60000 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a60000', endColorstr='#d33535', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}

.gradation-sub2 {
  background: #subcolor;
  /* Old browsers */
  background: -moz-linear-gradient(left, #d35f5f 0%, #d33535 51%, #d35f5f 100%);
  /* FF3.6+ */
  background: -webkit-linear-gradient(left, #d35f5f 0%, #d33535 51%, #d35f5f 100%);
  /* Opera 11.10+ */
  background: linear-gradient(to right, #d35f5f 0%, #d33535 51%, #d35f5f 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d35f5f', endColorstr='#d33535', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}

.gradation-accent1 {
  background: #737373;
  /* Old browsers */
  background: -moz-linear-gradient(left, #737373 0%, #250d72 51%, #737373 100%);
  /* FF3.6+ */
  background: -webkit-linear-gradient(left, #737373 0%, #250d72 51%, #737373 100%);
  /* Opera 11.10+ */
  background: linear-gradient(to right, #737373 0%, #250d72 51%, #737373 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#737373', endColorstr='#250d72', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}

.gradation-accent2 {
  background: #737373;
  /* Old browsers */
  background: -moz-linear-gradient(left, #737373 0%, #250d72 51%, #6c0000 100%);
  /* FF3.6+ */
  background: -webkit-linear-gradient(left, #737373 0%, #250d72 51%, #6c0000 100%);
  /* Opera 11.10+ */
  background: linear-gradient(to right, #737373 0%, #250d72 51%, #6c0000 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#737373', endColorstr='#6c0000', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
}


/*-------------------ユーティリティ４-----------------------*/

.text-shadow-black {
  text-shadow: 1px 2px 3px #808080;
}

.text-shadow-white {
  color: #fff;
  text-shadow: 1px 2px 3px #111;
}

.text-outline-white {
  text-shadow: 2px 2px 0 #ffffff,
    -2px 2px 0 #ffffff,
    2px -2px 0 #ffffff,
    -2px -2px 0 #ffffff;
  text-shadow: 2px 2px 1px #ffffff,
    -2px 2px 1px #ffffff,
    2px -2px 1px #ffffff,
    -2px -2px 1px #ffffff;
}

.marker-m {
  background: linear-gradient(transparent 75%, rgba(41, 171, 226, 0.6) 75%);
}

.marker-s1 {
  background: linear-gradient(transparent 75%, #d33535 75%);
}

.marker-s2 {
  background: linear-gradient(transparent 75%, #d35f5f 75%);
}

.marker-s3 {
  background: linear-gradient(transparent 75%, #e0adad 75%);
}

.marker-a1 {
  background: linear-gradient(transparent 75%, #737373 75%);
}

.marker-a2 {
  background: linear-gradient(transparent 75%, #250d72 75%);
}

.marker-a3 {
  background: linear-gradient(transparent 75%, #6c0000 75%);
}

.circle-a,
.circle-m {
  text-align: center;
  vertical-align: middle;
  width: 1.3em;
  height: 1.3em;
  display: inline-block;
  background: #a60000;
  color: #ffffff;
  border-radius: 50%;
}

.circle-a {
  background: #737373;
}




/*-------------------ユーティリティ5-----------------------*/

.required {
  display: block;
  background: #737373;
  color: #ffffff;
  float: right;
  width: 3em;
  text-align: center;
  padding-left: 0.2em;
  padding-right: 0.2em;
  border-radius: 0px;
}

.required2 {
  display: block;
  background: #ffffff;
  color: #737373;
  float: right;
  width: 3em;
  text-align: center;
  padding-left: 0.2em;
  padding-right: 0.2em;
  border: 1px solid #737373;
  border-radius: 0px;
}

.frame1 {
  color: #ffffff;
  background: #a60000;
  border: 1px dashed rgba(255, 255, 255, 0.8);
  margin: 0 5px 5px 5px;
  box-shadow: 0 0 0 5px #a60000;
  -moz-box-shadow: 0 0 0 5px #a60000;
  -webkit-box-shadow: 0 0 0 5px #a60000;
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
}

.frame2 {
  border: 4px #a60000 solid;
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
}

.frame3 {
  border: #a60000 dashed 1px;
  background: #ffffff;
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
}

.frame4 {
  border: #a60000 solid 1px;
  background: #ffffff;
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
}

.frame5 {
  box-shadow: 0px 0px 5px 1px rgba(200, 200, 200, 0.5);
  -moz-box-shadow: 0px 0px 5px 1px rgba(200, 200, 200, 0.5);
  -webkit-box-shadow: 0px 0px 5px 1px rgba(200, 200, 200, 0.5);
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
}

.frame6 {
  border: #a60000 solid 2px;
  background: #e0adad;
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
}

.frame8 {
  background: #ffffff;
  border: 1px solid #737373;
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
}

.frame9 {
  background: #737373;
  border: 1px dashed rgba(255, 255, 255, 0.8);
  margin: 0 5px 5px 5px;
  box-shadow: 0 0 0 5px #737373;
  -moz-box-shadow: 0 0 0 5px #737373;
  -webkit-box-shadow: 0 0 0 5px #737373;
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
}

.frame11 {
  border: #737373 solid 2px;
  background: #250d72;
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
}

.frame12 {
  background: #a60000;
  color: #ffffff;
  border-radius: 0px;
  padding: 0.5em;
  font-weight: bold;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.5em;
}

.frame13 {
  border: 2px #737373 solid;
  position: relative;
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
}

.frame13:before {
  content: "";
  position: absolute;
  margin: 2px;
  border: 2px #737373 solid;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  z-index: -1;
  border-radius: 0px;
  -moz-border-radius: 0px;
  /* FF */
  -webkit-border-radius: 0px;
  /* Webkit */
  background: #ffffff;
}

.frame14 {
  background: #ccc;
  color: #ffffff;
  border-radius: 0px;
  padding: 0.1em 0.3em;
  font-weight: bold;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.5em;
}

.frame15 {
  position: relative;
  border: solid 2px #a60000;
}

.frame15::before,
.frame15::after {
  position: absolute;
  content: "";
  display: block;
  background-color: #ffffff;
}

.frame15::before {
  top: -2px;
  bottom: -2px;
  left: 10px;
  right: 10px;
}

.frame15::after {
  top: 10px;
  bottom: 10px;
  left: -2px;
  right: -2px;
}

.frame15 .contents {
  position: relative;
  z-index: 1;
}


/*-------------------ユーティリティ6-----------------------*/
/*-----下向き矢印-----*/
.arrow-main,
.arrow-sub,
.arrow-sub2,
.arrow-accent,
.arrow2-main,
.arrow2-sub,
.arrow2-sub2,
.arrow2-accent {
  position: relative;
  height: 2em;
}

.arrow-main:before,
arrow-main:after,
.arrow-sub:before,
arrow-sub:after,
.arrow-sub2:before,
arrow-sub2:after,
.arrow-accent:before,
arrow-accent:after,
.arrow2-main:before,
arrow2-main:after,
.arrow2-sub:before,
arrow2-sub:after,
.arrow2-sub2:before,
arrow2-sub2:after,
.arrow2-accent:before,
arrow2-accent:after {
  content: "";
  position: absolute;
  top: 0;
  height: 0;
  width: 0;
}

.arrow-main:before,
.arrow-sub:before,
.arrow-sub2:before,
.arrow-accent:before {
  left: 50%;
  margin-left: -4em;
  border: 4em solid transparent;
}

.arrow2-main:before,
.arrow2-sub:before,
.arrow2-sub2:before,
.arrow2-accent:before {
  left: 50%;
  margin-left: -2em;
  border: 2em solid transparent;
}

.arrow-main:before,
.arrow2-main:before {
  border-top: 2em solid #a60000;
}

.arrow-sub:before,
.arrow2-sub:before {
  border-top: 2em solid #d33535;
}

.arrow-sub2:before,
.arrow2-sub2:before {
  border-top: 2em solid #d35f5f;
}

.arrow-accent:before,
.arrow2-accent:before {
  border-top: 2em solid #737373;
}

/*-----右向き矢印-----*/
.arrow-r-main,
.arrow-r-sub,
.arrow-r-sub2,
.arrow-r-accent {
  position: relative;
  height: 8em;
}

.arrow2-r-main,
.arrow2-r-sub,
.arrow2-r-sub2,
.arrow2-r-accent {
  position: relative;
  height: 4em;
}

.arrow-r-main:before,
arrow-r-main:after,
.arrow-r-sub:before,
arrow-r-sub:after,
.arrow-r-sub2:before,
arrow-r-sub2:after,
.arrow-r-accent:before,
arrow-r-accent:after,
.arrow2-r-main:before,
arrow2-r-main:after,
.arrow2-r-sub:before,
arrow2-r-sub:after,
.arrow2-r-sub2:before,
arrow2-r-sub2:after,
.arrow2-r-accent:before,
arrow2-r-accent:after {
  content: "";
  position: absolute;
  top: 0;
  height: 0;
  width: 0;
}

.arrow-r-main:before,
.arrow-r-sub:before,
.arrow-r-sub2:before,
.arrow-r-accent:before {
  left: 50%;
  margin-left: -1em;
  border: 4em solid transparent;
}

.arrow2-r-main:before,
.arrow2-r-sub:before,
.arrow2-r-sub2:before,
.arrow2-r-accent:before {
  left: 50%;
  margin-left: -1em;
  border: 2em solid transparent;
}

.arrow-r-main:before,
.arrow2-r-main:before {
  border-left: 2em solid #a60000;
}

.arrow-r-sub:before,
.arrow2-r-sub:before {
  border-left: 2em solid #d33535;
}

.arrow-r-sub2:before,
.arrow2-r-sub2:before {
  border-left: 2em solid #d35f5f;
}

.arrow-r-accent:before,
.arrow2-r-accent:before {
  border-left: 2em solid #737373;
}


/*-------------------ユーティリティ7-----------------------*/

.overlay-wrapper {
  position: relative;
  height: calc(20vw + 200px);
}

.overlay-lb,
.overlay-lt {
  position: absolute;
  left: 0;
  top: 0;
}

.overlay-lb {
  top: auto;
  bottom: 0;
}

.overlay-rb,
.overlay-rt {
  position: absolute;
  right: 0;
  top: 0;
}

.overlay-rb {
  top: auto;
  bottom: 0;
}



/*-------------------フリースタイル-----------------------*/

body {
  overflow-x: hidden;
}

.breadcrumbs {
  padding: 15px 0;
}

#right h3 {
  margin-top: 30px;
  margin-bottom: 15px;
}

#right .widgetArea:first-child h3:first-child {
  margin-top: 0;
}

#left h3 {
  margin-top: 30px;
  margin-bottom: 15px;
}

#left .widgetArea:first-child h3:first-child {
  margin-top: 0;
}

.title-first {
  line-height: 1;
  margin-bottom: 15px;
}

main .title-top:first-child {
  margin-bottom: 15px;
}

.mincho {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.frontpage-header {
  position: relative;
  height: auto;
  overflow: hidden;
}

.page-header {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.page-header-child {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: url(./images/themplate_img/2x/about_top.webp) center center no-repeat;
  background-size: cover;
  width: 100%;
  height: 300px;
  padding-top: 20%;
}

.page-header_about .page-header-child {
  background: url(./images/themplate_img/2x/about_top.webp) center center no-repeat;
  background-size: cover;
}

.page-header_company .page-header-child {
  background: url(./images/themplate_img/2x/company_top.webp) center center no-repeat;
  background-size: cover;
}

.page-header_coporate .page-header-child {

  background: url(./images/themplate_img/2x/coporate_top.webp) center center no-repeat;
  background-size: cover;
}

.page-header_contact .page-header-child {

  background: url(./images/themplate_img/2x/contact_top.png) center center no-repeat;
  background-size: cover;
}

.page-header_policy .page-header-child {
  background: url(./images/themplate_img/2x/policy_top.png) center center no-repeat;
  background-size: cover;

}

.page-header_service .page-header-child {

  background: url(./images/themplate_img/2x/service_top.webp) center center no-repeat;
  background-size: cover;
}

.page-header-work .page-header-child {
  background: url(./images/themplate_img/2x/works_top.webp) center center no-repeat;
  background-size: cover;
}

.page-header-archive .page-header-child {
  background: url(./images/themplate_img/2x/news_top.webp) center center no-repeat;
  background-size: cover;
}

.page-header .header-container,
.frontpage-header .header-container {
  position: absolute;
  width: 100%;
  top: 0%;
  left: 0;
  display: flex;
  flex-wrap: wrap;
  /*折り返しあり*/
  justify-content: center;
  height: 100%;
}
.header-container h1,.header-container h2{
  filter: drop-shadow(0px 0px 3px #8c5e2c);
}
.header-container figure {
  width: 484px;
  margin: 0 auto 10px;
}

.top_txt {
  position: absolute;
  top: 31%;
  text-align: center;
}

.top_txt h1 {
  font: 700 36px 'Montserrat';
  color: #fff;
  line-height: 1.2 !important;
}


.top_txt h2 {
  font: 700 26px 'Noto Sans JP';
  color: #fff;
  margin-top: 5px;
}

.top_head {
  font:600 20px 'Montserrat';
  color: #0071bc;
  padding-bottom: 0px;
  text-align: center;
}

.top_head_h3 {
  font: 500 30px 'Noto Sans JP';
  color: #6b6b6b;
  text-align: center;
  padding-bottom: 45px;
}

.pb-30 {
  padding-bottom: 30px;
}

.top_aside {
  font: 400 2.4rem 'Noto Sans JP';
  color: #6b6b6b;
  text-align: center;
  margin-bottom: 120px;
}

.service_item_contents p {
  line-height: 2;
}

.service_item_card figure {
  margin-bottom: 10px;
}

@media only screen and (max-width: 700px) {
  .sp_pt_none {
    padding-top: 0px !important;
  }
  .top_txt{
    top: 26%;
  }
  .top_txt h1 {
    font: 700 26px 'Montserrat';
    color: #fff;
  }

  .top_txt h2 {
    font: 700 20px 'Noto Sans JP';
    color: #fff;
  }

  .top_head_h3 {
    font: 400 2.4rem 'Noto Sans JP';
    color: #6b6b6b;
    text-align: center;
    padding-bottom: 15px;
  }

  .top_aside {
    font: 400 1.8rem 'Noto Sans JP';
    color: #6b6b6b;
    text-align: center;
    margin-bottom: 40px;
  }

  .top_head {
    font: 600 1.8rem 'Montserrat' !important;
    color: #0071bc;
    text-align: center;
    padding: 0;
    line-height: 2;
  }

  .service_card_title {
    font: 400 2rem 'Noto Sans JP' !important;
    line-height: 1.8;
    padding: 0px !important;
    padding-top: 0;
  }

  .service_card_text {
    font: 400 1.4rem 'Noto Sans JP' !important;
    line-height: 1.8;
    padding: 0px !important;
    padding-top: 10px !important;
  }

  .service_item_contents {
    padding: 30px 20px !important;
  }

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

  .service_item_card:last-child {
    margin-bottom: 0px !important;
  }

  .service_item_card figure {
    margin-bottom: 15px;
  }
  .header-container figure {
    width: 300px;
    margin: 0 auto 10px;
}
.header-container figure img{
  width: 100%;
  margin: 0 auto;
}
}

.top_sec_bg {
  position: relative;
  width: 100%;
}

.top_sec_bg:before {
  content: "";
  display: block;
  padding-top: 23.2142%;
}

.top_sec_bg_child {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-image: url(images/themplate_img/2x/top_img2.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

}

.header-mask {
  background: rgba(0, 0, 0, 0.3);
  color: #fff;
}

.wpcf7-form-control-wrap {
  width: 100%;
}

div.wpcf7 .ajax-loader {
  display: none !important;
}

/* 代表挨拶 */
.page_head {
  font: 600 30px 'Montserrat';
  line-height: 1.444;
  color: #0071bc;
}

.page_head_h5 {
  font: 500 1.8rem 'Noto Sans JP';
  color: #4d4d4d;
}

.message_container {
  display: flex;
  width: 90%;
  max-width: 960px;
  justify-content: space-between;
  margin: 0 auto
}

.message_left_container {
  width: 100%;
}

.message_left_container p>span {
  display: block;
  text-align: right;
  margin-top: 1em;
  font-size: 16px;
}

.message_left_container p>span span.name {
  text-align: right;
  font-size: 18px;
}

.message_right_container {
  padding-top: 25px;
  width: 20%;
}

.message_right_container img {
  width: 100%;
}

.message_left_container p {
  font: 500 1.6rem 'Noto Sans JP';
  color: #4d4d4d;
  line-height: 2;
  text-align: justify;
  padding: 0;
}

.message_page_title {
  font: 500 30px 'Noto Sans JP' !important;
  color: #4d4d4d;
  line-height: 1.5 !important;
}

/* 代表挨拶_end */
/* 会社概要 */
.philosophy_list {
  width: 80%;
  margin: 0 auto;
  list-style: none;
  /* デフォルトのアイコンを消す */
  margin: 0;
  /* デフォルト指定上書き */
  padding: 0;
  /* デフォルト指定上書き */
  text-align: left;
  margin: 0 auto 0px auto;
}

.philosophy_list li:before {
  content: "";
  /* 空の要素作成 */
  width: 13px;
  /* 幅指定 */
  height: 13px;
  /* 高さ指定 */
  display: inline-block;
  /* インラインブロックにする */
  background-color: #005eae;
  /* 背景色指定 */
  border-radius: 50%;
  top: 1px;
  /* 要素を丸くする */
  margin-right: 5px;
}

.philosophy_list li {
  font: 400 1.6rem 'Noto Sans JP';
  letter-spacing: 0.05em;
  padding-bottom: 15px;
}

.philosophy_container {
  margin: 62px auto 0;
  width: 90%;
  max-width: 930px;
  padding: 40px;
  position: relative
}

.frame {
  width: 60px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
}

.frame02 {
  width: 60px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
}

.philosophy_container h4 {
  font: 700 32px 'Montserrat';
  color: #4d4d4d;
  text-align: center;
}

.philosophy_container p {
  font: 500 22px 'Noto Sans JP';
  color: #4d4d4d;
  text-align: center;
  padding: 0;
}

.copolate_map_container {
  position: relative;
  width: 100%;
}

.copolate_map_container:before {
  content: "";
  display: block;
  padding-top: 32.967%;
}

.copolate_map_box {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

.copolate_map_box iframe {
  width: 100%;
  height: 100%;
}

/* 会社概要_end */
/*-------------------ステップボックス-----------------------*/

.step-box {
  margin-top: 25px;
  margin-bottom: 25px;
  border: 3px solid #e0adad;
  border-radius: 0px;
}

.step-box .step {
  line-height: 1;
  display: inline-block;
  color: #e0adad;
  border: 3px solid #a60000;
  background: #a60000;
  border-radius: 0px;
  padding: 5px;
}

.step-box .step-box-title {
  border-bottom: 1px solid #e0adad;
  padding-bottom: 5px;
}

.step-box .step-box-right,
.step-box .step-box-left {
  padding: 15px;
}



/*-------------------フリースタイル２-----------------------*/

.logo img {
  max-height: 47px;
}

.header-mask {
  background: rgb(166, 0, 0, 0.2);
}

.desktop-nav {
  padding-top: 5px;
  padding-bottom: 5px;
}

.service_item_list {
  max-width: 1260px;
  width: 100%;
  margin: 0 auto;
  justify-content: space-between !important;
}

.about_item_list {
  width: 90%;
  margin: 0 auto;
  max-width: 1100px;
}

.about_item_list li p {
  padding: 0;
}

.about_item_list li p span {
  margin: 10px 0 5px;
  display: block;
}

.about_card_head {
  font: 500 2rem 'Noto Sans JP';
  line-height: 2.1;
  color: #0071bc;
}

.about_card_title {
  font: 500 2.4rem 'Noto Sans JP';
  line-height: 1.8;
  color: #0071bc;
}

.about_card_text {
  font: 400 1.6rem 'Noto Sans JP';
  line-height: 1.9;
  color: #4d4d4d;
}

.about_img_container {
  width: 60%;
  margin: 0 auto;
}

.about_card_img {
  margin-bottom: 16px;
}

.service_item_contents {
  -webkit-box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, 0.3);
  /* Safari, Chrome */
  -moz-box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, 0.3);
  /* Firefox */
  box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.3);
  padding: 30px;
}

.service_card_title {
  font: 400 24px 'Noto Sans JP';
  line-height: 1.5;
  text-align: center;
}

.service_card_text {
  font: 400 16px 'Noto Sans JP';
  line-height: 1.8;
  text-align: center;
}

.area_container {
  width: 90%;
  max-width: none;
  margin: -30px auto 0 auto;
  max-width: 1100px;

}

.area {
  width: 100%;
  margin: auto;
  flex-wrap: wrap;
  display: flex;
  -webkit-box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, 0.3);
  /* Safari, Chrome */
  -moz-box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, 0.3);
  /* Firefox */
  box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.3);
}

.tab_class {
  width: calc(100% / 3);
  height: 53px;
  background-color: darkgrey;
  line-height: 53px;
  font-family: 'Montserrat';
  font-size: 20px;
  font-weight: 600;
  text-align: center;
  display: block;
  float: left;
  order: -1;
  border: 1px solid #fff;
  color: #fff;
}

input[name="tab_name"] {
  display: none;
}

input:checked+.tab_class {
  background-color: #0071bc;
  color: #fff;
}

.content_class {
  display: none;
  width: 100%;
}

input:checked+.tab_class+.content_class {
  display: block;
}

.tab_container {
  width: 93%;
  margin: 0 auto 0px auto;
}

.triple_img_container {
  margin: 70px auto 70px auto;
  display: flex;
  justify-content: space-between;
}

.tab_flex_container {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 55px;
}


.tab_first_child_container {
  width: 46%;
}

.tab_second_child_container {
  width: 50%;
}

.tab_first_child_container p {
  padding: 0px !important;
}

.tab_second_child_container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.tab_second_child_container figure {
  padding: 0 0 2% 0;
  width: 49.1%;
  margin: 0;
}

.tab_second_child_container figure:nth-child(n+3) {
  padding: 0 0 0 0;
  width: 49.1%;
}

.tab_second_child_container figure img {
  width: 100%;
}

.tab_container>p {
  padding: 0;
}

.section-ll {
  padding: 0 0 130px 0;
}

.about_container {
  text-align: center;
  max-width: 965px;
  margin: 0 auto;
}

.about_container p {
  font-size: 16px;
  line-height: 2;
  font-weight: 500;
}

.policy_container {
  text-align: left;
}

.w-25 {
  width: 25%;
}

.w-75 {
  width: 75%;
}

@media only screen and (max-width: 1200px) {
  .tab_flex_container {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 35px;
  }

  .tab_first_child_container {
    width: 100%;
  }

  .tab_second_child_container {
    margin-top:15px;
    width: 100%;
  }

  .tab_second_child_container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }


  @media only screen and (max-width: 700px) {
    .tab_second_child_container p {
      padding: 0 0 15px 0;
      width: 100%;
    }
  }
}

/*-------------------画像ホバースタイル-----------------------*/

.img-hover {
  display: block;
  position: relative;
  width: 100%;
  padding-top: 65%;
  overflow: hidden;
  margin: 0 auto;
  transition-duration: 0.5s;
  /*変化の時間*/
}

.h-80.img-hover {
  padding-top: 80%;
}

.h-70.img-hover {
  padding-top: 70%;
}

.h-60.img-hover {
  padding-top: 60%;
}

.h-55.img-hover {
  padding-top: 55%;
}

.h-50.img-hover {
  padding-top: 50%;
}

.img-hover:before {
  content: "";
  display: inline-block;
  line-height: 1;
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  margin-top: -0.5em;
  margin-left: -2em;
  color: #fff;
  opacity: 0;
}

.img-hover img {
  width: 100%;
  position: absolute;
  top: 0%;
  left: 0%;
  -moz-transition: -moz-transform 0.5s linear;
  -webkit-transition: -webkit-transform 0.5s linear;
  -o-transition: -o-transform 0.5s linear;
  -ms-transition: -ms-transform 0.5s linear;
  transition: transform 0.5s linear;
}

.img-hover:hover img {
  -webkit-transform: scale(1.2);
  -moz-transform: scale(1.2);
  -o-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  opacity: 0.6;
  /* 小さくするほど暗くなります */
}

.img-hover:hover:before {
  opacity: 1;
}

.triple_img_container {
  margin-bottom: 10px;
}




/*-------------------カードスタイル-----------------------*/

.card {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 0px;
  background: #ffffff;
}

.card a {
  width: 100%;
  height: 100%;
}

.card .card-title {
  top: 3%;
  left: 0;
  margin-left: -1px;
  position: absolute;
  padding: 10px;
  background: #a60000;
  color: #ffffff;
}

.card .card-title a {
  color: #ffffff;
}

.card .card-contents {
  padding: 25px;
}

.card .card-contents a {
  text-decoration: none;
}

.card .card-title {
  margin-bottom: 0;
}

#link3 .work_list>div {
  margin-bottom: 0 !important;
}

/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px) {
  p {
    font-family: 'Noto sans JP';
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.8;
  }
  .header-container figure{
    width: 300px;
  }
  .tab_class {
    width: 100%;
    height: 60px;
    background-color: darkgrey;
    line-height: 60px;

    font-size: 16px;
    text-align: center;
    display: block;
    float: left;
    order: -1;
    border: 1px solid #fff;
    color: #fff;

  }

  .about_item_list {
    width: 100%;
  }

  .body_wrap {
    margin-top: 60px !important;
  }

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

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

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

  .message_page_title {
    font: 400 2.4rem 'Noto Sans JP' !important;
    color: #4d4d4d;
    line-height: 1.5 !important;
  }

  .about_container p {
    font-size: 14px;
  }

  .page-header-child {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: url(./images/themplate_img/2x/about_top.png) center center no-repeat;
    background-size: cover;
    width: 100%;
    height: 120px;
    padding-top: 20%;
  }

  .page_head {
    font: 600 2.4rem 'Montserrat';
    line-height: 1.444;
    color: #0071bc;
  }

  .page_head_h5 {
    font: 500 1.6rem 'Noto Sans JP';
    color: #4d4d4d;
  }

  .about_item_list li {
    margin-bottom: 40px;
  }

  .about_item_list p {
    padding: 0;
  }

  .about_card_head {
    font: 500 1.8rem 'Noto Sans JP';
    line-height: 2.1;
    color: #0071bc;
  }

  .about_card_title {
    font: 500 2rem 'Noto Sans JP';
    line-height: 1.8;
  }

  .about_card_img {
    margin-bottom: 10px;
  }

  .about_card_text {
    font: 400 1.4rem 'Noto Sans JP';
    line-height: 1.8;
    color: #4d4d4d;
    margin-top: 5px;
  }

  .message_left_container p {
    font: 400 1.4rem 'Noto Sans JP';
    color: #4d4d4d;
    line-height: 2;
    text-align: justify;
  }

  .message_container {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
  }

  .message_left_container p>span {
    font-size: 14px;
  }

  .message_left_container p>span span.name {
    text-align: right;
    font-size: 16px;
  }

  .message_left_container {
    width: 100%;
  }

  .message_right_container {
    padding-top: 25px;
    width: 100%;
  }

  .philosophy_container {
    margin: 40px auto 0;
    width: 100%;
    max-width: 1100px;
    padding: 45px 40px;
    word-break: break-all;
  }

  .philosophy_container h4 {
    font: 700 26px 'Montserrat';
    color: #4d4d4d;
    text-align: center;
    line-height: 1.11 !important;
    margin-bottom: 8px;
  }

  .philosophy_container p {
    font: 500 18px 'Noto Sans JP';
    color: #4d4d4d;
    text-align: center;
    padding: 0;
  }

  .tableLayout.w-100 {
    width: 97% !important;
    margin: 40px auto;
  }

  .tableStyle th {
    padding: 10px 0px 10px 5px !important;
    width: 95px !important;
  }

  .tableStyle tr td {
    font: 400 1.4rem 'Noto Sans JP';
    line-height: 1.8;
    width: calc(100% - 95px) !important;
    padding: 10px 0px 10px 0px !important;
  }

  .tableStyle tr th {
    font: 500 1.4rem 'Noto Sans JP';
    line-height: 1.8;
  }
  .tableStyle tr th {
  padding-left:5px!important;
  }
  .tableLayout th,
  .tableLayout td {
    padding: 0px 0px 15px 0px;
  }

  .copolate_map_container {
    display: block;
  }

  .philosophy_list {
    width: 100%;
    margin: 0 auto;
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: left;
    margin: 0 auto 0px auto;
  }

  .copolate_map_container {
    position: relative;
    width: 100%;
    margin: 0 auto;
    height: 250px;
    -webkit-box-shadow: 2px 2px 2px 2px rgb(0 0 0 / 30%);
    -moz-box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 0px 5px 2px rgb(0 0 0 / 30%);
  }

  .triple_img_container {
    margin: 40px auto 40px auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .triple_img_container  figure{
    margin: 0;
  }
  .triple_img_container p {
    width: 100%;
  }

  .archive-list li {
    margin-bottom: 25px;
  }

  .card-text {
    font: 500 1.8rem 'Noto Sans JP';
    line-height: 1.3;
    color: #0071bc;
    margin-bottom: 15px;
  }

  .date-label {
    padding-bottom: 6px;
    color: #aaa;
  }

  .date-label time {
    font: 500 1.3rem 'Noto Sans JP';
    line-height: 1.8;
    color: #4d4d4d;
  }

  .card-text {
    font: 500 1.8rem 'Noto Sans JP';
    line-height: 1.3;
    color: #0071bc;
    margin-bottom: 10px;
  }

  .card-content {
    font: 400 1.4rem 'Noto Sans JP';
    line-height: 1.8;
  }

  .recent-posts li .title,
  .recent-posts li .date {

    font-size: 1.4rem;
  }

  .service_card_text {
    line-height: 1.8 !important;
  }

  .recent-posts {
    padding: 0;
  }

  .footer_info h1 {
    width: 200px;
    margin: 0 auto 15px;
  }

  .footer_info p {
    text-align: center;
  }

  .post-contents {
    margin-top: 15px;
    margin-bottom: 15px;
    padding-top: 15px;
    padding-bottom: 15px;
    color: #4d4d4d;
    font: 400 1.4rem 'Noto Sans JP';
  }

  .main_btn_inner {
    position: relative;
    width: fit-content;
    padding-left: 40px;
    margin: 0 auto;
    left: -9px;
  }

  .main_btn_inner:after {
    content: "";
    position: absolute;
    width: 40px;
    height: 40px;
    background: url(./images/themplate_img/2x/tel.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    transform: translate(0, -50%);
    top: 47%;
    left: -5%;
  }

  .mail_btn:after {
    background: url(./images/themplate_img/2x/mail.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
  }

  .navileft {
    width: 33.3%;
    text-align: left;
    font: 400 1.4rem 'Montserrat';
    color: #4d4d4d !important;
  }

  .navitop {
    width: 33.3%;
    text-align: center;
    font: 400 1.4rem 'Montserrat';
    margin-top: 0px;
  }

  .navitop a {
    color: #005eae !important;
    font: 400 1.4rem 'Montserrat';
  }

  .naviright {
    width: 33.3%;
    text-align: right;
    font: 400 1.4rem 'Montserrat';

  }

  .naviright a {
    color: #4d4d4d !important;
  }

  .navileft a {
    color: #4d4d4d !important;
  }

  .about_img_container {
    width: 100%;
    margin: 0 auto;
  }

  .sp_left {
    text-align: justify !important;
  }

  .about_item_list li p span {
    margin: 15px 0 5px;
    display: block;
  }

  #contents-wrapper .col-md-12 {
    padding: 0;
  }

  .single_post {
    width: 87%;
    margin: 0 auto;
    padding-top: 45px;
    padding-bottom: 20px;
  }

  /*-------------------コンテンツ幅-----------------------*/
  .container {
    width: 90%;
  }

  /*-------------------余白の設定-----------------------*/
  .container,
  .inner {
    width: 90%;
    margin: 0 auto;
    padding: 0;
  }

  .row {
    margin-right: 0px;
    margin-left: 0px;
  }

  .m-ll {
    margin: calc(120px * 0.6) !important;
  }

  .mt-ll {
    margin-top: calc(120px * 0.6) !important;
  }

  .mb-ll {
    margin-bottom: calc(120px * 0.6) !important;
  }

  .ml-ll {
    margin-left: calc(120px * 0.6) !important;
  }

  .mr-ll {
    margin-right: calc(120px * 0.6) !important;
  }

  .m-l {
    margin: calc(90px * 0.6) !important;
  }

  .mt-l {
    margin-top: calc(90px * 0.6) !important;
  }

  .mb-l {
    margin-bottom: calc(90px * 0.6) !important;
  }

  .ml-l {
    margin-left: calc(90px * 0.6) !important;
  }

  .mr-l {
    margin-right: calc(90px * 0.6) !important;
  }

  .m-mm {
    margin: calc(60px * 0.6) !important;
  }

  .mt-mm {
    margin-top: calc(60px * 0.6) !important;
  }

  .mb-mm {
    margin-bottom: calc(60px * 0.6) !important;
  }

  .ml-mm {
    margin-left: calc(60px * 0.6) !important;
  }

  .mr-mm {
    margin-right: calc(60px * 0.6) !important;
  }

  .m-m {
    margin: calc(30px * 0.6) !important;
  }

  .mt-m {
    margin-top: calc(30px * 0.6) !important;
  }

  .mb-m {
    margin-bottom: calc(30px * 0.6) !important;
  }

  .ml-m {
    margin-left: calc(30px * 0.6) !important;
  }

  .mr-m {
    margin-right: calc(30px * 0.6) !important;
  }

  .m-s {
    margin: calc(15px * 0.6) !important;
  }

  .mt-s {
    margin-top: calc(15px * 0.6) !important;
  }

  .mb-s {
    margin-bottom: calc(15px * 0.6) !important;
  }

  .ml-s {
    margin-left: calc(15px * 0.6) !important;
  }

  .mr-s {
    margin-right: calc(15px * 0.6) !important;
  }

  .m-ss {
    margin: calc(10px * 0.6) !important;
  }

  .mt-ss {
    margin-top: calc(10px * 0.6) !important;
  }

  .mb-ss {
    margin-bottom: calc(10px * 0.6) !important;
  }

  .ml-ss {
    margin-left: calc(10px * 0.6) !important;
  }

  .mr-ss {
    margin-right: calc(10px * 0.6) !important;
  }

  /* padding */
  .p-ll {
    padding: calc(120px * 0.6) !important;
  }

  .pt-ll {
    padding-top: calc(120px * 0.6) !important;
  }

  .pb-ll {
    padding-bottom: calc(120px * 0.6) !important;
  }

  .pl-ll {
    padding-left: calc(120px * 0.6) !important;
  }

  .pr-ll {
    padding-right: calc(120px * 0.6) !important;
  }

  .p-l {
    padding: calc(90px * 0.6) !important;
  }

  .pt-l {
    padding-top: calc(90px * 0.6) !important;
  }

  .pb-l {
    padding-bottom: calc(90px * 0.6) !important;
  }

  .pl-l {
    padding-left: calc(90px * 0.6) !important;
  }

  .pr-l {
    padding-right: calc(90px * 0.6) !important;
  }

  .p-mm {
    padding: calc(60px * 0.6) !important;
  }

  .pt-mm {
    padding-top: calc(60px * 0.6) !important;
  }

  .pb-mm {
    padding-bottom: calc(60px * 0.6) !important;
  }

  .p-m {
    padding: calc(30px * 0.6) !important;
  }

  .pt-m {
    padding-top: calc(30px * 0.6) !important;
  }

  .pb-m {
    padding-bottom: calc(30px * 0.6) !important;
  }

  .pl-m {
    padding-left: calc(30px * 0.6) !important;
  }

  .pr-m {
    padding-right: calc(30px * 0.6) !important;
  }

  .p-s {
    padding: calc(15px * 0.6) !important;
  }

  .pt-s {
    padding-top: calc(15px * 0.6) !important;
  }

  .pb-s {
    padding-bottom: calc(15px * 0.6) !important;
  }

  .pl-s {
    padding-left: calc(15px * 0.6) !important;
  }

  .pr-s {
    padding-right: calc(15px * 0.6) !important;
  }

  .p-ss {
    padding: calc(10px * 0.6) !important;
  }

  .pt-ss {
    padding-top: calc(10px * 0.6) !important;
  }

  .pb-ss {
    padding-bottom: calc(10px * 0.6) !important;
  }

  .pl-ss {
    padding-left: calc(10px * 0.6) !important;
  }

  .pr-ss {
    padding-right: calc(10px * 0.6) !important;
  }

  .archive.container,
  .single.container,
  .section-ll {
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .archive.container.container,
  .single.container.container,
  .section-ll.container {
    width: 90% !important;
  }

  .section-l {
    padding-top: calc(90px * 0.6);
    padding-bottom: calc(90px * 0.6);
  }

  .section-mm {
    padding-top: calc(60px * 0.6);
    padding-bottom: calc(60px * 0.6);
  }

  .section-m {
    padding-top: calc(30px * 0.6);
    padding-bottom: calc(30px * 0.6);
  }

  .section-s {
    padding-top: calc(15px * 0.6);
    padding-bottom: calc(15px * 0.6);
  }

  .section-ss {
    padding-top: calc(10px * 0.6);
    padding-bottom: calc(10px * 0.6);
  }

  .btn-box {
    margin-top: calc(30px * 0.6);
  }

  .post-box h1 {
    margin-top: calc(90px * 0.6);
    margin-bottom: calc(60px * 0.6);
  }

  .post-box h2 {
    margin-top: calc(60px * 0.6);
    margin-bottom: calc(30px * 0.6);
  }

  .post-box h3 {
    margin-top: calc(60px * 0.6);
    margin-bottom: calc(30px * 0.6);
  }

  .post-box h4 {
    margin-top: calc(30px * 0.6);
    margin-bottom: calc(15px * 0.6);
  }

  .col-mb-m div[class*="col-"] {
    margin-bottom: calc(30px * 0.6);
  }

  .col-mb-s div[class*="col-"] {
    margin-bottom: calc(15px * 0.6);
  }

  .col-mb-ss div[class*="col-"] {
    margin-bottom: calc(10px * 0.6);
  }

  /*-------------------ヘッダーレイアウト-----------------------*/
  header>.container {
    margin: 0;
    padding: 0;
    height: 60px;
    position: relative;
    max-width: 100%;
    width: 100%;
  }

  .logo {
    width: 50%;
    padding: 10px;
  }

  .logo img {
    max-height: 33px;
  }

  .toggle {
    width: 60px;
    height: 60px;
    position: absolute;
    top: 0;
    right: 0;
  }

  .cta-nav {
    width: 60px;
    height: 60px;
    position: absolute;
    top: 0;
    right: 60px;
  }

  .cta-nav a {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    width: 60px;
    height: 60px;
    line-height: 0.6;
  }

  .mobile-nav {
    position: fixed;
    top: 0px;
    padding-top: 120px;
    width: 100%;
    height: 100%;
    z-index: 99;
    overflow: scroll;
  }

  /*-------------------ヘッダー装飾スタイル１-----------------------*/
  .cta-nav a {
    color: #ffffff;
    background: #737373;
  }

  /*-------------------メニューレイアウト-----------------------*/
  .menu_open {
    display: block;
  }

  .desktop-nav {
    display: none;
  }


  /*-------------------モバイルメニューレイアウト-----------------------*/
  .mobile-nav li a {
    padding: 10px;
    text-align: center;
    display: block;
    text-decoration: none;
  }

  /* submenuのスタイル
	----------------------------------*/
  .mobile-nav li ul.sub-menu {
    display: none;
  }

  /*--menu矢印 fontawsome--*/
  .mobile-nav li.menu-item-has-children a {
    position: relative;
  }

  .mobile-nav li.menu-item-has-children.open>a:after,
  .mobile-nav li.menu-item-has-children>a:after {
    position: absolute;
    top: 50%;
    right: 10px;
    font-family: 'Font Awesome 5 Free';

    content: '\f078';
    margin-top: -0.5em;
    font-size: 0.8em;
    font-weight: bold;
  }

  .mobile-nav li.menu-item-has-children.open>a:after {
    content: '\f077';
  }

  /*-------------------モバイルメニュー装飾スタイル-----------------------*/
  .mobile-nav {
    background: #ffffff;
  }

  /*-------------------モバイルメニューリンク装飾-----------------------*/
  .mobile-nav li a {
    color: #4d4d4d;
    display: block;
    text-align: left;
    border-top: 1px dotted #4d4d4d;
    font: 400 1.6rem 'Noto Sans JP';
  }

  .mobile-nav li:last-child a {
    border-bottom: 1px dotted #4d4d4d;
  }


  .mobile-nav li a span {
    color: #4d4d4d;
  }

  .mobile-nav li a:hover {
    color: #4d4d4d;
  }

  .mobile-nav .footer_container {
    padding-top: 60px;
    padding-bottom: 10px;
  }

  .mobile-nav .copy_right {
    margin-top: 20px;
  }

  .copy_right {
    font: 400 1.2rem 'Noto Sans JP';
    color: #4d4d4d;
    text-align: center;
    padding-bottom: 10px;
  }

  .copy_right p {
    font: 400 1.2rem 'Noto Sans JP';
    color: #4d4d4d;

  }

  .mobile-nav .footer_info h1 {
    margin-bottom: 10px;
  }

  .single_post {
    width: 100%;
    margin: 0 auto;
    padding-top: 45px;
    padding-bottom: 20px;
  }

  .single_work {
    padding: 0 5%;
  }

  .single_title {
    font: 400 2rem 'Noto Sans JP';
    color: #0071bc;
  }

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

  /*-------------------toggleスタイル-----------------------*/


  /*-------------------ユーティリティ２-----------------------*/
  .narrow {
    width: 100%;
  }

  /*-------------------ユーティリティ5-----------------------*/


  /*-------------------ユーティリティ7-----------------------*/
  .overlay-clear-tablet {
    position: static;
    height: auto;
  }

  .overlay-clear-tablet .overlay-lb,
  .overlay-clear-tablet .overlay-lt,
  .overlay-clear-tablet .overlay-rb,
  .overlay-clear-tablet .overlay-rt {
    position: static;
  }

  /*-------------------フリースタイル-----------------------*/
  .frontpage-header {
    height: 80vh;
    overflow: hidden;
  }

  .frontpage-header img {
    max-width: 160%;
  }


  /*----------*/
}

/*----------*/
@media only screen and (min-width: 644px) {
  .btn_margin_top {
    margin-top: 60px;
  }

  .sp_pt_none {
    padding-top: 0px;
    padding-bottom: 0px;
  }
}

/* 幅644px以下から 
------------------------------------------------------------*/
@media only screen and (max-width: 644px) {

  /*-------------------余白の設定-----------------------*/
  .bodyStyle .column #contentsMain,
  .bodyStyle .column #contentsLeft,
  .bodyStyle .column #contentsRight {
    padding: 15px;
  }

  .pb_40 {
    padding-bottom: 40px;
  }

  .pb_30 {
    padding-bottom: 30px;
  }

  /* margin */
  .m-ll {
    margin: calc(120px * 0.6) !important;
  }

  .mt-ll {
    margin-top: calc(120px * 0.6) !important;
  }

  .mb-ll {
    margin-bottom: calc(120px * 0.6) !important;
  }

  .ml-ll {
    margin-left: calc(120px * 0.6) !important;
  }

  .mr-ll {
    margin-right: calc(120px * 0.6) !important;
  }

  .m-l {
    margin: calc(90px * 0.6) !important;
  }

  .mt-l {
    margin-top: calc(90px * 0.6) !important;
  }

  .mb-l {
    margin-bottom: calc(90px * 0.6) !important;
  }

  .ml-l {
    margin-left: calc(90px * 0.6) !important;
  }

  .mr-l {
    margin-right: calc(90px * 0.6) !important;
  }

  .m-mm {
    margin: calc(60px * 0.6) !important;
  }

  .mt-mm {
    margin-top: calc(60px * 0.6) !important;
  }

  .mb-mm {
    margin-bottom: calc(60px * 0.6) !important;
  }

  .ml-mm {
    margin-left: calc(60px * 0.6) !important;
  }

  .mr-mm {
    margin-right: calc(60px * 0.6) !important;
  }

  .m-m {
    margin: calc(30px * 0.6) !important;
  }

  .mt-m {
    margin-top: calc(30px * 0.6) !important;
  }

  .mb-m {
    margin-bottom: calc(30px * 0.6) !important;
  }

  .ml-m {
    margin-left: calc(30px * 0.6) !important;
  }

  .mr-m {
    margin-right: calc(30px * 0.6) !important;
  }

  .m-s {
    margin: calc(15px * 0.6) !important;
  }

  .mt-s {
    margin-top: calc(15px * 0.6) !important;
  }

  .mb-s {
    margin-bottom: calc(15px * 0.6) !important;
  }

  .ml-s {
    margin-left: calc(15px * 0.6) !important;
  }

  .mr-s {
    margin-right: calc(15px * 0.6) !important;
  }

  .m-ss {
    margin: calc(10px * 0.6) !important;
  }

  .mt-ss {
    margin-top: calc(10px * 0.6) !important;
  }

  .mb-ss {
    margin-bottom: calc(10px * 0.6) !important;
  }

  .ml-ss {
    margin-left: calc(10px * 0.6) !important;
  }

  .mr-ss {
    margin-right: calc(10px * 0.6) !important;
  }

  /* padding */
  .p-ll {
    padding: calc(120px * 0.6) !important;
  }

  .pt-ll {
    padding-top: calc(120px * 0.6) !important;
  }

  .pb-ll {
    padding-bottom: calc(120px * 0.6) !important;
  }

  .pl-ll {
    padding-left: calc(120px * 0.6) !important;
  }

  .pr-ll {
    padding-right: calc(120px * 0.6) !important;
  }

  .p-l {
    padding: calc(90px * 0.6) !important;
  }

  .pt-l {
    padding-top: calc(90px * 0.6) !important;
  }

  .pb-l {
    padding-bottom: calc(90px * 0.6) !important;
  }

  .pl-l {
    padding-left: calc(90px * 0.6) !important;
  }

  .pr-l {
    padding-right: calc(90px * 0.6) !important;
  }

  .p-mm {
    padding: calc(60px * 0.6) !important;
  }

  .pt-mm {
    padding-top: calc(60px * 0.6) !important;
  }

  .pb-mm {
    padding-bottom: calc(60px * 0.6) !important;
  }

  .p-m {
    padding: calc(30px * 0.6) !important;
  }

  .pt-m {
    padding-top: calc(30px * 0.6) !important;
  }

  .pb-m {
    padding-bottom: calc(30px * 0.6) !important;
  }

  .pl-m {
    padding-left: calc(30px * 0.6) !important;
  }

  .pr-m {
    padding-right: calc(30px * 0.6) !important;
  }

  .p-s {
    padding: calc(15px * 0.6) !important;
  }

  .pt-s {
    padding-top: calc(15px * 0.6) !important;
  }

  .pb-s {
    padding-bottom: calc(15px * 0.6) !important;
  }

  .pl-s {
    padding-left: calc(15px * 0.6) !important;
  }

  .pr-s {
    padding-right: calc(15px * 0.6) !important;
  }

  .p-ss {
    padding: calc(10px * 0.6) !important;
  }

  .pt-ss {
    padding-top: calc(10px * 0.6) !important;
  }

  .pb-ss {
    padding-bottom: calc(10px * 0.6) !important;
  }

  .pl-ss {
    padding-left: calc(10px * 0.6) !important;
  }

  .pr-ss {
    padding-right: calc(10px * 0.6) !important;
  }

  .archive.container,
  .single.container,
  .section-ll {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .section-l {
    padding-top: calc(90px * 0.6);
    padding-bottom: calc(90px * 0.6);
  }

  .section-mm {
    padding-top: calc(60px * 0.6);
    padding-bottom: calc(60px * 0.6);
  }

  .section-m {
    padding-top: calc(30px * 0.6);
    padding-bottom: calc(30px * 0.6);
  }

  .section-s {
    padding-top: calc(15px * 0.6);
    padding-bottom: calc(15px * 0.6);
  }

  .section-ss {
    padding-top: calc(10px * 0.6);
    padding-bottom: calc(10px * 0.6);
  }

  .btn-box {
    margin-top: calc(30px * 0.6);
  }

  .post-box h1 {
    margin-top: calc(90px * 0.6);
    margin-bottom: calc(60px * 0.6);
  }

  .post-box h2 {
    margin-top: calc(60px * 0.6);
    margin-bottom: calc(30px * 0.6);
  }

  .post-box h3 {
    margin-top: calc(60px * 0.6);
    margin-bottom: calc(30px * 0.6);
  }

  .post-box h4 {
    margin-top: calc(30px * 0.6);
    margin-bottom: calc(15px * 0.6);
  }

  .col-mb-m div[class*="col-"] {
    margin-bottom: calc(30px * 0.6);
  }

  .col-mb-s div[class*="col-"] {
    margin-bottom: calc(50px * 0.6);
  }

  .col-mb-ss div[class*="col-"] {
    margin-bottom: calc(10px * 0.6);
  }

  /*-------------------文字サイズ-----------------------*/
  body {
    font-size: 16px;
  }

  h1 {
    font-size: calc(36px*0.8);
  }

  h2 {
    font-size: calc(28px*0.8);
  }

  h3 {
    font-size: calc(20px*0.6);
  }

  h4 {
    font-size: 16px;
  }

  .fs-ss {
    font-size: 12px;
  }

  .fs-s {
    font-size: 14px;
  }

  .fs-m {
    font-size: 16px;
  }

  .fs-mm {
    font-size: calc(20px*0.6);
  }

  .fs-l {
    font-size: calc(28px*0.8);
  }

  .fs-ll {
    font-size: calc(36px*0.8);
  }

  .fs-3l {
    font-size: calc(48px*0.8);
  }

  .btn-main .fs-l {
    font-size: 2rem;
    font-weight: 700;
  }
  .btn-main .tel_main_btn span.fs-l {
    font: 700 24px 'Montserrat';
  }
  /*-------------------モバイルメニューレイアウト-----------------------*/
  .mobile-nav li span {
    display: block;
    text-align: center;
    font-size: 0.8em;
  }

  /*-------------------一覧レイアウト-----------------------*/
  .archive-list li {
    width: 98%;
    margin-left: 1%;
    margin-right: 1%;
  }

  .archive-list li:nth-child(2n+1) {
    margin-left: 1%;
    margin-right: 1%;
  }

  /*-------------------最近の投稿(画像無し)-----------------------*/
  .recent-posts li .date {
    width: 100%;
  }

  /*-------------------テーブルレイアウト-----------------------*/
  .table-scroll {
    width: 100%;
    overflow-x: scroll;
  }

  .table-scroll table {
    width: 600px !important;
  }

  /*-------------------inputレイアウト-----------------------*/
  input[type="tel"],
  input[type="number"],
  select {
    width: 100%;
  }

  /*-------------------copyrightレイアウト-----------------------*/
  #copyright .copyright-left,
  #copyright .copyright-right {
    text-align: center;
  }

  /*-------------------footer内リスト-----------------------*/
  #footer .widget_archive ul,
  #footer .widget_recent_comments ul,
  #footer .widget_recent_entries ul,
  #footer .widget_text ul,
  #footer .widget_categories ul,
  #footer .widget_nav_menu ul,
  #footer .widget_meta ul,
  #footer .widget_welcart_category ul,
  #footer .widget_welcart_page ul,
  #footer .widget_welcart_bestseller ul,
  #footer .usces_recent_entries ul {
    border-right: none;
  }

  #footer .widget_archive ul li,
  #footer .widget_recent_comments ul li,
  #footer .widget_recent_entries ul li,
  #footer .widget_text ul li,
  #footer .widget_categories ul li,
  #footer .widget_nav_menu ul li,
  #footer .widget_meta ul li,
  #footer .widget_welcart_category ul li,
  #footer .widget_welcart_page ul li,
  #footer .widget_welcart_bestseller ul li,
  #footer .usces_recent_entries ul li {
    float: none;
    clear: both;
    margin: 0;
  }

  #footer .widget_archive ul li a,
  #footer .widget_recent_comments ul li a,
  #footer .widget_recent_entries ul li a,
  #footer .widget_text ul li a,
  #footer .widget_categories ul li a,
  #footer .widget_nav_menu ul li a,
  #footer .widget_meta ul li a,
  #footer .widget_welcart_category ul li a,
  #footer .widget_welcart_page ul li a,
  #footer .widget_welcart_bestseller ul li a,
  #footer .usces_recent_entries ul li a {
    text-align: center;
    display: block;
    margin: 0;
    padding: 1em;
  }

  /*-------------------コンポーネント２-----------------------*/
  .hover-scale.h-30-mobile {
    padding-top: 30%;
  }

  .hover-scale.h-50-mobile {
    padding-top: 50%;
  }

  .hover-scale.h-75-mobile {
    padding-top: 75%;
  }

  .hover-scale.h-100-mobile {
    padding-top: 100%;
  }

  /*-------------------ユーティリティ２-----------------------*/
  ul.column-1-mobile li {
    width: 100%;
  }

  ul.column-2-mobile li {
    width: 50%;
  }

  ul.column-3-mobile li {
    width: 33.333%;
  }

  ul.column-4-mobile li {
    width: 25%;
  }

  ul.column-5-mobile li {
    width: 20%;
  }

  /*-------------------ユーティリティ5-----------------------*/


  /*-------------------ユーティリティ7-----------------------*/
  .overlay-clear-mobile {
    position: static;
    height: auto;
  }

  .overlay-clear-mobile .overlay-lb,
  .overlay-clear-mobile .overlay-lt,
  .overlay-clear-mobile .overlay-rb,
  .overlay-clear-mobile .overlay-rt {
    position: static;
  }

  /*-------------------フリースタイル-----------------------*/
  .col,
  .col-1,
  .col-10,
  .col-11,
  .col-12,
  .col-2,
  .col-3,
  .col-4,
  .col-5,
  .col-6,
  .col-7,
  .col-8,
  .col-9,
  .col-auto,
  .col-lg,
  .col-lg-1,
  .col-lg-10,
  .col-lg-11,
  .col-lg-12,
  .col-lg-2,
  .col-lg-3,
  .col-lg-4,
  .col-lg-5,
  .col-lg-6,
  .col-lg-7,
  .col-lg-8,
  .col-lg-9,
  .col-lg-auto,
  .col-md,
  .col-md-1,
  .col-md-10,
  .col-md-11,
  .col-md-12,
  .col-md-2,
  .col-md-3,
  .col-md-4,
  .col-md-5,
  .col-md-6,
  .col-md-7,
  .col-md-8,
  .col-md-9,
  .col-md-auto,
  .col-sm,
  .col-sm-1,
  .col-sm-10,
  .col-sm-11,
  .col-sm-12,
  .col-sm-2,
  .col-sm-3,
  .col-sm-4,
  .col-sm-5,
  .col-sm-6,
  .col-sm-7,
  .col-sm-8,
  .col-sm-9,
  .col-sm-auto,
  .col-xl,
  .col-xl-1,
  .col-xl-10,
  .col-xl-11,
  .col-xl-12,
  .col-xl-2,
  .col-xl-3,
  .col-xl-4,
  .col-xl-5,
  .col-xl-6,
  .col-xl-7,
  .col-xl-8,
  .col-xl-9,
  .col-xl-auto {
    margin-bottom: 15px;
  }

  .frontpage-header {
    height: 600px;
    overflow: hidden;
  }

  .frontpage-header img {
    max-width: 250%;
    margin-left: -70%;
  }

  main {
    overflow-x: hidden;
  }

  #link3 {
    padding-top: 60px !important;
    padding-bottom: 80px !important;
  }

  #link3 .top_head_h3 {
    margin-bottom: 15px;
  }

  #link3 .work_list>div {
    padding: 0 !important;
    margin-bottom: 25px !important;
  }

  .btn_margin_top {
    margin-top: 45px;
  }

  .footer_container {
    width: 90%;
    max-width: 1262px;
    margin: 0 auto;
    padding-top: 35px;
    padding-bottom: 25px;
    display: flex;
    justify-content: space-between;
  }

  /*----------*/
}

/*----------*/
/* 幅380px以下から 
------------------------------------------------------------*/
@media only screen and (max-width: 380px) {


  /*----------*/
}

/*----------*/
.pc_1100_only {
  display: block;
}


.sp_560_only {
  display: none;
}

@media only screen and (max-width: 1100px) {
  .pc_1100_only {
    display: none;
  }

}

@media only screen and (max-width: 560px) {
  .pc_560_only {
    display: none;
  }

  .sp_560_only {
    display: block;
  }

  .frame {
    width: 24px;
  }

  .frame02 {
    width: 24px;
  }
}



.row {
  justify-content: center;
}
