@charset "utf-8";
   /*
   Theme Name:mrp04-child
   Template:mrp04
   Version: 0.01
   */
   /*
   DesignCode CSS: ver 0.01
   */
   /*------------------------------------------------------
   Theme Material
   ------------------------------------------------------*/
   /*------@import------*/
   @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
 
   :root {
     /*------------*/
     --color-background: #FFF;
     --color-font: #000000;
     --color-primary: #000000;
     --color-primary-shade: #FFFEB2;
     --color-primary-tint: #707070;
     --color-secondary: #0C328C;
     --color-secondary-tint: #0C328C;
     --color-table-border: #eee;
     --body-font-size: min(calc(1.7rem + (1vw - 19.2px) * 0.1294), 1.7rem); /* 1.6-1.4rem (1920-375) */
     --body-font-family:
     "Yu Gothic UI", sans-serif;
     --content-max-width: 1200px;
     /*------------*/
     --header-background: #fff;
     --header-color-font: #000000;
     --header-color-primary: #0C328C;
     --header-color-primary-shade: #CCCCCC;
     --header-color-primary-tint: #4acecc;
     /*------------*/
     --footer-background: #fff;
     --footer-color-font: #444;
     --footer-color-primary: #444;
   }
   /*------------------------------------------------------
   Cancellation
   ------------------------------------------------------*/
   /*calcDefault-Between---1920pxand375px*/
   html {
     font-size: 62.5%;
     overflow-x: hidden;
   }
   body {
     color: var(--color-font);
     font-size: var(--body-font-size);
     font-weight: 400;
     font-family: var(--body-font-family);
     background: var(--color-background);
   }
   * {
     -webkit-box-sizing: border-box;
     box-sizing: border-box;
   }
   body.mobile #mainImg, body.mobile #breadcrumb {
     margin-top: 0;
   }
   body.mobile {
     margin-top: 0;
   }
   #mainImg {
     padding-bottom: 0;
   }
   #mainImg img {
     width: 100% !important;
   }
   .home #content {
     padding: 0;
   }
   #wrapper, #content, .post {
     overflow: visible !important;
   }
   body.mobile {
     margin-top: 60px;
   }
   /*----------------------------------------------*/
   #sidebar h2 {
     color: var(--color-font);
     text-align: center;
   }
   /*----------------------------------------------*/
   a#scrollUp {
     background: var(--color-font);
   }
   /*--HEADER--------------------------------------------*/
   /*------
   --------------------------------------------*/
   .bg .inner {
     width: auto !important;
   }
   #header p {
     float: none;
     padding: 0;
   }
   #header .bg, .bg {
     background: none;
     margin: 0 auto;
   }
   /*----------------------------------------------*/
   #header h1, #header .description, #header-upper h1, #header-upper .description {
     color: var(--header-color-font);
     font-size: min(calc(1.2rem + (1vw - 19.2px) * 0.2232), 1.2rem); /* 1.2-1rem (1920-375) */
   }
   @media print, screen and (min-width: 1024px) {
     /*--------------------------------------------------*/
     #header-upper {
       display: flex;
       flex-direction: row;
       justify-content: space-between;
       align-items: center;
       background: #F2F2F2;
       height: 50px;
       padding: 5px min(calc(20px + (1vw - 19.2px) * 1.1161), 20px); /* 20-10px (1920-1024) */
     }
     .header__socialicon ul, #header-upper .header__catchphrase, #header-upper .bg, #header-upper .bg .inner, #header-upper h1, #header-upper .description {
       height: 100%;
     }
     /*-------------------------------------------------*/
     #header-upper h1, #header-upper .description {
       display: flex;
       flex-direction: row;
       align-items: center;
     }
     /*------------------------------------------------*/
     #header-upper .fa-2x, .fa-2x {
       font-size: inherit;
     }
     #header-upper .socialicon ul {
       display: -webkit-box;
       display: -ms-flexbox;
       display: flex;
       -ms-flex-wrap: wrap;
       flex-wrap: wrap;
       align-items: center;
       justify-content: center;
       padding: 0;
     }
     #header-upper .socialicon ul li {
       display: flex;
       justify-content: center;
       align-items: center;
       padding: 0;
       margin: 0;
       -webkit-box-sizing: border-box;
       box-sizing: border-box;
     }
     #header-upper .socialicon ul li:not(:last-child) {
       margin-right: 10px;
     }
     #header-upper .socialicon ul li::before {
       content: none;
     }
     #header-upper .socialicon ul li a {
       padding: 0;
       overflow: initial;
       line-height: 1;
     }
     #header-upper .socialicon .fa-facebook-square:before, #header-upper .socialicon .fa-twitter-square:before, #header-upper .socialicon .fa-youtube-square:before, #header-upper .socialicon .fa-instagram:before {
       color: var(--header-color-primary);
       font-size: 2.5rem;
     }
     #header-upper .socialicon .SvgLine {
       fill: var(--header-color-primary);
       width: 21px;
       height: 21px;
     }
     /*------------------------------------------------*/
     #header {
       overflow: visible;
       /* color: var(--header-color-font); */
       background: var(--color-background);
       width: 100%;
       height: 80px;
       margin: auto;
       z-index: 9999;
     }
     #header .inner, #header-layout, #header .logo, #header .sticky-logo, #header .logo a, #header .header__nav-contact, nav#mainNav, #mainNav .inner, nav div.panel, nav#mainNav ul, nav#mainNav ul li, nav#mainNav ul li a, #header ul.header__contact, #header ul.header__contact li, #header a.head_btn {
       height: 100%;
       float: none;
     }
     #header .inner {
       width: 100%;
       max-width: none;
     }
     #header-layout {
       display: flex;
       flex-direction: row;
       align-items: center;
       justify-content: space-between;
       width: 100%;
       max-width: none;
       padding: 0;
     }
     /*--------------------------------------------------*/
     #header .logo {
       display: block;
       line-height: 0;
       /* padding: min(calc(10px + (1vw - 19.2px) * 0.5580), 10px) min(calc(20px + (1vw - 19.2px) * 1.1161), 20px); */ /* 10-5px20-10px (1920-1024) */
     }
     #header .logo a {
       display: flex;
       flex-direction: row;
       align-items: center;
     }
     #header .logo img {
       -o-object-fit: contain;
       object-fit: contain;
       width: auto;
       height: 100%;
       max-width: 250px;
       max-height: 70px;
       margin: 0 0 0 50px;
     }
     /*--------------------------------------------------*/
     #header .header__nav-contact {
       flex-shrink: 0;
     }
     nav#mainNav {
       background: none;
       margin: 0;
     }
     nav#mainNav ul, #header .header__nav-contact {
       display: flex;
       flex-direction: row;
       align-items: center;
     }
     nav#mainNav ul li a {
       display: flex;
       flex-direction: column;
       align-items: center;
       justify-content: center;
       color: var(--color-font);
       font-size: min(calc(1.6rem + (1vw - 19.2px) * 0.2232), 1.6rem); /* 1.6-1.4rem (1920-1024) */
       padding: min(calc(15px + (1vw - 19.2px) * 0.5580), 15px) min(calc(35px + (1vw - 19.2px) * 1.6722), 35px); /* 15-10px35-20px (1920-1024) */
     }
     nav#mainNav ul ul.sub-menu {
       width: 134px;
       height: auto;
     }
     nav#mainNav ul li:hover ul.sub-menu {
       top: 100%;
       left: 50%;
       transform: translateX(-50%);
     }
     nav#mainNav ul li a b, nav#mainNav ul li a span {
       margin-top: 0;
       font-weight: 600;
       color: var(--color-font);
     }
 
     #header a.head_btn span{
       color: var(--color-background);
     }
    
     nav#mainNav ul li a span {
       /* color: var(--color-background); */
       font-weight: 400;
     }
 
     nav#mainNav ul li.current-menu-item a b, nav#mainNav ul li a:hover b, nav#mainNav ul li a:active b, nav#mainNav ul li.current-menu-parent a b {
       /* color: var(--color-background); */
       font-weight: 600;
     }
     nav#mainNav ul li li a:hover, nav#mainNav ul li li.current-menu-item li a:hover, nav#mainNav ul li.current-menu-item li a:hover,  nav#mainNav ul li.current-menu-ancestor li a:hover {
       background-color: var(--color-background);
       color: var(--header-color-primary-shade);
       font-weight: 600;
     }
     /*--------------------------------------------------*/
     #header ul.header__contact {
       display: flex;
       flex-direction: row;
       align-items: center;
       margin-left: min(calc(10px + (1vw - 19.2px) * 0.5580), 10px); /* 10-5px (1920-1024) */
     }
     #header a.head_btn {
       display: flex;
       flex-direction: column;
       justify-content: center;
       align-items: center;
       background: var(--color-font);
       color: #fff;
       font-size: calc(1.6rem + (1vw - 19.2px) * 0.2232); /* 1.6-1.4rem (1920-1024) */
       font-weight: 600;
       line-height: 1.2;
       padding: min(calc(15px + (1vw - 19.2px) * 0.2232), 15px) min(calc(30px + (1vw - 19.2px) * 0.5580), 30px); /* 10-8px20-15px (1920-1024) */
       -webkit-transition: .3s;
       transition: .3s;
     }
       
     #header a.head_btn.tel_btn {
       background: var(--color-font);
     }
     #header a.head_btn.mail_btn span{
       color:#fff;
       display: flex;
       flex-direction: column;
       justify-content: center;
       align-items: center;
       line-height: 1.1;
       font-weight: 400;
       font-size: 12px;
     }
       
       #header a.head_btn.mail_btn span span{
           font-weight: 100;
           color: var(--color-secondary-tint);
       }
       
     #header a.head_btn.mail_btn:hover span{
       color: var(--color-background);
     }
 
     #header a.head_btn:hover {
       background: var(--header-color-primary-shade);
       /* color: var(--color-font); */
     }
     #header a.head_btn::before {
       display: block;
       font-family: 'FontAwesome';
       font-size: 1.4em;
       font-weight: 400;
       line-height: 1;
       margin-bottom: .1em;
       margin: 0 3px;
     }
     #header a.head_btn.tel_btn::before {
       content: '\f095';
     }
     #header a.head_btn.mail_btn::before {
       /* content: '\f0e0'; */
     }

      
     /*--------------------------------------------------*/
     .sticky-header .site-header {
       z-index: 9999;
     }
     .sticky-header #header > .inner {
       height: auto;
       background: var(--color-background);
       box-shadow: 0 0 6px rgba(0, 0, 0, .2);
     }
     .sticky-header #header-layout {
       justify-content: space-between;
       height: 80px;
     }
     .sticky-header nav#mainNav {
       background: none;
     }
   }

@media screen and (min-width:1024px) {
	#header {
		position: absolute;
		top: 0;
		left: 0;
	}
}
   /*------ --------------------------------------------*/
   @media print, screen and (max-width: 1240px) {
     #header a.headBtn span {
       display: none;
     }
     #header a.headBtn::before {
       margin-right: 0;
     }
   }
   @media print, screen and (max-width: 1023px) {
     #header-upper .header__socialicon, #header .sticky-logo, #header ul.header__contact {
       display: none;
     }
     #header h1, #header .description, #header-upper h1, #header-upper .description {
       display: block;
       float: none;
       text-align: center;
       padding: 20px 0 10px;
     }
   }
   /*----*/
   @media print, screen and (min-width: 1024px) {
     .sticky-header .site-header {
       position: fixed !important;
       width: 100%;
       z-index: 9999;
       top: -125px;
       transform: translateY(125px);
       transition: all 0.8s ease-in-out;
     }
   }
   @media print, screen and (max-width: 1023px) {
     #header .inner {
       width: 100%;
     }
     #header-layout {
       padding: 0;
     }
     #header .logo {
       display: block;
       text-align: center;
       margin: 20px auto;
       padding: 0;
     }
   }
   /*--------------------------------------------------*/
   .spmenu #menu {
     padding: 0px 1px 2px 0;
   }
   .spmenu #menu p {
     transform: translateX(-50%);
     left: 50%;
   }
   .spmenu #menu span, .spmenu #menu span:before, .spmenu #menu span:after {
     width: 35px;
     background: var(--header-color-primary);
   }
   .spmenu #menu p {
     color: var(--header-color-primary);
   }
   @media print, screen and (max-width: 1023px) {
     .mobile #header {
       background: var(--header-background);
       box-shadow: 0 0 6px rgba(0, 0, 0, .2);
       z-index: 9999;
     }
     body.mobile nav#mainNav.menuOpen {
       height: calc(100% - 130px);
     }
     body.mobile #header .logo, body.mobile #header .logo .mark {
       display: -webkit-box;
       display: -ms-flexbox;
       display: flex !important;
     }
     body.mobile #header .logo .spmenu {
       display: block !important;
     }
     body.mobile #header .logo .mark {
       justify-content: center;
       align-items: center;
       padding: 5px 10px;
     }
     body.mobile #header .logo img {
       width: auto;
       height: 100%;
       max-width: 250px;
       max-height: 50px;
       -o-object-fit: contain;
       object-fit: contain;
     }
     nav#mainNav ul li a {
       color: var(--header-color-font);
     }
     nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:hover {
       color: var(--header-color-primary);
     }
   }
   /*--FOOTER--------------------------------------------*/
   /*--
   --------------------------------------------*/
   #footer {
     color: var(--color-font);
     font-size: min(calc(1.4rem + (1vw - 19.2px) * 0.1942), 1.4rem); /* 1.4-1.1rem (1920-375) */
     padding: min(calc(50px + (1vw - 19.2px) * 0.9709), 50px) 0 30px; /* 50-35px(1920-375) */
     background: var(--footer-background);
   }
   #footer a {
     -webkit-transition: .2s;
     transition: .2s;
   }
   #footer .inner {
     width: 95%;
     max-width: var(--content-max-width);
   }
   #footer ul {
     font-size: 100%;
     padding: 0;
   }
   #footer ul li {
     display: block;
     padding: 0;
     margin: 0;
   }
   #footer ul li::before {
     content: none;
     position: static;
     top: auto;
     left: auto;
     width: auto;
     height: auto;
     background: none;
   }
   #footer ul li a {
     padding: 0;
   }
   #footer li a, .footeradd, .footertel, #footer li a:hover {
     color: var(--color-font);
   }
   #footer img {
     /* width: auto; */
     /* max-width: 100%; */
   }
   /*------ --------------------------------------------*/
   #footer .footer__logo:not(:last-child) {
     text-align: center;
     margin-bottom: 20px;
   }
   #footer .footer__logo img {
     max-width: 320px;
     max-height: min(calc(60px + (1vw - 19.2px) * 1.2945), 60px);
     -o-object-fit: contain;
     object-fit: contain;
   }
   /*--------------------------------------------------*/
   #footer .footnav {
     float: none;
   }
   #footer .footnav:not(:last-child) {
     margin-bottom: 30px;
   }
   #footer .footnav ul {
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-orient: horizontal;
     -webkit-box-direction: normal;
     -ms-flex-direction: row;
     flex-direction: row;
     -ms-flex-wrap: wrap;
     flex-wrap: wrap;
     -webkit-box-pack: center;
     -ms-flex-pack: center;
     justify-content: center;
   }
   #footer .footnav ul > li {
     position: relative;
     line-height: 1.4;
     padding: 0 min(calc(16px + (1vw - 19.2px) * 0.4531), 16px) 0 min(calc(15px + (1vw - 19.2px) * 0.4531), 15px); /* 16-9px15-8px (1920-375) */
     margin-bottom: 10px;
   }
   #footer .footnav ul > li::before, #footer .footnav ul > li::after {
     content: '';
     position: absolute;
     width: 1px;
     height: 100%;
     background: var(--color-font);
     top: 0;
   }
   #footer .footnav ul > li::before {
     left: 0;
   }
   #footer .footnav ul > li::after {
     right: -1px;
   }
   /*------SNS --------------------------------------------*/
   #footer .fa-2x, .fa-2x {
     font-size: inherit;
   }
   #footer .socialicon ul, .socialicon ul {
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -ms-flex-wrap: wrap;
     flex-wrap: wrap;
     -webkit-box-pack: center;
     -ms-flex-pack: center;
     justify-content: center;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
     padding: 0;
   }
   #footer .socialicon ul li, .socialicon ul li {
     text-align: center;
     padding: 1.0em 0.2em;
     margin: 0;
     -webkit-box-sizing: border-box;
     box-sizing: border-box;
   }
   #footer .socialicon ul li::before, .socialicon ul li::before {
     content: none;
   }
   #footer .socialicon ul li a, .socialicon ul li a {
     padding: 0;
     overflow: initial;
     /* line-height: 1; */
   }
   #footer .fa-facebook-square:before, #footer .fa-twitter-square:before, #footer .fa-youtube-square:before, #footer .fa-instagram:before {
     color: var(--footer-color-primary);
     font-size: 3rem;
   }
   #footer .SvgLine {
     fill: var(--footer-color-primary);
     width: 28px;
     height: 28px;
   }
   @media print, screen and (max-width: 768px) {
     #footer {
       padding-bottom: 60px;
     }
   }
   /*-------------------------------------------------*/
   #copyright {
     color: var(--color-font);
     font-size: min(calc(1.2rem + (1vw - 19.2px) * 0.1294), 1.2rem); /* 1.2-1rem (1920-375) */
     letter-spacing: .1rem;
     padding: 0;
     margin: 30px auto 0;
     background: var(--color-background);
   }
   /*----------------------------------------------*/
   h1.title, .post h1, .post h2, .post2b h2, .post4b h2, h2.title, .post h3, .post h4 {
     line-height: 1.6;
     background: none;
   }
   .post h1 span, .post h2 span, .post h3 span, .post h4 span {
     padding: 0;
     /* font-weight: 600; */
   }
   h1.title:first-child, .post h1:first-child, #front-sectionPost h1:first-child, .post h2:first-child, .post h3:first-child, .post h3.col-in-h3:first-child, .post h4:first-child {
     /* margin-top: 0; */
   }
   /*------h1--------------------------------------------*/
   h1.title, .post h1, header#h1Header h1.title {
     font-size: min(calc(4.0rem + (1vw - 17.2px) * 0.5178), 4.0rem); /* 3.2-2.4rem (1920-375) */
     /* font-weight: 600; */
     letter-spacing: .2rem;
     text-align: center;
     text-shadow: none;
     padding: 0;
     z-index: 20;
     flex-direction: column;
     color: var(--footer-color-font);
   }
   h1.title, .post h1 {
     position: relative;
     margin: 0 auto min(calc(60px + (1vw - 19.2px) * 1.2945), 60px); /* 0 auto 60-40px (1920-375) */
     line-height: 1.0;
     font-weight: 600;
     color: var(--color-font);
   }
   h1.title span:nth-child(2){
     font-size:70%;
     font-weight: 400;
   }
 
 
   h1.title .sub_ttl, .post h1 .sub_ttl {
     display: block;
      /* 3.2-2.4rem (1920-375) */
     text-align: left;
   }
   .top01_text .sub_ttl, .top02 .sub_ttl,.top03 .sub_ttl{
     font-size: 80%;
   }
 
   h1.under_ttl {
     text-align: left;
     margin-bottom: 2rem;
   }
   span.sub_txt {
     display: flex;
     align-items: center;
     color: var(--color-font);
     font-size: 20px;
     text-align: left;
     margin-bottom: 10px;
   }
   span.sub_ttl {
     font-weight: 600;
     padding:0 !important;
     letter-spacing: .15em;
   }
   h1 .sub_txt:before {
     border-top: 3px solid;
     content: "";
     width: 5em;
     margin-right: 0.5em;
     display: flex;
     align-items: center;
     color: var(--color-primary-shade);
     font-size: 20px;
   }

h1 span {
	display: inline-block;
	padding: 0 5px;
	position: relative;
}

h1 span::before,
h1 span::after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	display: inline-block;
	width: 30px;
	height: 1px;
	background: var(--color-font);
}

h1 span::before{
	right: 102%;
}

h1 span::after {
	left: 102%;
}

   @media (max-width: 767px) {
     h1 .sub_txt:after {
       margin-left: 5vw;
       width: 10vw;
     }
     span.sub_txt {
       font-size: 0.8rem;
       line-height: 1;
     }
     span.sub_ttl {
       letter-spacing: .1em;
       /* font-size: 1.5rem; */
       line-height: 1.4;
     }
     h1.under_ttl { 
       margin-bottom: 1.3rem;
     }
   }
   .post h2::after {
     content: none;
   }
   /*------h2--------------------------------------------*/
   .post h2 {
     border-left: solid 4px  var(--color-font);
     font-size: min(calc(3.5rem + (1vw - 19.2px) * 0.4531), 3.5rem); /* 2.8-2.1rem (1920-375) */
     font-weight: 600;
     /* text-align: center; */
     letter-spacing: .2rem;
     padding: 0;
     padding-left: 2vw;
     /* margin: min(calc(30px + (1vw - 19.2px) * 3.5599), 30px) auto min(calc(30px + (1vw - 19.2px) * 0.9709), 30px); */ /* 120-65px auto 50-35px (1920-375) */
   }
   .post h2::before {
     content: none;
     position: relative;
     width: auto;
     height: auto;
     top: auto;
     left: auto;
   }
 
 
   /*------h3--------------------------------------------*/
   .post h3 {
     font-size: min(calc(2.4rem + (1vw - 19.2px) * 0.4531), 2.4rem); /* 2.4-1.7rem (1920-375) */
     font-weight: 600;
     letter-spacing: .1rem;
     padding: 0 .4em .4em;
     /* margin: min(calc(20px + (1vw - 19.2px) * 2.2654), 20px) auto min(calc(20px + (1vw - 19.2px) * 0.6472), 20px); */ /* 70-35px auto 35-25px (1920-375) */
     border-bottom: 2px solid var(--header-color-primary-shade);
     line-height: 1.0;
   }
   .post h3::before {
     content: none;
     position: relative;
     width: auto;
     height: auto;
     top: auto;
     left: auto;
   }
   /*------h4--------------------------------------------*/
   .post h4 {
 	position: relative;
 	font-size: min(calc(2.8rem + (1vw - 19.2px) * 0.1942), 2.8rem); /* 1.8-1.5rem (1920-375) */
 	margin: min(calc(100px + (1vw - 19.2px) * 0.6472), 100px) auto min(calc(50px + (1vw - 19.2px) * 0.3236), 50px); /* 30-20px auto 15-10px (1920-375) */
 	border: none;
 	display: flex;
 	align-items: center;
 	justify-content: center;
 	color: var(--color-font);
 	text-align: center;
 }
 .post h4:before, .post h4:after {
 	content: '';
 	content: "";
 	height: 1px;
 	flex-grow: 1;
 	background-color: var(--color-font);
 }
 .post h4:before {
 	margin-right: 1em; 
 }
 .post h4:after {
 	margin-left: 1em; 
 }
  
   /*------------------------------------------
   Additional contents and parts
   --------------------------------------------*/
   /*--inner/outer--------------------------------------------*/
   .content_inner {
     margin: 0 auto;
     width: 90%;
   }
   .content_wrapper {
     margin: 0 auto;
     width: 100%;
   }
   .max_w900 {
     max-width: 900px;
   }
   .max_w960 {
     max-width: 960px;
   }
   .max_w1000 {
     max-width: 1000px;
   }
   .max_w1024 {
     max-width: 1024px;
   }
   .max_w1100 {
     max-width: 1100px;
   }
   .max_w1200 {
     max-width: 1200px;
   }
   .max_w1240 {
     max-width: 1240px;
   }
   .max_w1300 {
     max-width: 1300px;
   }
   .max_w1400 {
     max-width: 1400px;
   }
   .max_w1500 {
     max-width: 1500px;
   }
   .max_w1600 {
     max-width: 1600px;
   }
   .max_w1700 {
     max-width: 1700px;
   }
   .max_w1800 {
     max-width: 1800px;
   }
   /*--space--------------------------------------------*/
   .mt0 {
     margin-top: 0 !important;
   }
   .mt1 {
     margin-top: 1rem !important;
   }
   .mt2 {
     margin-top: 2rem !important;
   }
   .mt3 {
     margin-top: 3rem !important;
   }
   .mt4 {
     margin-top: 4rem !important;
   }
   .mt5 {
     margin-top: 5rem !important;
   }
   .mt6 {
     margin-top: 6rem !important;
   }
   .mt7 {
     margin-top: 7rem !important;
   }
   .mt8 {
     margin-top: 8rem !important;
   }
   .mt9 {
     margin-top: 9rem !important;
   }
   .mt10 {
     margin-top: 10rem !important;
   }
   .mt15 {
     margin-top: 15rem !important;
   }
   .mt16 {
     margin-top: 16rem !important;
   }
   .mb0 {
     margin-bottom: 0rem !important;
   }
   .mb1 {
     margin-bottom: 1rem !important;
   }
   .mb2 {
     margin-bottom: 2rem !important;
   }
   .mb3 {
     margin-bottom: 3rem !important;
   }
   .mb4 {
     margin-bottom: 4rem !important;
   }
   .mb5 {
     margin-bottom: 5rem !important;
   }
   .mb6 {
     margin-bottom: 6rem !important;
   }
   .mb7 {
     margin-bottom: 7rem !important;
   }
   .mb8 {
     margin-bottom: 8rem !important;
   }
   .mb9 {
     margin-bottom: 9rem !important;
   }
   .mb10 {
     margin-bottom: 10rem !important;
   }
   .mb15 {
     margin-bottom: 15rem !important;
   }
   .mb16 {
     margin-bottom: 16rem !important;
   }
   @media screen and (max-width: 768px) {
     .mt1 {
       margin-top: 0.5rem !important;
     }
     .mt2 {
       margin-top: 1rem !important;
     }
     .mt3 {
       margin-top: 1.5rem !important;
     }
     .mt4 {
       margin-top: 2rem !important;
     }
     .mt5 {
       margin-top: 2.5rem !important;
     }
     .mt6 {
       margin-top: 3rem !important;
     }
     .mt7 {
       margin-top: 3.5rem !important;
     }
     .mt8 {
       margin-top: 4rem !important;
     }
     .mt9 {
       margin-top: 4.5rem !important;
     }
     .mt10 {
       margin-top: 5rem !important;
     }
     .mt15 {
       margin-top: 7.5rem !important;
     }
     .mt16 {
       margin-top: 8rem !important;
     }
     .mb1 {
       margin-bottom: 0.5rem !important;
     }
     .mb2 {
       margin-bottom: 1rem !important;
     }
     .mb3 {
       margin-bottom: 1.5rem !important;
     }
     .mb4 {
       margin-bottom: 2rem !important;
     }
     .mb5 {
       margin-bottom: 2.5rem !important;
     }
     .mb6 {
       margin-bottom: 3rem !important;
     }
     .mb7 {
       margin-bottom: 3.5rem !important;
     }
     .mb8 {
       margin-bottom: 4rem !important;
     }
     .mb9 {
       margin-bottom: 4.5rem !important;
     }
     .mb10 {
       margin-bottom: 5rem !important;
     }
     .mb15 {
       margin-bottom: 7.5rem !important;
     }
     .mb16 {
       margin-bottom: 8rem !important;
     }
   }
   .pt0 {
     padding-top: 0rem !important;
   }
   .pt1 {
     padding-top: 1rem !important;
   }
   .pt2 {
     padding-top: 2rem !important;
   }
   .pt3 {
     padding-top: 3rem !important;
   }
   .pt4 {
     padding-top: 4rem !important;
   }
   .pt5 {
     padding-top: 5rem !important;
   }
   .pt6 {
     padding-top: 6rem !important;
   }
   .pt7 {
     padding-top: 7rem !important;
   }
   .pt8 {
     padding-top: 8rem !important;
   }
   .pt9 {
     padding-top: 9rem !important;
   }
   .pt10 {
     padding-top: 10rem !important;
   }
   .pb0 {
     padding-bottom: 0rem !important;
   }
   .pb1 {
     padding-bottom: 1rem !important;
   }
   .pb2 {
     padding-bottom: 2rem !important;
   }
   .pb3 {
     padding-bottom: 3rem !important;
   }
   .pb4 {
     padding-bottom: 4rem !important;
   }
   .pb5 {
     padding-bottom: 5rem !important;
   }
   .pb6 {
     padding-bottom: 6rem !important;
   }
   .pb7 {
     padding-bottom: 7rem !important;
   }
   .pb8 {
     padding-bottom: 8rem !important;
   }
   .pb9 {
     padding-bottom: 9rem !important;
   }
   .pb10 {
     padding-bottom: 10rem !important;
   }
   .pd2 {
     padding: 2rem !important;
   }
   .pd3 {
     padding: 3rem !important;
   }
   .pd4 {
     padding: 4rem !important;
   }
   .pd5 {
     padding: 5rem !important;
   }
   @media screen and (max-width: 768px) {
     .pt1 {
       padding-top: 0.5rem !important;
     }
     .pt2 {
       padding-top: 1rem !important;
     }
     .pt3 {
       padding-top: 1.5rem !important;
     }
     .pt4 {
       padding-top: 2rem !important;
     }
     .pt5 {
       padding-top: 2.5rem !important;
     }
     .pt6 {
       padding-top: 3rem !important;
     }
     .pt7 {
       padding-top: 3.5rem !important;
     }
     .pt8 {
       padding-top: 4rem !important;
     }
     .pt9 {
       padding-top: 4.5rem !important;
     }
     .pt10 {
       padding-top: 5rem !important;
     }
     .pb1 {
       padding-bottom: 0.5rem !important;
     }
     .pb2 {
       padding-bottom: 1rem !important;
     }
     .pb3 {
       padding-bottom: 1.5rem !important;
     }
     .pb4 {
       padding-bottom: 2rem !important;
     }
     .pb5 {
       padding-bottom: 2.5rem !important;
     }
     .pb6 {
       padding-bottom: 3rem !important;
     }
     .pb7 {
       padding-bottom: 3.5rem !important;
     }
     .pb8 {
       padding-bottom: 4rem !important;
     }
     .pb9 {
       padding-bottom: 4.5rem !important;
     }
     .pb10 {
       padding-bottom: 5rem !important;
     }
     .pd2 {
       padding: 1rem !important;
     }
     .pd3 {
       padding: 1.5rem !important;
     }
     .pd4 {
       padding: 2rem !important;
     }
     .pd5 {
       padding: 2.5rem !important;
     }
   }
   @media screen and (max-width: 414px) {
     .mt16 {
       margin-top: 5rem !important;
     }
     .mb16 {
       margin-bottom: 5rem !important;
     }
   }
   /*--responsive parts--------------------------------------------*/
   /*br*/
   .spbr, table.sp_t, .post img.img_sp {
     display: none;
   }
   .pc_none {
     display: none;
   }
   @media screen and (max-width: 768px) {
     .spbr, table.sp_t, .post img.img_sp {
       display: block;
     }
     .pcbr, table.pc_t, .post img.img_pc {
       display: none;
     }
       .pc_none {
       display: inherit;
     }
     .sp_none {
       display: none;
     }
   }
   @media screen and (min-width: 769px) {
     .pc_center {
       text-align: center !important;
     }
     .pc_right {
       text-align: right !important;
     }
     .pc_left {
       text-align: left !important;
     }
   }
   /*--flexbox--------------------------------------------*/
   .w10 {
     width: 10%;
   }
   .w20 {
     width: 20%;
   }
   .w25 {
     width: 25%;
   }
   .w30 {
     width: 30%;
   }
   .w35 {
     width: 35%;
   }
   .w40 {
     width: 40%;
   }
   .w50 {
     width: 50%;
   }
   .w60 {
     width: 60%;
   }
   .w70 {
     width: 70%;
   }
   .w80 {
     width: 80%;
   }
   .w90 {
     width: 90%;
   }
   .gap {
     gap: 10%;
   }
   .gap3 {
     gap: 3%;
   }
   .gap1 {
     gap: 10%;
   }
   .gap2 {
     gap: 1.5%;
   }
   .ai_center {
     align-items: center;
   }
   .ai_self_center {
     align-self: center;
   }
   .jc_center {
     justify-content: center;
   }
   .jc_between {
     justify-content: space-between;
   }
   .rev {
     flex-direction: row-reverse;
   }
   @media screen and (min-width: 769px) {
     .columns, .flexbox {
       display: flex;
     }
   }
   @media screen and (max-width: 768px) {
     .w10, .w20, .w25, .w30, .w35, .w40, .w50, .w60, .w70, .w80, .w90 {
       width: 100%;
       margin-bottom: 20px;
     }
     .flexbox.rev {
       flex-direction: row-reverse;
     }
     .sp_nowrap {
       display: flex;
     }
     .sp_nowrap .w10 {
       width: 10%;
     }
     .sp_nowrap .w20 {
       width: 20%;
     }
     .sp_nowrap .w30 {
       width: 30%;
     }
     .sp_nowrap .w40 {
       width: 40%;
     }
     .sp_nowrap .w50 {
       width: 50%;
     }
     .sp_nowrap .w60 {
       width: 60%;
     }
     .sp_nowrap .w70 {
       width: 70%;
     }
     .sp_nowrap .w80 {
       width: 80%;
     }
     .sp_nowrap .w90 {
       width: 90%;
     }
     .sp_ai_top {
       align-items: flex-start;
     }
     .sp_no_mb {
       margin-bottom: 0 !important;
     }
     .sp_no_pb {
       padding-bottom: 0 !important;
     }
   }
   /*--Anchor Point--------------------------------------------*/
   @media print, screen and (min-width: 769px) {
     .a_point {
       margin-top: -90px;
       padding-top: 90px;
     }
   }
   @media print, screen and (max-width: 768px) {
     .a_point {
       margin-top: -80px;
       padding-top: 80px;
     }
   }
   /*------------------------------------------
  -----*/
   ul.post > li, .post2b, .post4b {
     display: flex;
     flex-direction: row;
     flex-wrap: wrap;
     justify-content: space-between;
   }
   ul.post > li, .post2b li, .post4b li {
     border-bottom: none !important;
   }
   .post2b, .post4b {
     padding: 0;
     margin: 0 auto;
   }
   .post2b li, .post4b li {
     position: relative;
     padding: 0 0 45px;
     margin: 0 0 20px;
   }
   
   .post .time, .postlist .time, .post2b .time, .post4b .time {
     color: var(--color-font);
     font-size: min(calc(1.3rem + (1vw - 19.2px) * 0.1294), 1.3rem); /* 1.2-1rem (1920-375) */
     line-height: 1.2;
     background: var(--header-color-primary-shade);
     padding: 10px;
     /* border-radius: 10px; */
     font-weight: 600;
   }
.post .time a, .post2b .time a, .post4b .time a, .postlist .time a {
    color: var(--color-font);
}
 
   .post .time, .postlist .time{
     padding: 7px 12px;
   }
   .post2b li .post2b_contents, .post4b li .post4b_contents {
     margin-bottom: 0;
     opacity: .5;
   }
   .post_link, .post2b_link, .post4b_link {
     position: absolute;
     float: none;
     color: var(--color-font);
     font-size: min(calc(1.3rem + (1vw - 19.2px) * 0.1294), 1.3rem); /* 1.3-1.1rem (1920-375) */
     margin: 0;
     bottom: 10px;
     right: 5px;
     border-bottom: 1px solid;
   }
   .post_link a, .post2b_link a, .post4b_link a {
     color: var(--color-font);
   }
   /*----------*/
   .post .post_img, .post_text70, .post_img img {
     float: none;
   }
   .post .post_img, .post_text70, .post2b li, .post4b li {
     width: 100%;
   }
   .post_img img, .post2b img, .post4b img {
     width: 100%;
     height: 100%;
     max-width: none;
     object-fit: cover;
   }
   .post_img img, .post2b .post2b_img {
     text-align: center;
   }
   .post_img img {
     max-height: 250px;
   }
   .post2b img {
     max-height: 280px;
   }
   .post4b img {
     max-height: 200px;
     /* border-radius: 20px; */
   }
   @media only screen and (max-width: 640px) {
     #content .post_img, #content .post2b_img, #content .post4b_img {
       padding: 0;
     }
     #content .post_img img, #content .post2b_img img, #content .post4b_img img {
       width: 100%;
       max-width: none;
       padding: 0;
     }
   }
   /*----------*/
   .post_text h2 a, .post2b h2 a, .post4b h2 {
     font-size: inherit;
   }
   .post2b h2, .post4b h2, h2.title, .post_text h2 {
     text-align: left;
     letter-spacing: .1rem;
     padding: 0 !important;
     margin: 10px auto !important;
     border: none;
   }
   .post2b h2, .post4b h2, h2.title, .post_text h2, .post h2 a, .post2b h2 a, .post4b h2 a, .postlist .ttls a {
     color: var(--color-font);
   }
   h2.title, .post_text h2, .post h2 a {
     font-size: min(calc(2rem + (1vw - 19.2px) * 0.2589), 2rem); /* 2-1.6rem (1920-375) */
   }
   .post2b h2, .post4b h2, .post2b h2 a, .post4b h2 a {
     font-size: min(calc(1.8rem + (1vw - 19.2px) * 0.1294), 1.8rem); /* 1.8-1.6rem (1920-375) */
     padding-left: 7px;
     font-weight: 500;
   }
   .post2b h2, .post4b h2{
     border-left: solid 4px  var(--color-font);
     /* text-align: center; */
   }
   .post_text h2::before, .post2b h2::before, .post4b h2::before, .post_text h2::after, .post2b h2::after, .post4b h2::after {
     content: none !important;
   }
   .clearfix:after {
     content: none;
   }
   /*---------------------------------------------*/
   body:not(.home) .post h2.cat-loop {
     display: block;
     overflow: hidden;
     white-space: nowrap;
     text-overflow: ellipsis;
   }
   section.widget h2 {
     border-bottom: 1px solid;
   }
   /*----------------------------------------------*/
   .postlist {
     margin-bottom: 0;
   }
   .postlist li {
     border-bottom: 1px solid #ddd;
     margin: 0 auto;
   }
   .postlist li:first-child {
     border-top: 1px solid #ddd;
   }
   .postlist .post_text {
     display: flex;
     flex-direction: row;
     align-items: center;
     width: 98%;
     margin: 0 auto;
     padding: 12px 0;
   }
   .postlist .ttls, .postlist .date {
     display: block;
     padding: 0 10px;
     margin-bottom: 0;
     font-weight: 600;
   }
   .postlist .ttls {
     overflow: hidden;
     white-space: nowrap;
     text-overflow: ellipsis;
   }
   .postlist .ttls a:hover {
     text-decoration: underline;
   }
   .postlist .time {
     display: block;
     white-space: nowrap;
     margin: 0 10px 0 0;
   }
   @media print, screen and (max-width: 640px) {
     .postlist .post_text {
       -ms-flex-wrap: wrap;
       flex-wrap: wrap;
     }
     .postlist .ttls {
       width: 100%;
       margin-top: 10px;
     }
     .postlist .ttls, .postlist .date {
       padding: 0 5px;
     }
     .postlist .time {
       margin: 0 5px 0 0;
     }
   }
   /*---------------------------------------------*/
   @media print, screen and (min-width: 800px) {
     .post4b li {
       width: 24%;
     }
     .post4b li:nth-child(4n+2):last-child {
       margin-right: calc((24% * 2) + (((100% - (24% * 4)) / 3) * 2));
     }
     .post4b li:nth-child(4n+3):last-child {
       margin-right: calc((24% * 1) + (((100% - (24% * 4)) / 3) * 1));
     }
     .post4b li:nth-child(4n+1):nth-last-child(-n+4), .post4b li:nth-child(4n+1):nth-last-child(-n+4) ~ li {
       margin-bottom: 0;
     }
   }
   /*----------------------------------------------*/
   @media print, screen and (min-width: 800px) {
     .post2b li {
       width: 48%;
     }
     .post2b li:nth-child(2n+1):nth-last-child(-n+2), .post2b li:nth-child(2n+1):nth-last-child(-n+2) ~ li {
       margin-bottom: 0;
     }
   }
   /*---------------------------------------------*/
   ul.post > li {
     margin-bottom: 30px;
   }
   ul.post > li .post_text70 {
     position: relative;
     padding-bottom: 30px;
   }
   @media print, screen and (min-width: 800px) {
     .post .post_img, .post_text70 {
       margin: 0;
     }
     .post .post_img {
       width: 30%;
     }
     .post_text70 {
       width: 65%;
     }
   }
   @media print, screen and (max-width: 799px) {
     .post .post_img {
       max-width: 300px;
       text-align: center;
       margin: 0 auto;
     }
   }
   /*----------------------------------------------*/
   #front_top_content, #front_bottom_content {
     padding: min(calc(100px + (1vw - 1.92rem) * 1.9417), 100px) 0; /* 100-70px (1920-375) */
   }
   .front_post_list {
     width: 90%;
     max-width: var(--content-max-width);
     margin: auto;
   }
   /*---------------------------------------------*/
   .dateLabel {
     padding-top: 10px;
     margin-bottom: 30px;
     border-top: 1px solid #ccc;
   }
   .pagenav {
     margin: 70px 0 0;
   }
   .single-post h1.title {
     font-size: min(calc(2.5rem + (1vw - 19.2px) * 0.4531), 2.5rem); /* 2.5-1.8rem (1920-375) */
     font-style: normal;
     margin: 0 auto 20px;
   }
   /*----------------------------------------------*/
   body.archive ul.post > li, body.archive ul.post2b > li, body.archive ul.post4b > li {
     margin-bottom: min(calc(30px + (1vw - 19.2px) * 0.6472), 30px); /* 30-20px (1920-375) */
   }
   body.archive li .post_contents {
     margin-top: 1rem;
   }
   body.archive .postlist li {
     margin-bottom: 0;
   }
   .dateLabel {
     padding-top: 10px;
     margin-bottom: 30px;
     border-top: 1px solid #ccc;
   }
   .pagenav {
     margin: 70px 0 0;
   }
   /*----------*/
   .single-post h1.title {
     font-size: min(calc(2.5rem + (1vw - 19.2px) * 0.4531), 2.5rem); /* 2.5-1.8rem (1920-375) */
     font-style: normal;
     margin: 0 auto 20px;
   }
   /*------------------------------------------------------
   -----*/
   .post {
     margin: 0 auto;
     padding: 0;
   }
   #full-wrapper .post {
     margin: 0 auto;
   }
   #wrapper, .inner {
     width: 100%;
     max-width: var(--content-max-width);
   }
   body:not(.home) #wrapper {
     width: 90%;
   }
   #content, body:not(.home) #content.wide {
     padding: min(calc(100px + (1vw - 19.2px) * 3.2362), 100px) 0 min(calc(180px + (1vw - 19.2px) * 3.8835), 180px); /* 100-50px180-120px (1920-375) */
     margin: 0 auto;
   }
   #content.wide {
     width: 100%;
   }
   body:not(.home) #content.wide {
     width: 100%;
   }
   @media print, screen and (max-width: 1023px) {
     #content, #content.wide {
       width: 90%;
     }
   }
   /*----------------------------------------------*/
   #thumbImg, header#h1Header {
     position: relative;
     overflow: hidden;
     height: 300px;
     z-index: -1;
   }
   #thumbImg::before, header#h1Header::before {
     content: '';
     position: absolute;
     width: 100%;
     height: 100%;
     /* background: #000; */
     opacity: .2;
     top: 0;
     left: 0;
     z-index: 1;
   }
   #thumbImg img, header#h1Header img {
     position: absolute;
     width: auto;
     height: 100%;
     top: 0;
     left: 50%;
     -webkit-transform: translateX(-50%);
     transform: translateX(-50%);
   }
   @media print, screen and (min-width: 1921px) {
     #thumbImg img, header#h1Header img {
       width: 100%;
       height: auto;
     }
   }
   @media print, screen and (max-width: 1024px) {
     #h1Header #thumb img {
       height: 100%;
       margin: auto;
     }
     #thumbImg, header#h1Header {
       height: calc(300px + (1vw - 10.24px) * 9.2450); /* 300-150px (1920-375) */
     }
   }
   /*---------------------------------------------*/
   #breadcrumb {
     padding: 12px 0;
   }
   #breadcrumb ul {
     width: 98%;
     max-width: var(--content-max-width);
     display: flex;
     flex-direction: row;
     flex-wrap: wrap;
     justify-content: flex-start;
     padding: 0;
   }
   #breadcrumb ul li {
     float: none;
   }
   #breadcrumb ul li:first-child {
     margin-left: 0;
   }
   @media print, screen and (max-width: 640px) {
     #breadcrumb ul {
       max-width: 100%;
     }
   }
   /*----------------------------------------------*/
   .page_contents_inner + .page_contents_inner {
     margin-top: min(calc(150px + (1vw - 19.2px) * 3.2362), 150px); /* 150-100px (1920-375) */
   }
   .fw_contents {
     margin-top: max(calc(-100px + (1vw - 19.2px) * -3.2362), -100px); /* 100-50px (1920-375) */
     margin-bottom: max(calc(-180px + (1vw - 19.2px) * -3.8835), -180px); /* 180-120px (1920-375) */
   }
   .fw_contents .page_contents_inner {
     margin-right: calc(((100vw - 100%) / 2) * -1);
     margin-left: calc(((100vw - 100%) / 2) * -1);
     padding: min(calc(120px + (1vw - 19.2px) * 2.5890), 120px) calc((100vw - 100%) / 2) min(calc(150px + (1vw - 19.2px) * 3.2362), 150px); /* 120-80px 150-100px (1920-375) */
     margin-top: 0;
   }
   .fw_contents .page_contents_inner:nth-child(even) {
     background: #fafafa;
   }
   /*----------------------------------------------*/
   .wpcf7-form {
     padding: 0;
   }
   span.wpcf7-list-item {
     margin: 0 10px 0 0;
   }
   .wpcf7-form .must, .wpcf7-form .option {
     font-size: 75%;
   }
   .wpcf7-form .must {
     background: #df2a4a;
   }
   /*------------------------------------------
  --------------------------------------------*/
   .post p {
     padding-bottom: 0;
     line-height: 1.8;
   }
   .l_space p:not(:last-child) {
     margin-bottom: 1.4em;
   }
   .note, .inlinenote {
     font-size: min(calc(1.2rem + (1vw - 19.2px) * 0.1294), 1.2rem); /* 1.2-1rem (1920-375) */
   }
   .note {
     display: block;
   }
   .primary {
     color: var(--color-primary);
   }
   .primary_shade {
     color: var(--color-primary-shade);
   }
   .primary_tint {
     color: var(--color-primary-tint);
   }
   .attention {
     color: var(--color-secondary);
   }
   .nowrap {
     display: inline-block;
   }
   .txt_l, .post .txt_l {
     text-align: left;
   }
   .txt_r, .post .txt_r {
     text-align: right;
   }
   .txt_c, .post .txt_c {
     text-align: center;
   }
   /*----------------------------------------------*/
   .linkBtn, .post .linkBtn, a.linkBtn {
      display: inline-block;
      text-align: center;
      font-weight: 600;
      color: var(--color-background);
      padding: 10px 25px;
      border: solid 2px var(--color-primary);
      background: var(--color-primary);
      min-width: 230px;
      box-sizing: border-box;
      cursor: pointer;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      transition: all .3s;
      -webkit-transition: all 0.3s;
      position: relative;
   }
   .linkBtn a {
     color: #fff;
   }
   .linkBtn:hover, .post .linkBtn:hover, a.linkBtn:hover {
    background-color: var(--header-color-primary-shade);
    border: solid 2px var(--header-color-primary-shade);
   }
   .linkBtn input[type="submit"], .post .linkBtn input[type="submit"] {
     background: none;
     padding: inherit;
   }
 
   div.wpcf7 .ajax-loader {
     display: none;
   }
   .post .linkBtn input[type="submit"] {
     display: block;
     width: 100%;
     text-align: center;
     margin: 0 auto;
     padding: 1rem 0 0 0;
   }
   @media only screen and (max-width: 640px) {
     .linkBtn, .post .linkBtn {
       display: block;
       text-align: center;
     }
   }
   /*----------------------------------------------*/
   .post ul {
     margin: 0;
   }
   .post li {
     line-height: 2;
     margin-bottom: 0;
     border-bottom: 0;
   }
   .post ol, .post ul.list_disc {
     margin: 0 0 0 1.2em;
   }
   .post ol:first-child {
     margin-top: 0;
   }
   .post ol:last-child, .post li:last-child {
     margin-bottom: 0;
   }
   .post li ol li.list_decimal {
     list-style: decimal;
     margin-left: 0;
   }
   .post ul.list_disc {
     list-style: disc;
   }
   .post ul.list_point > li, .post ul.list_check > li, .post ul.caution > li {
     position: relative;
     list-style: none;
     padding-left: 1.2em;
     margin-left: 0;
   }
   .post ul.list_point > li:before, .post ul.list_check > li:before, .post ul.caution > li:before {
     position: absolute;
     font-family: 'FontAwesome';
     font-weight: 400;
     left: 0;
   }
   .post ul.list_point > li:before, .post ul li.list_point:before {
     content: "\f087";
   }
   .post ul.list_check > li:before, .post ul li.list-check:before {
     content: "\f00c";
   }
   .post ul.caution > li::before, .post ul li.caution::before {
      content: "ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â»";
   }
   /*--liststyle reset-----*/
   .post li.list_none, .post ol li.list_none, .post ul li.list_none {
     list-style: none !important;
     margin-left: 0 !important;
     padding-left: 0 !important;
   }
   .post li.list_none:before, .post ol li.list_none:before, .post ul li.list_none:before {
     content: none !important
   }
   /*----------------------------------------------*/
   .post table, .post table th, .post table td {
     border-width: 1px;
      border-color: var(--color-table-border);
   }
   .post table {
     /* margin: min(calc(30px + (1vw - 19.2px) * 0.6472), 30px) auto; */
   }
   .post table th, .post table td {
     padding: min(calc(10px + (1vw - 19.2px) * 0.3236), 10px) min(calc(15px + (1vw - 19.2px) * 0.4531), 15px);
   }
   .post table th {
     width: 25%;
     color: var(--color-font);
     font-weight: 600;
     background: var(--header-color-primary-shade);
   }
   .post table td {
     color: var(--color-font);
     background: #fff;
   }
   .post table:first-child {
     margin-top: 0;
   }
   .post table:last-child {
     margin-bottom: 0;
   }
   @media screen and (max-width: 1024px) {
     .table_scroll {
       width: 100%;
       overflow-y: hidden;
       overflow-x: auto;
       -ms-overflow-style: -ms-autohiding-scrollbar;
       -webkit-overflow-scrolling: touch;
     }
     .table_scroll table {
       table-layout: auto;
       width: 800px;
     }
     .post table.responsive th, .post table.responsive td {
       text-align: left;
     }
   }
   /*--img--------------------------------------------*/
   .post img {
     padding: 0;
     border: none;
     vertical-align: bottom;
   }
   .post img.aligncenter {
     margin: 0 auto;
   }
   .aspect_img {
     position: relative;
     overflow: hidden;
   }
   .aspect_img::before {
     content: '';
     display: block;
     padding-top: 66.7%;
   }
   .aspect_img img {
     position: absolute;
     width: 100%;
     height: 100%;
     max-width: none;
     object-fit: cover;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -50%);
   }
   /*--gallery--------------------------------------------*/
   .gallery {
     display: -webkit-box !important;
     display: -ms-flexbox !important;
     display: flex !important;
     -webkit-box-orient: horizontal !important;
     -webkit-box-direction: normal !important;
     -ms-flex-direction: row !important;
     flex-direction: row !important;
     -ms-flex-wrap: wrap !important;
     flex-wrap: wrap !important;
     -webkit-box-pack: justify !important;
     -ms-flex-pack: justify !important;
     justify-content: space-between !important;
     margin: min(calc(50px + (1vw - 19.2px) * 1.2945), 50px) auto !important; /* 50-30px (1920-375) */
   }
   .gallery > br {
     display: none !important;
   }
   .gallery > *:last-child {
     display: block;
   }
   .gallery:first-child, .gallery:nth-child(2) {
     margin-top: 0 !important;
   }
   .gallery:last-child {
     margin-bottom: 0 !important;
   }
   .gallery-item {
     float: none !important;
     line-height: 0;
     margin-top: 0 !important;
     margin-bottom: min(calc(20px + (1vw - 19.2px) * 0.7819), 20px); /* 20-8px (1920-375) */
   }
   .gallery-caption {
     font-size: min(calc(1.4rem + (1vw - 19.2px) * 0.1294), 1.4rem); /* 1.4-1.2rem (1920-375) */
     line-height: 1.6;
     text-align: center;
     margin: .5em auto !important;
     padding: 0 !important;
   }
   .gallery-columns-2 .gallery-item {
     width: calc(100% / 2) !important;
   }
   .gallery-columns-3 .gallery-item {
     width: calc(100% / 3) !important;
   }
   .gallery-columns-4 .gallery-item {
     width: calc(100% / 4) !important;
   }
   .gallery-columns-5 .gallery-item {
     width: calc(100% / 5) !important;
   }
   .gallery-columns-6 .gallery-item {
     width: calc(100% / 6) !important;
   }
   .gallery-columns-1 .gallery-item img, .gallery-columns-2 .gallery-item img, .gallery-columns-3 .gallery-item img, .gallery-columns-4 .gallery-item img, .gallery-columns-5 .gallery-item img, .gallery-columns-6 .gallery-item img {
     max-width: 95%;
   }
   @media print, screen and (min-width: 641px) {
     .gallery-columns-3 .gallery-item:nth-of-type(3n+2):last-of-type {
       margin-right: calc((100% / 3) + (((100% - ((100% / 3) * 3)) / 2) * 1)) !important;
     }
     .gallery-columns-4 .gallery-item:nth-of-type(4n+2):last-of-type {
       margin-right: calc(((100% / 4) * 2) + (((100% - ((100% / 4) * 4)) / 3) * 2)) !important;
     }
     .gallery-columns-4 .gallery-item:nth-of-type(4n+3):last-of-type {
       margin-right: calc(((100% / 4) * 1) + (((100% - ((100% / 4) * 4)) / 3) * 1)) !important;
     }
     .gallery-columns-5 .gallery-item:nth-of-type(5n+2):last-of-type {
       margin-right: calc(((100% / 5) * 3) + (((100% - ((100% / 5) * 5)) / 4) * 3)) !important;
     }
     .gallery-columns-5 .gallery-item:nth-of-type(5n+3):last-of-type {
       margin-right: calc(((100% / 5) * 2) + (((100% - ((100% / 5) * 5)) / 4) * 2)) !important;
     }
     .gallery-columns-5 .gallery-item:nth-of-type(5n+4):last-of-type {
       margin-right: calc(((100% / 5) * 1) + (((100% - ((100% / 5) * 5)) / 4) * 1)) !important;
     }
     .gallery-columns-6 .gallery-item:nth-of-type(6n+2):last-of-type {
       margin-right: calc(((100% / 6) * 4) + (((100% - ((100% / 6) * 6)) / 5) * 4)) !important;
     }
     .gallery-columns-6 .gallery-item:nth-of-type(6n+3):last-of-type {
       margin-right: calc(((100% / 6) * 3) + (((100% - ((100% / 6) * 6)) / 5) * 3)) !important;
     }
     .gallery-columns-6 .gallery-item:nth-of-type(6n+4):last-of-type {
       margin-right: calc(((100% / 6) * 2) + (((100% - ((100% / 6) * 6)) / 5) * 2)) !important;
     }
     .gallery-columns-6 .gallery-item:nth-of-type(6n+5):last-of-type {
       margin-right: calc(((100% / 6) * 1) + (((100% - ((100% / 6) * 6)) / 4) * 1)) !important;
     }
   }
   @media print, screen and (max-width: 1023px) and (min-width: 641px) {
     .gallery-columns-5 .gallery-item, .gallery-columns-6 .gallery-item {
       width: calc(100% / 3) !important;
     }
     .gallery-columns-5 .gallery-item:nth-of-type(3n+2):last-of-type, .gallery-columns-6 .gallery-item:nth-of-type(3n+2):last-of-type {
       margin-right: calc((100% / 3) + (((100% - ((100% / 3) * 3)) / 2) * 1)) !important;
     }
   }
   @media print, screen and (max-width: 640px) {
     .gallery-columns-2 .gallery-item, .gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item, .gallery-columns-5 .gallery-item, .gallery-columns-6 .gallery-item {
       width: calc(100% / 2) !important;
       margin-left: 0 !important;
       margin-right: 0 !important;
     }
     .gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item {
       margin-bottom: 10px;
     }
     .gallery-columns-1 .gallery-item img, .gallery-columns-2 .gallery-item img, .gallery-columns-3 .gallery-item img, .gallery-columns-4 .gallery-item img, .gallery-columns-5 .gallery-item img, .gallery-columns-6 .gallery-item img {
       max-width: 97%;
     }
   }
   /*--Google--------------------------------------------*/
   .googlemap {
     padding-bottom: 75%;
     /* margin: min(calc(50px + (1vw - 19.2px) * 1.6181), 50px) auto; */ /* 50-30px (1920-375) */
   }
   .googlemap:first-child {
     margin-top: 0;
   }
   .googlemap:last-child {
     margin-bottom: 0;
   }
   @media print, screen and (max-width: 768px) {
     .googlemap {
       padding-bottom: 80%;
     }
   }
   /*--YOUTUBE------------------------------------------*/
   .youtubeArea {
     position: relative;
     overflow: hidden;
     margin: min(calc(50px + (1vw - 19.2px) * 1.2945), 50px) auto; /* 50-30px (1920-375) */
   }
   .youtubeArea::before {
     content: '';
     display: block;
     padding-top: 56.25%;
   }
   .youtubeArea > iframe {
     position: absolute;
     width: 100%;
     height: 100%;
     top: 0;
     left: 0;
   }
   .youtubeArea:first-child {
     margin-top: 0;
   }
   .youtubeArea:last-child {
     margin-bottom: 0;
   }

/*
------------------------------------*/
.btn-wrapper {
	display: flex;
	justify-content: flex-end;
}

.btn-wrapper .btn {
	margin: 0 15px;
}

.btn {
	text-align: center;
	margin-top: 15px;
}

.btn a {
	display: inline-block;
	text-align: center;
	font-weight: 600;
	color: #fff;
	padding: 10px 25px;
	min-width: 230px;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	transition: all .3s;
	-webkit-transition: all 0.3s;
	position: relative; 
}

.btn a {
	-webkit-transform: skew(-15deg);
	transform: skew(-15deg);
	color: #fff;
	border-radius: 0;
	background: #5DC6CC;
}

.btn a:hover:before {
	top: -3px;
	background: #5DC6CC;
}

.btn a:hover:after {
	bottom: -3px;
	background: #5DC6CC;
}

.btn a:hover {
	-webkit-transform: skew(-5deg);
	transform: skew(-5deg);
	color: #fff;
}

@media screen and (max-width: 1024px) {
	.btn-wrapper {
		flex-direction: column;
	}

	.btn-wrapper .btn {
		margin: 0;
	}
}

   /*------------------------------------------------------
 ------------------------------------*/
   section.full_width {
     margin-left: calc(((100vw - 100%) / 2) * -1);
     margin-right: calc(((100vw - 100%) / 2) * -1);
     margin-bottom: 10px;
   }
 
   section.full_width .content {
     width: 90%;
     max-width: 0 auto;
   }
 
   section .content {
     max-width: var(--content-max-width);
     margin: 0 auto;
   }
 
   @media only screen and (max-width: 640px) {
     .wpcf7-form .wpcf7-list-item {
       display: inline-block;
     }
   }
 
   /*--header------------------------------------*/
   @media screen and (min-width: 1024px) {
 
     nav#mainNav ul li.current-menu-item a,
     nav#mainNav ul li a:hover,
     nav#mainNav ul li a:active,
     nav#mainNav ul li.current-menu-parent a,
     nav#mainNav ul li.current-menu-ancestor a {
       background: none;
     }
     nav#mainNav ul li.current-menu-item a b::before, nav#mainNav ul li a:hover::before {
       content: "";
       position: absolute;
       left: 0;
       right: 0;
       bottom: 10px;
       border-bottom: 2px solid var(--color-font);
       width: 80%;
       width: -webkit-calc(100% - 45%);
       width: calc(100% - 45%);
       margin: 0 auto;
       display: block;
       height: 4px;
     }
 
     #header .contact .tel {
       color: #fff;
     }
 
     #header .contact .mail {
       margin-top: 5px;
     }
   }
   /*--btn------------------------------------*/
 
   .btn {
     /* margin-top: 65px; */
   }
 
   .btn a {
     display: inline-block;
     text-align: center;
     font-weight: 600;
     color: var(--color-background);
     padding: 10px 25px;
     border: 2px solid var(--header-color-primary-shade);
     background: var(--color-font);
     min-width: 230px;
     box-sizing: border-box;
     cursor: pointer;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
     transition: all .3s;
     -webkit-transition: all 0.3s;
     position: relative;
   }
 
 
   .btn a:hover {
     /* background-color:transparent; */
     color: var(--color-background);
   }
 
   @media screen and (max-width: 768px) {
     .btn {
       margin-top: 10px;
       text-align: center;
     }
   }
 
 .wpcf7-spinner {
     display: none;
 }
 
 .icon img {
     width:50%;
 }

.sub-title {
	display: block;
	color: var(--color-background);
	font-size: 60%;
}

 
 /*top*/
 
.top01,
.top02,
.top03 {
	margin-left: calc(((100vw - 100%) / 2) * -1);
	margin-right: calc(((100vw - 100%) / 2) * -1);
	position: relative;
}

.top01 { padding: 80px 0; }

.top01::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translatey(-50%);
	clip-path: polygon(32% 0, 100% 0, 100% 100%, 0% 100%);
	background-color: #ffffff;
	background: repeating-linear-gradient( -45deg, #CCCCCC, #CCCCCC 2px, #ffffff 2px, #ffffff 10px );
	width: 100%;
	height: 100%;
	opacity: .6;
	z-index: -1;
}

.top01 .content {
	max-width: 90%;
	background-color: var(--header-color-primary-shade);
	padding: 50px;
	margin: auto auto auto 0;
	box-sizing: border-box;
}

.top01 { align-items: center; }

.top01 .w60 h2,
.top01 .w60 p {
	color: var(--color-font);
	padding-left: 0;
	border-left: none;
}

.top01 .btn {text-align: left;}

.top02 {
	padding: 100px 0;
}

.top02::before {
	content: "";
	position: absolute;
	top: 40px;
	left: 25vw;
	background: url(/wp-content/uploads/ohashi_logo.png) no-repeat center /contain;
	width: calc(500 / 1920 * 150vw);
	height: calc(500 / 1920 * 150vw);
	opacity: .6;
	z-index: -1;
}

.top02::after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	background-color: #ffffff;
	opacity: 0.4;
	background: repeating-linear-gradient( 45deg, #cccccc, #cccccc 2px, #ffffff 2px, #ffffff 10px );
	width: calc(1620 / 1920 * 100vw);
	height: calc(450 / 1920 * 100vh);
	opacity: .6;
	z-index: -1;
}

.top02 .w30 {
	position: relative;
}

.top02 .w30 .inner-txt a {
	display: block;
	position: absolute;
	bottom: -40px;
	right: -20px;
	padding: 35px 80px;
	background-color: var(--header-color-primary-shade);
	box-shadow: rgba(50, 50, 93, 0.1) 0px 2px 5px -1px, rgba(0, 0, 0, 0.15) 0px 1px 3px -1px;
	box-sizing: border-box;
}

.top02 .w30 .inner-txt h3{padding-left: 0;}

.top02 .w30 .inner-txt a h3 {color: var(--color-font);text-align: center;padding-bottom: 0;margin: 0;}

.top03 .flexbox {
	align-items: center;
	margin: 0;
}

.top03 .w40.first-block {
	padding: 0 5% 0 10%;
	box-sizing: border-box;
}
.top03 .w40.last-block {
	padding: 0 10% 0 5%;
	box-sizing: border-box;
}
.top03 img.sp_none { display: block; }
.top03 img.pc_none { display: none; }

.top03 h2{color: var(--color-primary-tint);margin-left: 0;padding-left: 0;border-left: none;font-size: 300%;line-height: 1.2;}
.top03 p{
    color: var(--color-background);
}

.top03 .top_recruit {
	background-color: var(--color-font);
}

.top03 .top_recruit .w60 img{
   float:right;
   /* vertical-align: sub; */
}

.top03 .top_recruit h2 span.sub-title {
	color: var(--header-color-primary-shade);
}

.top03 .top_recruit p.btn { text-align: left; }

.top03 .top_recruit p.btn a {
	background: var(--header-color-primary-shade);
	color: var(--color-font);
}

.top03 .top_recruit p.btn a:hover:before {
	top: -3px;
	background: var(--header-color-primary-shade);
}

.top03 .top_recruit p.btn a:hover:after {
	bottom: -3px;
	background: var(--header-color-primary-shade);
}

.top03 .top_contact {
	flex-direction: row-reverse;
	background-color: var(--header-color-primary-shade);
}

.top03 .top_contact h2,
.top03 .top_contact p {text-align: right;color: var(--color-font);}


/*sp*/

@media screen and (max-width:1024px) {
   .top03 .w60{
      width:40%;
   }
   .top03 .w40{
      width:60%;
   }
}
@media screen and (max-width:768px) {
	.top01 { padding: 50px 0; }
	
	.top01 .content {
		width: 98%;
		padding: 30px;
	}

	.top01 .w60 p.btn { text-align: center; }

	.top02 {
		padding-left: 20px;
		padding-right: 20px;
		padding-bottom: 50px;
		box-sizing: border-box;
	}

	.top02::before {
		/* width: 100%; */
		/* height: calc(370 / 1024 * 100vh); */
	}

	.top02::after {
		width: 95%;
		height: 75%;
	}

	.top02 .w30 {
		padding-right: 20px;
		margin-bottom: 50px;
		box-sizing: border-box;
	}

	.top02 .w30 .inner-txt a {
		min-width: 60%;
		min-height: 35%;
		bottom: -40px;
		right: 0;
		padding: 20px 70px;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.top02 .w30 .inner-txt a h3 {
		font-size: calc(54 / 1100 * 100vw);
	}

   .top03 h2{
      padding-top:50px;
   }
   
   .top03 .top_recruit .w60 img{
      float:none;
   }

   .top03 img.pc_none { display:block; }
   .top03 img.sp_none { display:none; }

	.top03 .top_contact .w40 h2,
	.top03 .top_contact .w40 p { text-align: left; }

	.top03 .w40 p.btn {
		text-align: right;
	}
   .top03 .w60{
      width:100%;
   }
   .top03 .w40{
      width:100%;
   }
   .top03 .w40.first-block,
   .top03 .w40.last-block{
      padding: 0 5%;
   }
}

/*business*/
.business {
   margin-top: 100px;
}

/*company*/
.company01 {
    margin-left: calc(((100vw - 100%) / 2) * -1);
    margin-right: calc(((100vw - 100%) / 2) * -1);
    padding-bottom: 80px;
    position: relative;
}

.company01::before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 90%;
	background: var(--header-color-primary-shade);
	z-index: -1;
}

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


	.company01 h2 {
		margin-top: 160px;
	}

@media screen and (max-width: 768px) {
    .company01 h2{
        margin-top:0px;
    }
    .company01 .w50:last-child {
        padding: 10px;
    }
}

/*--cta-----------------------------*/
.cta {
         margin-top: 100px;
         background: url(/wp-content/uploads/cta.jpg) no-repeat;
         background-size: cover;
         position: relative;
         margin-right: calc(50% - 50vw);
         margin-left: calc(50% - 50vw);
         z-index: 1;
         padding: 50px 0;
}

.cta:before {
		position: absolute;
		content: "";
		background: rgba(254,254,254, 0.6);
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: -1;
		
	}

.cta .btn a {
	text-align: center;
}

 .cta .content {
     max-width: 800px;
 }
.cta h1.title{
   font-size: 125%;
   color: var(--footer-color-font);
   margin-bottom: 30px;
}
.cta .sub_ttl{
   text-align: center!important;
   font-size: 215%;
   color: var(--header-color-primary-shade);
}


.service {
	position: relative;
	padding-top: max(50px, min(10.91vw, 120px));
	padding-bottom: max(50px, min(10.91vw, 120px));
}

.service::before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 96.2%;
	height: 100%;
	z-index: -1;
	/* background: var(--header-color-primary-shade); */
}

.service::after {
	content: "";
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translatex(-50%);
	width: 72%;
	height: 30px;
}

@media screen and (max-width:768px) {
	
	.service::before {
		width: 100%;
		height: 100%;
	}

	.service::after {
		bottom: 10px;
		height: 20px;
	}
}