/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Template: astra
Author: Brainstorm Force
Author URI: https://wpastra.com/about/
Description: Astra is fast, fully customizable &amp; beautiful WordPress theme suitable for blog, personal portfolio, business website and WooCommerce storefront. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with Schema.org code integrated and is Native AMP ready so search engines will love your site. It offers special features and templates so it works perfectly with all page builders like Elementor, Beaver Builder, Visual Composer, SiteOrigin, Divi, etc. Some of the other features: # WooCommerce Ready # Responsive # RTL &amp; Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained &amp; Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and WooCommerce ready theme that you can use for building any kind of website!
Tags: custom-menu,custom-logo,entertainment,one-column,two-columns,left-sidebar,e-commerce,right-sidebar,custom-colors,editor-style,featured-images,full-width-template,microformats,post-formats,rtl-language-support,theme-options,threaded-comments,translation-ready,blog
Version: 3.5.0.1623910273
Updated: 2021-06-17 15:11:13

*/

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Sans", "Noto Sans CJK JP", "Original Yu Gothic", "Yu Gothic", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Sans Emoji";
  /* font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", "Lucida Grande", Verdana, sans-serif; */
  color: #443f3f;
  /* font-weight: 700; */
  font-size: 16px;
}
:root {
  --font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Sans", "Noto Sans CJK JP", "Original Yu Gothic", "Yu Gothic", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Sans Emoji";
  /* --font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", "Lucida Grande", Verdana, sans-serif; */
  --color: #443f3f;
  --font-size: 16px;
}
@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Original Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

.textlarge11 { font-size: 1.1em; }
.textlarge12 { font-size: 1.2em; }
.textlarge13 { font-size: 1.3em; }
.textlarge14 { font-size: 1.4em; }
.textlarge15 { font-size: 1.5em; }
.textlarge16 { font-size: 1.6em; }
.textlarge17 { font-size: 1.7em; }
.textlarge18 { font-size: 1.8em; }
.textlarge19 { font-size: 1.9em; }
.textlarge20 { font-size: 2em; }

.textshadow { text-shadow: 2px 3px 2px #443f3f; }

/* size------------------------------- */

.size_10px { font-size: 10px; }
.size_12px { font-size: 12px; }
.size_14px { font-size: 14px; }

.size_18px { font-size: 18px; }
.size_20px { font-size: 20px; }
.size_22px { font-size: 22px; }
.size_24px { font-size: 24px; }
.size_26px { font-size: 26px; }
.size_28px { font-size: 28px; }
.size_32px { font-size: 32px; }
.size_38px { font-size: 38px; }

:root {
  --size-10px: 10px;
  --size-12px: 12px;
  --size-14px: 14px;
  --size-18px: 18px;
  --size-20px: 20px;
  --size-22px: 22px;
  --size-24px: 24px;
  --size-26px: 26px;
  --size-28px: 28px;
  --size-32px: 32px;
  --size-38px: 38px;
}

/* Common------------------------------- */

p, .entry-content p {
  margin-bottom: .5em
}

a {
  color: #5B9BD5;
}

h1, h2, h3, h4, h5 {
  font-weight: 700 !important;
}

h1 {
  font-size: var(--size-32px);
}
.ast-single-post .entry-title, .page-title {
  font-size: var(--size-32px);
}

h2 {
  font-size: var(--size-26px);
}
.entry-content h2 {
  font-size: var(--size-26px);
}

h3 {
  font-size: var(--size-24px);
}

h4 {
  font-size: var(--size-22px);
}

h5 {
  font-size: var(--size-20px);
}

.flex_space-between {
  display: flex;
  justify-content: space-between;
}

.flex_space-around {
  display: flex;
  justify-content: space-around;
}

.align-center {
  text-align: center;
}

.circle_106px {
  width: 106px !important;
  height: 106px;
  border-radius: 50%;
  border: solid 3px #1CAF94;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  background-color: #fff;
}
.circle_106px div {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
}
.circle_106px p {
  margin-bottom: 0;
}

.white-filter::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(255,255,255,0.3);
}

.elementor-widget li.elementor-icon-list-item {
  align-items: flex-start;
}
.elementor-widget li.elementor-icon-list-item a {
  align-items: flex-start;
}
.elementor-widget li.elementor-icon-list-item .elementor-icon-list-icon {
  display: block;
}

.scrolldown01 {
  position: absolute;
  left:50%;
  height:50px;

}
.scrolldown01 span{
  position: absolute;
  left:-23px;
  top:5px;
  letter-spacing: 0.05em;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}
.scrolldown01::after{
  content: "";
  position: absolute;
  top: 0;
  width: 2px;
  height: 40px;
  background: var(--e-global-color-text);
  animation: scrolldown01_01 1.4s ease-in-out infinite;
  opacity:0;
}
.scrolldown01:before {
  content: "";
  position: absolute;
  right: -6px;
  top: 45px;
  width: 2px;
  height: 13px;
  background: var(--e-global-color-text);
  transform: skewX(-31deg);
  animation: scrolldown01_02 1.4s ease-in-out infinite;
  opacity:0;
}
@keyframes scrolldown01_01 {
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:40px;
    opacity: 1;
  }
  100%{
    height:0;
    top:50px;
    opacity: 0;
  }
}
@keyframes scrolldown01_02 {
  0%{
    opacity: 0;
  }
  60%{
    opacity: 1;
  }
  80%{
    opacity: 0;
  }
}

.scrolldown_box {
  height: 60px;
}
.scrolldown02 {
  position: absolute;
  left:50%;
  height:50px;
}
.scrolldown02 span{
  position: absolute;
  left: -23px;
  top: 5px;
  letter-spacing: 0.05em;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  color: #cdb026;
  font-weight: bold;
}
.scrolldown02::after{
  content: "";
  position: absolute;
  top: 0;
  width: 1.5px;
  height: 35px;
  background: #cdb026;
  animation: scrolldown02_01 1.4s ease-in-out infinite;
  opacity:0;
}
.scrolldown02:before {
  content: "";
  position: absolute;
  right: -5px;
  top: 38px;
  width: 1.5px;
  height: 10px;
  background: #cdb026;
  transform: skewX(-31deg);
  animation: scrolldown02_02 1.4s ease-in-out infinite;
  opacity:0;
}
@keyframes scrolldown02_01 {
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:35px;
    opacity: 1;
  }
  100%{
    height:0;
    top:40px;
    opacity: 0;
  }
}
@keyframes scrolldown02_02 {
  0%{
    opacity: 0;
  }
  60%{
    opacity: 1;
  }
  80%{
    opacity: 0;
  }
}

.elementor-widget li.elementor-icon-list-item a,
.elementor-widget li.elementor-icon-list-item .elementor-icon-list-icon {
	display: inline;
}

/* Header------------------------------- */

.ast-primary-header-bar {
  box-shadow: 0 2px 4px -1px rgb(0 0 0 / 20%), 0 2px 5px 0 rgb(0 0 0 / 14%), 0 1px 10px 0 rgb(0 0 0 / 12%);
}

.site-title a {
  font-family: "Yu Gothic", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Sans Emoji";
  font-weight: 700;
}

.ast-logo-title-inline .site-logo-img {
  padding-right: 0;
}

.site-logo-img::after {
  content: '-\30C6\30FC\30D6\30EB\30AA\30FC\30C0\30FC\304B\3093\305F\3093\5C0E\5165-';
  font-size: 22px;
  position: absolute;
  margin-top: 4px;
  font-weight: 700;
  margin-left: .5em;
}

.header-icon {
  text-align: center;
  line-height: 1;
}
.header-icon .elementor-icon-wrapper {
  line-height: 1;
}
.header-icon::after {
  font-size: var(--size-12px);
  color: #1CAF94;
}

.nav-design .elementor-menu-toggle {
  font-size: 34px;
}

.main-header-menu .menu-link, .main-header-menu>a {
  color: #1CAF94;
  font-weight: bold;
}

.ast-header-break-point .main-navigation ul .menu-item .menu-link {
  line-height: 4;
  font-weight: bold;
}

.main-header-menu .menu-link {
  padding: 0 .5em;
}

#ast-desktop-header li.menu-item-8779, #ast-desktop-header li.menu-item-8780 {
  display: none;
}
#ast-hf-mobile-menu li.menu-item-8779 a::before {
  font-family: 'FONT AWESOME 5 FREE';
  content: '\f015';
  font-weight: bold;
  padding-right: .5em;
}
#ast-hf-mobile-menu li.menu-item-8780 a::before {
  font-family: 'FONT AWESOME 5 FREE';
  content: '\f144';
  font-weight: bold;
  padding-right: .5em;
}
#ast-hf-mobile-menu li.menu-item-7868 a::before {
  font-family: 'FONT AWESOME 5 FREE';
  content: '\f2bd';
  font-weight: bold;
  padding-right: .5em;
}
#ast-hf-mobile-menu li.menu-item-56 a::before {
  font-family: 'FONT AWESOME 5 FREE';
  content: '\f015';
  font-weight: bold;
  padding-right: .5em;
}
#ast-hf-mobile-menu li.menu-item-7551 a::before {
  font-family: 'FONT AWESOME 5 FREE';
  content: '\f1c1';
  font-weight: bold;
  padding-right: .5em;
}
#ast-hf-mobile-menu li.menu-item-6818 a::before {
  font-family: 'FONT AWESOME 5 FREE';
  content: '\f2f6';
  font-weight: bold;
  padding-right: .5em;
}
#ast-hf-mobile-menu li.menu-item-3621 a::before {
  font-family: 'FONT AWESOME 5 FREE';
  content: '\f3fa';
  font-weight: bold;
  padding-right: .5em;
}
#ast-hf-mobile-menu li.menu-item-6713 a::before {
  font-family: 'FONT AWESOME 5 FREE';
  content: '\f1d8';
  font-weight: bold;
  padding-right: .5em;
}


/* Footer------------------------------- */

.site-below-footer-wrap[data-section="section-below-footer-builder"] {
  background-color: #3a4144;
  padding: 10px;
  min-height: 60px;
}

.footer-widget-area[data-section="section-footer-menu"] .astra-footer-horizontal-menu {
  justify-content: space-around;
}

.ast-footer-copyright {
  color: #fff;
}

.footer-logo {
  width: 60%;
  max-height: 50px;
}

.site-above-footer-wrap[data-section="section-above-footer-builder"] {
  background-color: #4d6068;
}

.site-footer a.menu-link, .site-footer .footer-company, .site-footer .footer-address {
  color: #fff;
}

.site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
  background-color: #4d6068;
  border-top: none;
  padding: 30px 0;
}

.footer-bar-navigation ul#astra-footer-menu {
  display: flex;
  flex-direction: row;
  line-height: 2;
}

/* Sidebar------------------------------- */

.ast-left-sidebar #secondary {
  margin-top: 0;
  margin-bottom: 0;
  padding: 30px 30px 15px 30px;
  background-color: #d7dee0;
  border-right: solid .5px #c4cfd3;
}

.sidebar-main {
  position: -webkit-sticky;
  position: sticky;
  top: 20px;
}

.ast-right-sidebar #secondary {
  margin-top: 0;
  margin-bottom: 0;
  padding: 30px 30px 15px 30px;
  background-color: #e8edef;
  border-left: solid 1px #9b9b9b;
}

.sidebar-main .widget-title {
  display: none;
}

.sidebar-main .widget a {
  color: #5b6268;
  border-radius: 40px;
  width: 100%;
  text-align: center;
  display: block;
  margin-bottom: 20px;
  background-color: #fff;
  padding: 8px;
  box-shadow: 0 2px 10px rgb(0 0 0 / 10%);
  font-weight: bold;
  text-decoration: none;
}
.sidebar-main .widget a:hover {
  background-color: #c1f5ee;
}

/* Single------------------------------- */

.ast-container {
  max-width: 100%;
  padding-right: 0;
  padding-left: 0;
}
.ast-separate-container #primary, .ast-separate-container.ast-left-sidebar #primary, .ast-separate-container.ast-right-sidebar #primary {
  margin: 0 !important;
}
.ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single {
  margin: 30px 0 60px;
  padding: 0 20px;
}

.entry-meta {
  color: #fff;
}
.entry-meta .cat-links a {
  border: solid 1px var(--ast-global-color-2);
  margin-top: 10px;
  display: inline-block;
  padding: 2px 0.5em;
  color: var(--ast-global-color-2);
  border-radius: 3px;
}
.entry-meta .published {
  color: var(--ast-global-color-2);
}

.single .post-navigation {
  display: none;
}

/* Page------------------------------- */

.ast-page-builder-template .entry-header {
  margin-top: 30px;
}

/* Home------------------------------- */

/*
.home .site-content {
  background-color: #fafafa;
}
*/

.home-navi {
  text-align: center;
  font-size: var(--size-18px);
  position: absolute;
  width: 100%;
  display: flex;
  justify-content: space-around;
  align-items: center;
  z-index: 3;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  background-color: rgba(255,255,255,0.95);
  height: 50px;
  border-bottom: solid 1px #B0B0B0;
}
.home-navi.fixed{
  position: fixed;
  top: 0;
  box-shadow: 0 2px 4px -1px rgb(0 0 0 / 20%), 0 2px 5px 0 rgb(0 0 0 / 14%), 0 1px 10px 0 rgb(0 0 0 / 12%);
  border-top: solid 1px #B0B0B0;
}
.home-navi a {
  height: 100%;
  padding-top: calc((50px - 1.6em) / 2);
  color: inherit;
}
.home-navi_01 {
  width: 16.67%;
}
.home-navi_02, .home-navi_03, .home-navi_04, .home-navi_05, .home-navi_06 {
  width: 16.666%;
}
.home-navi_01.focus, .home-navi_02.focus, .home-navi_03.focus, .home-navi_04.focus, .home-navi_05.focus, .home-navi_06.focus {
  border-bottom: 5px solid #1CAF94;
}

.top-img-content {
  text-align: center;
}
.top-img-frame {
  width: 300px;
}
.top-img {
  position: absolute;
  width: 300px;
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
}
.top-img-content .top-img-01 {
  -webkit-animation: fadeSlideImg01 9s ease-out infinite;
  animation: fadeSlideImg01 9s ease-out infinite;
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}
.top-img-content .top-img-02 {
  opacity: 0;
  -webkit-animation: fadeSlideImg02 9s ease-out infinite;
  animation: fadeSlideImg02 9s ease-out infinite;
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}
.top-img-content .top-img-03 {
  opacity: 0;
  -webkit-animation: fadeSlideImg03 9s ease-out infinite;
  animation: fadeSlideImg03 9s ease-out infinite;
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
}
@keyframes fadeSlideImg01 {
	0% {opacity: 1;}
	33% {opacity: 0;}
	66% {opacity: 1;}
	100% {opacity: 1;}
}
@keyframes fadeSlideImg02 {
	0% {opacity: 0;}
	16% {opacity: 1;}
	33% {opacity: 1;}
	66% {opacity: 0;}
	100% {opacity: 0;}
}
@keyframes fadeSlideImg03 {
	0% {opacity: 0;}
	33% {opacity: 0;}
	46% {opacity: 1;}
	66% {opacity: 1;}
	80% {opacity: 0;}
	100% {opacity: 0;}
}

.top-img-content_smp {
  text-align: center;
}
.top-img_smp {
  position: absolute;
  width: calc( 100vw - 60px );
  top: 0;
  right: 0;
  left: 0;
  margin: auto;
}
.top-img-content_smp .top-img_smp_01 {
  width: calc( 100vw - 60px );
}
.top-img-content_smp .top-img_smp_02 {
  opacity: 0;
  -webkit-animation: fadeSlideImg_smp_02 6s cubic-bezier(0.33, 1, 0.68, 1) infinite;
  animation: fadeSlideImg_smp_02 6s cubic-bezier(0.33, 1, 0.68, 1) infinite;
  -webkit-animation-delay: .1s;
  animation-delay: 1s;
}
.top-img-content_smp .top-img_smp_03 {
  opacity: 0;
  -webkit-animation: fadeSlideImg_smp_03 6s cubic-bezier(0.33, 1, 0.68, 1) infinite;
  animation: fadeSlideImg_smp_03 6s cubic-bezier(0.33, 1, 0.68, 1) infinite;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}
.top-img-content_smp .top-img_smp_04 {
  opacity: 0;
  -webkit-animation: fadeSlideImg_smp_04 6s cubic-bezier(0.33, 1, 0.68, 1) infinite;
  animation: fadeSlideImg_smp_04 6s cubic-bezier(0.33, 1, 0.68, 1) infinite;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}
@keyframes fadeSlideImg_smp_02 {
	0% {opacity: 0; transform: translateY(30px);}
  16% {opacity: 1;}
	20% {opacity: 1; transform: translateY(0);}
  80% {opacity: 1;}
	90% {opacity: 0;}
}
@keyframes fadeSlideImg_smp_03 {
	0% {opacity: 0;}
	20% {opacity: 0; transform: translateX(-30px);}
  36% {opacity: 1;}
  40% {opacity: 1; transform: translateY(0);}
  80% {opacity: 1;}
	90% {opacity: 0;}
}
@keyframes fadeSlideImg_smp_04 {
	0% {opacity: 0;}
  40% {opacity: 0; transform: translateX(30px);}
  56% {opacity: 1;}
  60% {opacity: 1; transform: translateY(0);}
  80% {opacity: 1;}
	90% {opacity: 0;}
}

.entry-button_mobile {
  position: -webkit-sticky !important;
  position: sticky !important;
  bottom: 10px;
}

.customtxt_01 {
    font-weight: bold;
    border: solid 3px #fff;
    color: #fff;
    border-radius: 20px;
    padding: 5px 1em;
}

.customtxt_02 {
    font-size: 2.8rem;
    font-weight: bold;
    color: #1CAF94;
	display: flex;
	align-items: center;
}

.customtxt_03 {
	display: flex;
    font-size: 1.5rem;
    background: #1CAF94;
    color: #fff;
    border-radius: 50%;
    width: 3.2em;
    height: 3.2em;
    line-height: 1;
    margin-right: .5em;
	align-items: center;
    justify-content: center;
}

.customtxt_04 {
    font-weight: bold;
    border: solid 1.5px #333;
    border-radius: 20px;
    padding: 5px .7em;
}

.customtxt_05 {
    font-size: 2rem;
    font-weight: bold;
    color: #1CAF94;
	display: flex;
	align-items: center;
}

.customtxt_06 {
    color: #fff;
    background: #1CAF94;
    border-radius: 50%;
    display: flex;
    width: 2.8em;
    height: 2.8em;
    line-height: 1;
    text-align: center;
    font-size: 1.3rem;
    align-items: center;
    justify-content: center;
    margin-right: .3em;
}

/* Home-Flex-Footer------------------------------- */

.home-footer {
  opacity: 0; /* 表示したい時は1 */
  position: fixed !important;
  padding: 5px 0;
  bottom: -120px; /* 表示したい時は0 */
  z-index: 3;
  width: 100%;
  text-align: center;
  background-color: rgba(255,255,255,0.7);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  box-shadow: 0 -3px 5px rgb(0 0 0 / 5%);
  border-top: 1px solid #e4e4e4;
  transition: all 1s;
}
.home-footer.block {
  bottom: 0;
  opacity: 1;
}
.fixed-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.footer-entry-button {
  width: 50%;
  border: 3px solid #ee695d;
  border-radius: 6px;
  background-color: #ee695d;
  color: #fff;
  margin: 10px 10px;
  padding: 10px;
  font-weight: 700;
}
button.footer-entry-button:hover, a.footer-entry-button:hover, a.footer-entry-button:focus {
  background-color: #ee695d;
  border-color: #ee695d;
  color: #fff;
  opacity: .6;
}
.footer-demo-button {
  width: 25%;
  border: 3px solid #ee695d;
  border-radius: 6px;
  background-color: #fff;
  color: #ee695d;
  margin: 10px 10px;
  padding: 10px;
  font-weight: 700;
}
button.footer-demo-button:hover, a.footer-demo-button:hover ,a.footer-demo-button:focus {
  background-color: #fff;
  border-color: #ee695d;
  color: #ee695d;
  opacity: .6;
}

.fixed-footer_l {
  width: 50%;
  padding: 5px;
}
.fixed-footer_r {
  width: 50%;
  padding: 5px;
}
.fixed-footer_r_l {
  width: 50%;
  padding-right: 5px;
}
.fixed-footer_r_r {
  width: 50%;
  padding-left: 5px;
}
.footer-entry-button.mobile {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0;
  height: 4rem;
  font-size: 1.4em;
  border-width: 2px;
  line-height: 1.2;
  padding: 0;
  font-weight: 700;
  color: #fff;
}
.footer-entry-button.mobile i {
  font-size: 1.8em;
  margin-right: 10px;
}
.footer-demo-button.mobile {
  width: 100%;
  margin: 0;
  height: 4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0;
  font-size: .9em;
  border-width: 2px;
  color: #ee695d;
  font-weight: 700;
}
.footer-demo-button.mobile i {
  font-size: 2em;
  padding-right: 5px;
}

/* Manual------------------------------- */

.parent-pageid-789.ast-page-builder-template .entry-header {
  margin: 0;
  padding: 0;
  background-image: url(https://cloudmenu.co.jp/wp-content/uploads/2021/04/39250b121701dd2538e4f7c61a02294e-scaled.jpg);
  background-position: center center;
  background-size: cover;
  text-align: center;
}
.parent-pageid-789.ast-single-post .entry-title {
  background-color: rgba(0,0,0,0.4);
  padding: 50px 20px;
  color: #fff;
}

/* Manual-Sidebar------------------------------- */

ul.manual-list li a {
  font-size: var(--size-18px);
  line-height: 2.2;
  color: #5d656a;
  font-weight: 700;
}
ul.manual-list li i {
  margin-right: .5em;
}
ul.manual-list li a:hover {
  color: #5B9BD5;
}

.page-id-789.ast-left-sidebar #secondary, .parent-pageid-789.ast-left-sidebar #secondary {
  padding-top: 20px;
}
.parent-pageid-789.ast-left-sidebar #secondary {
  background-color: #CDF5F0;
}
.page-id-789.ast-left-sidebar #secondary .sidebar-main .widget a, .parent-pageid-789.ast-left-sidebar #secondary .sidebar-main .widget a {
  border-radius: 3px;
  margin-bottom: 1em;
  padding: 3px;
  font-size: .8em;
}
.page-id-789.ast-left-sidebar #secondary .sidebar-main .widget a:hover, .parent-pageid-789.ast-left-sidebar #secondary .sidebar-main .widget a:hover {
  background-color: #fada4b;
  color: #5b6268;
}

/* Contact-Form------------------------------- */

input[type="submit"].wpcf7-submit {
  width: 100%;
  font-weight: bold;
  padding: 15px;
  font-size: 1.2em;
}

.wpcf7 input:not([type=submit]), .wpcf7 select, .wpcf7 textarea {
  margin-top: 10px;
}

.wpcf7-form .must {
  background-color: #1CAF94;
  color: #fff;
  font-size: .7em;
  border-radius: 2px;
  padding: .3em .5em;
  margin-left: .5em;
}

.wpcf7 form>div, .wpcf7 form>p {
  margin-bottom: 5px;
  font-weight: bold;
  font-size: 1.2em;
}

input[type=email]::placeholder, input[type=number]::placeholder, input[type=password]::placeholder, input[type=reset]::placeholder, input[type=search]::placeholder, input[type=tel]::placeholder, input[type=text]::placeholder, input[type=url]::placeholder {
  color: #c2c2c2;
}

.wpcf7 input:not([type=submit]), .wpcf7 select, .wpcf7 textarea {
  margin-bottom: 20px;
}

.recaptcha-policy {
  background-color: #eee;
  font-weight: 400 !important;
  padding: 10px;
  color: #808080;
}

.grecaptcha-badge { visibility: hidden; }
.recaptcha-box {
  height: 60px;
  width: 260px;
  display: flex;
  box-shadow: grey 0px 0px 5px;
  border-radius: 2px;
  background-color: #4a90e2;
}
.recaptcha-logo {
  width: 70px;
  display: flex;
  justify-content: center;
  padding-top: 5px;
  background: #f9f9f9;
}
.recaptcha-logo-img {
  background: url(https://www.gstatic.com/recaptcha/api2/logo_48.png);
  background-repeat: no-repeat;
  width: 50px;
}
.recaptcha-text {
  color: #fff;
  padding: 5px .5em;
  font-weight: 400 !important;
  line-height: 1.2;
  font-size: 14px;
}
.recaptcha-text a {
  font-size: 11px;
  color: #fff;
}

/* text-design------------------------------- */

.text-design_01 {
  color: #fff;
  border: solid 2px #fff;
  border-radius: 5px;
  padding: 5px 1em;
  font-size: 22px;
}
.text-design_01_v3 {
  color: #fff;
  border: solid 3px #fff;
  border-radius: 5px;
  padding: 5px 1em;
  font-size: 19px;
  font-weight: bold;
}

.text-design_02 {
  color: #fff;
  font-size: 40px;
  font-weight: bold;
  text-shadow: 2px 3px 2px #443f3f;
}
.text-design_02_v3 {
  color: #fff;
  font-size: 36px;
  font-weight: bold;
  text-shadow: 2px 3px 2px #443f3f;
}

p.text-design_03 {
  font-size: var(--size-20px);
  text-align: center;
  font-weight: bold;
  margin-bottom: 25px;
}

.text-design_04 {
  border: solid 2px #443F3F;
  font-size: 22px;
  padding: 5px .5em;
  border-radius: 5px;
  margin-right: 20px;
  font-weight: bold;
  background-color: #fff;
}

.text-design_05 {
  display: flex;
  align-items: center !important;
  color: #1caf94;
  font-size: var(--size-28px);
  justify-content: center !important;
}
.text-design_05 p {
  margin: 0 1em;
}
.text-design_05::before {
  border-top: 4px solid #1caf94;
  content: "";
  width: 70px;
}
.text-design_05::after {
  border-top: 4px solid #1caf94;
  content: "";
  width: 70px;
}

.text-design_06 {
  text-align: center;
  font-size: var(--size-38px);
  font-weight: bold;
  margin-bottom: 0;
}

.text-design_07::before {
  font-family: 'Font Awesome 5 Free';
  content: '\f14a';
  margin-right: .6em;
}

.text-design_08::before {
  font-family: 'Font Awesome 5 Free';
  font-weight: 700;
  content: '\f00d';
  margin-right: .6em;
}

.text-design_09 {
  font-size: var(--size-20px);
  border-bottom: dotted 3px #696969;
  padding-bottom: 5px;
  font-weight: bold;
}

.text-design_10 {
  background: linear-gradient(transparent 70%, #c1f5ee 30%);
}

/* title-design------------------------------- */

.title-design_01 h1, .title-design_01 h2 {
  position: relative;
  padding-bottom: 1.5rem;
  text-align: center;
  font-size: 36px;
  line-height: 1.5;
}
.title-design_01 h1::after, .title-design_01 h2::after {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 100px);
  width: 200px;
  height: 5px;
  content: '';
  border-radius: 3px;
  background: #1caf94;
}

.title-design_02 {
  background-color: #C1F5EE;
  margin-right: 10%;
}
.title-design_02 h3 {
  color: #1CAF94;
  font-size: 28px;
  padding: 15px 15px;
}
.title-design_02_v3 {
  background-color: #C1F5EE;
}
.title-design_02_v3 h3 {
  color: #106B6B;
  font-size: 28px;
  padding: 20px 15px;
  text-align: center;
}

.title-design_03 {
  display: flex;
  align-items: center;
}
.title-design_03::after {
  content: "";
  height: 2px;
  flex-grow: 1;
  background-color: var(--color);
  margin-left: 1em;
  margin-right: 20px;
  margin-top: auto;
  margin-bottom: auto;
}

.title-design_04 {
  border-radius: 20px 20px 0 0;
  padding: 20px;
  text-align: center;
  color: #fff;
  margin: 0;
  margin: -15px -15px 0;
}
.entry-content h3.title-design_04 {
  color: #fff;
  margin-bottom: 0px;
}

.title-design_05 h2 {
  background-color: #C1F5EE;
  border-left: solid 6px #1CAF94;
  padding: 0.4em;
  font-size: var(--size-22px);
}

.title-design_06 {
  display: flex;
  align-items: center;
}
.title-design_06::after {
  content: "";
  height: 2px;
  flex-grow: 1;
  background-color: #1CAF94;
  margin-left: 1em;
  margin-top: auto;
  margin-bottom: auto;
}
.title-design_06 h3 {
  font-size: var(--size-20px);
}

.title-design_07 h2 {
  position: relative;
  padding: 1rem .5rem;
  margin-top: 20px !important;
}
.title-design_07 h2::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 6px;
  content: '';
  border-radius: 3px;
  background-image: -webkit-gradient(linear, right top, left top, from(#2af598), to(#009efd));
  background-image: -webkit-linear-gradient(right, #2af598 0%, #009efd 100%);
  background-image: linear-gradient(to left, #2af598 0%, #009efd 100%);
}

/* button-design------------------------------- */

.button-design_01 a {
  width: 100%;
}

.button-design_02 a {}

/* box-design------------------------------- */

.box-design_01-04 {
  font-size: 17px;
  font-weight: bold;
}
.box-design_01-04 img {
  max-height: 200px;
  width: auto;
}
.box-design_01-04 .flexbox_01-l {
  height: 80px;
}
.box-design_01-04 .flexbox_01-r {
  padding-top: 15px;
}

.box-design_01::before, .box-design_02::before, .box-design_03::before, .box-design_04::before {
  background-color: #1caf94;
  border-radius: 50%;
  position: absolute;
  top: 25px;
  left: 25px;
  z-index: 1;
  width: 35px;
  height: 35px;
  text-align: center;
  color: #fff;
  font-size: 22px;
  font-weight: bold;
}
.box-design_01::before {
  content: '1';
}
.box-design_02::before {
  content: '2';
}
.box-design_03::before {
  content: '3';
}
.box-design_04::before {
  content: '4';
}

.box-design_05 {
  position: relative;
  background: #f3f3f3;
  border-radius: 10px;
  padding: 30px;
}
.box-design_05::before {
  top: -20px;
  left: 30%;
  border-right: 28px solid #f3f3f3;
  border-top: 20px solid transparent;
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
}

.box-design_06 {
  padding: 40px 10px;
  border-bottom: solid 2px #ccc;
}

.box-design_07 {
  border-radius: 10px;
  width: 90%;
  text-align: center;
  font-weight: bold;
  font-size: var(--size-18px);
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
}
.box-design_07 i {
  font-size: 3em;
}

.box-design_09 {
  padding: 35px 10px;
  font-size: var(--size-20px);
}

.box-design_10 {
  position: relative;
  padding: 10px;
  border-radius: 20px;
  border: solid 2px #333;
  margin-left: 38px;
  font-size: 20px;
  background-color: #fff;
}
.box-design_10 p {
  margin-bottom: 0;
}
.box-design_10::before {
  content: "";
  position: absolute;
  left: -38px;
  width: 13px;
  height: 12px;
  top: 20px;
  border: solid 2px #333;
  border-radius: 50%;
  background: #fff;
}
.box-design_10::after {
  content: "";
  position: absolute;
  left: -24px;
  width: 20px;
  height: 18px;
  top: 20px;
  border: solid 2px #333;
  border-radius: 50%;
  background: #fff;
}

.box-design_11 {
  background-color: #fff;
  border-radius: 15px;
  height: 13.5em;
  padding: 15px;
  color: var(--color);
  box-shadow: 0 7px 0 rgba(67, 225, 202, 0.5);
  font-size: var(--size-20px);
  margin-bottom: 6px;
  transition: all .2s ease;
}
.box-design_11 p {
  font-size: var(--size-24px);
  color: #1CAF94;
  text-align: center;
  margin-top: .5em;
  margin-bottom: .6em;
  font-weight: bold;
}
.box-design_11 p i {
  font-size: var(--size-32px);
  margin-right: .3em;
}
.box-design_11:hover {
  box-shadow: 0 3px 0 rgb(67 225 202 / 50%);
  opacity: .9;
  margin-top: 4px;
  margin-bottom: 0;
}
.box-design_11 ul {
  margin: 0 0 0 1.5em;
}

.box-design_12 {
  background-color: #fff;
  border-radius: 20px;
  padding: 15px;
  box-shadow: 0 2px 10px 1px rgb(0 0 0 / 10%);
}

.box-design_13 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  text-align: center;
}
.box-design_13 a {
  border: solid 2px #1CAF94;
  color: #1CAF94;
  padding: .5em;
  margin-top: .5em;
  border-radius: 4px;
}
.box-design_13 .column2 {
  width: 49%;
}
.box-design_13 .column3 {
  width: 32%;
}
.box-design_13 .column4 {
  width: 24%;
}

.box-design_14 {
  border: solid 2px #443f3f;
  border-radius: 10px;
  font-size: 1.3em;
  margin: 15px;
  padding: 20px;
  background-color: #fff;
}
.box-design_14 h5 {
  text-align: center;
  text-decoration: underline;
  font-size: 1.2em;
  margin-bottom: 10px;
}
.box-design_14 p {
  margin-bottom: 0;
}

/* flexbox------------------------------- */

.flexbox_01-l {
  width: 100%;
  text-align: center;
}
.flexbox_01-r {
  width: 100%;
  text-align: center;
}

/* icon-list------------------------------- */

.icon-list i.fa-play {
  vertical-align: middle;
  margin-right: 32px;
  margin-bottom: 5px;
}
.icon-list i.fa-play::before {
  border: solid 3px red;
  border-radius: 8px;
  background-color: #fff;
  padding: .4em 1em;
  vertical-align: top;
}

/* Archive------------------------------- */
.ast-separate-container .ast-archive-description {
	background-color: #1CAF94;
	padding: 2em;
	margin-bottom: 50px;
}

.archive .page-title {
	color: #fff;
}

.archive .entry-content {
    padding-bottom: 2em;
}

.archive .entry-title {
	font-size: 1.8em !important;
}

/* @ max-width: 1024px（ロゴキャッチコピー用）------------------------------- */
@media screen and (max-width: 1170px) {
  .site-logo-img::after {
    display: none;
  }
}

/* @ max-width: 1024px（タブレット）------------------------------- */
@media screen and (max-width: 1024px) {

  body {
    font-size: 14px;
  }

  .size_12px { font-size: 11px; }
  .size_14px { font-size: 12px; }
  .size_18px { font-size: 16px; }
  .size_20px { font-size: 18px; }
  .size_22px { font-size: 19px; }
  .size_24px { font-size: 21px; }
  .size_24px { font-size: 23px; }
  .size_28px { font-size: 25px; }
  .size_32px { font-size: 28px; }
  .size_38px { font-size: 33px; }

  :root {
    --font-size: 14px;
    --size-12px: 11px;
    --size-14px: 12px;
    --size-18px: 16px;
    --size-20px: 18px;
    --size-22px: 19px;
    --size-24px: 21px;
    --size-24px: 23px;
    --size-28px: 25px;
    --size-32px: 28px;
    --size-38px: 33px;
  }

  .page-id-789.ast-left-sidebar #secondary {
    display: none;
  }

  .text-design_01 {
    font-size: 20px;
    border-width: 2px;
    padding: 5px .7em;
  }
  .text-design_01_v3 {
    font-size: 18px;
    border-width: 2px;
    padding: 5px .7em;
  }
  .text-design_02 {
    font-size: 32px;
  }
  .text-design_02_v3 {
    font-size: 30px;
  }

  .title-design_01 h1, .title-design_01 h2 {
    font-size: 36px;
  }

  .button-design_02 a {
    height: calc(2.5em + 10px);
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .box-design_01-04 {
    font-size: 14px;
    padding-top: 10px;
  }
  .box-design_01-04::before {
    width: 30px;
    height: 30px;
    font-size: 18px;
  }
  .box-design_01-04 .flexbox_01-r {
    padding-top: 0;
  }
  .box-design_10 {
    font-size: 16px;
  }

}

/* @ min-width: 922px------------------------------- */
@media screen and (min-width: 922px) {
  .page-id-789.ast-left-sidebar #primary {
    width: 100%;
  }
  .pc-none {
    display: none;
  }
}

/* @ max-width: 921px（Astraブレークポイント）------------------------------- */
@media screen and (max-width: 921px) {
  .ast-page-builder-template.ast-left-sidebar #secondary, .ast-page-builder-template.ast-right-sidebar #secondary, .ast-separate-container #secondary {
    display: none;
  }
  .site-logo-img::after {
    display: inline-block;
  }
  .mobile-none {
    display: none;
  }
}

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

  body {
    font-size: 12px;
  }

  .size_12px { font-size: 10px; }
  .size_14px { font-size: 11px; }
  .size_18px { font-size: 14px; }
  .size_20px { font-size: 15px; }
  .size_22px { font-size: 17px; }
  .size_24px { font-size: 18px; }
  .size_26px { font-size: 20px; }
  .size_28px { font-size: 21px; }
  .size_32px { font-size: 24px; }
  .size_38px { font-size: 29px; }

  :root {
    --font-size: 12px;
    --size-12px: 10px;
    --size-14px: 11px;
    --size-18px: 14px;
    --size-20px: 15px;
    --size-22px: 17px;
    --size-24px: 18px;
    --size-24px: 20px;
    --size-28px: 21px;
    --size-32px: 24px;
    --size-38px: 29px;
  }

  .text-design_02 {
    font-size: 28px;
  }
  .text-design_02_v3 {
    font-size: 28px;
  }
  .text-design_04 {
    font-size: 22px;
  }

  .title-design_01 h1, .title-design_01 h2 {
    font-size: 34px;
  }
  .title-design_02 h3 {
    font-size: 28px;
  }
  .title-design_02_v3 h3 {
    font-size: 28px;
  }

  .box-design_01-04 {
    font-size: 14px;
  }
  .box-design_10 {
    font-size: 16px;
  }

}

/* @ max-width: 767px（モバイル）------------------------------- */
@media screen and (max-width: 767px) {

  body {
    font-size: 14px;
  }

  .size_12px { font-size: 11px; }
  .size_14px { font-size: 12px; }
  .size_18px { font-size: 16px; }
  .size_20px { font-size: 18px; }
  .size_22px { font-size: 19px; }
  .size_24px { font-size: 21px; }
  .size_26px { font-size: 23px; }
  .size_28px { font-size: 25px; }
  .size_32px { font-size: 28px; }
  .size_38px { font-size: 33px; }

  :root {
    --font-size: 14px;
    --size-12px: 11px;
    --size-14px: 12px;
    --size-18px: 16px;
    --size-20px: 18px;
    --size-22px: 19px;
    --size-24px: 21px;
    --size-26px: 23px;
    --size-28px: 25px;
    --size-32px: 28px;
    --size-38px: 33px;
  }

  .ast-separate-container .ast-article-post, .ast-separate-container .ast-article-single {
    margin: 20px 0 30px;
    padding: 0;
  }
  .ast-single-post-order {
    padding: 0 10px;
  }

  .text-design_01 {
    font-size: 24px;
    padding: 5px .5em;
  }
  .text-design_01_v3 {
    font-size: 24px;
    padding: 5px .5em;
  }
  .text-design_02 {
    font-size: 32px;
  }
  .text-design_02_v3 {
    font-size: 32px;
  }
  p.text-design_03 {
    font-size: var(--size-22px);
  }
  .text-design_04 {
    font-size: 18px;
    margin-right: .7em;
  }

  .title-design_01 h1, .title-design_01 h2 {
    font-size: 32px;
  }

  .box-design_01-04 {
    display: flex;
    font-size: 26px;
    margin-top: 15px;
    height: 160px;
    padding-top: 0;
  }
  .box-design_01-04 .flexbox_01-l {
    text-align: left;
  }
  .box-design_01::before, .box-design_02::before, .box-design_03::before, .box-design_04::before {
    width: 45px;
    height: 45px;
    font-size: 28px;
  }
  .box-design_01::after, .box-design_02::after, .box-design_03::after {
    font-family: 'Font Awesome 5 Free';
    font-weight: 700;
    content: '\f0dd';
    position: absolute;
    font-size: 120px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    top: 190px;
    color: rgba(0,0,0,0.6);
  }
  .box-design_01-04 img {
    max-height: 160px;
  }
  .box-design_02, .box-design_03, .box-design_04 {
    margin-top: 65px;
  }
  .box-design_10 {
    font-size: 20px;
    border: solid 2px #333;
  }
  .box-design_10::before {
    top: 0;
    border: solid 2px #333;
  }
  .box-design_10::after {
    top: 6px;
    border: solid 2px #333;
  }
  .box-design_11 {
    height: 17em;
    padding: 10px 6px;
  }
  .box-design_11 p {
    color: #1CAF94;
    text-align: center;
    margin-bottom: .5em;
  }
  .box-design_11 p i {
    font-size: var(--size-38px);
  }
  .box-design_13 a {
    width: 49% !important;
  }

  .mobile_center {
    text-align: center;
  }

  .nav-design .elementor-menu-toggle {
    font-size: 23px;
  }

  .flexbox_01-l, .flexbox_01-r {
    width: 50%;
  }

  .flex_space-around_mobile {
    display: flex;
    justify-content: space-around;
  }

  .site-logo-img::after {
    font-size: 18px;
    margin-top: 8px;
  }

}

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

  .text-design_01 {
    font-size: 20px;
  }
  .text-design_01_v3 {
    font-size: 20px;
  }
  .text-design_02 {
    font-size: 28px;
  }
  .text-design_02_v3 {
    font-size: 28px;
  }

  .title-design_01 h1, .title-design_01 h2 {
    font-size: 30px;
  }
  .title-design_02 h3 {
    font-size: 26px;
    padding: 15px 10px;
  }
  .title-design_02_v3 h3 {
    font-size: 26px;
    padding: 15px 10px;
  }

  .box-design_01-04 {
    font-size: 22px;
  }

  .site-logo-img::after {
    font-size: 16px;
    margin-top: 10px;
  }

}

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

  .text-design_01 {
    font-size: 18px;
    padding: 5px .5em;
  }
  .text-design_01_v3 {
    font-size: 18px;
    padding: 5px .5em;
  }
  .text-design_02 {
    font-size: 26px;
  }
  .text-design_02_v3 {
    font-size: 26px;
  }

  .title-design_01 h1, .title-design_01 h2 {
    font-size: 24px;
  }
  .title-design_01 h1::after, .title-design_01 h2::after {
    left: calc(50% - 50px);
    width: 100px;
  }
  .title-design_02 h3 {
    font-size: 24px;
  }
  .title-design_02 {
    margin-right: 10%;
  }
  .title-design_02_v3 h3 {
    font-size: 24px;
  }

  .box-design_01-04 {
    font-size: 18px;
  }
  .box-design_01::before, .box-design_02::before, .box-design_03::before, .box-design_04::before {
    width: 40px;
    height: 40px;
    font-size: 25px;
  }

  .header-icon::after {
    letter-spacing: -1px;
  }

}

/* @ max-width: 544px（Astraブレークポイント）------------------------------- */
@media screen and (max-width: 544px) {

  .site-logo-img::after {
    font-size: 14px;
    margin-top: 6px;
  }

  .site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
    padding: 15px 0;
  }
	
  .ast-archive-description .ast-archive-title {
    font-size: 30px;
  }
	
  .ast-separate-container .ast-archive-description {
    margin-bottom: 34px;
  }

}

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

  body {
    font-size: 12px;
  }

  .size_12px { font-size: 10px; }
  .size_14px { font-size: 11px; }
  .size_18px { font-size: 14px; }
  .size_20px { font-size: 15px; }
  .size_22px { font-size: 17px; }
  .size_24px { font-size: 18px; }
  .size_26px { font-size: 20px; }
  .size_28px { font-size: 21px; }
  .size_32px { font-size: 24px; }
  .size_38px { font-size: 29px; }

  :root {
    --font-size: 12px;
    --size-12px: 10px;
    --size-14px: 11px;
    --size-18px: 14px;
    --size-20px: 15px;
    --size-22px: 17px;
    --size-24px: 18px;
    --size-26px: 20px;
    --size-28px: 21px;
    --size-32px: 24px;
    --size-38px: 29px;
  }

  .text-design_01 {
    font-size: 14px;
  }
  .text-design_01_v3 {
    font-size: 14px;
  }
  .text-design_02 {
    font-size: 21px;
  }
  .text-design_02_v3 {
    font-size: 21px;
  }
  .text-design_04 {
    font-size: 14px;
    margin-right: .7em;
    border-width: 1px;
    border-radius: 2px;
  }

  .title-design_01 h1, .title-design_01 h2 {
    font-size: 20px;
    line-height: 1.8;
    padding-bottom: 1em;
  }
  .title-design_02 h3 {
    font-size: 18px;
  }
  .title-design_02 {
    margin-right: 5%;
  }
  .title-design_02_v3 h3 {
    font-size: 18px;
  }
  .title-design_04 {
    font-size: var(--size-28px);
  }

  .box-design_01-04 {
    font-size: 16px;
    height: 100px;
  }
  .box-design_01-04 img {
    margin-top: -40px;
    max-height: 140px;
  }
  .box-design_01 .flexbox_01-l, .box-design_02 .flexbox_01-l {
    width: 60%;
  }
  .box-design_01 .flexbox_01-r, .box-design_02 .flexbox_01-r {
    width: 40%;
  }
  .box-design_03 .flexbox_01-l, .box-design_04 .flexbox_01-l {
    width: 45%;
  }
  .box-design_03 .flexbox_01-r, .box-design_04 .flexbox_01-r {
    width: 55%;
  }
  .box-design_01::before, .box-design_02::before, .box-design_03::before, .box-design_04::before {
    width: 35px;
    height: 35px;
    font-size: 22px;
  }
  .box-design_01::after, .box-design_02::after, .box-design_03::after {
    top: 130px;
  }
  .box-design_02, .box-design_03, .box-design_04 {
    margin-top: 50px;
  }
  .box-design_01::after, .box-design_02::after, .box-design_03::after {
    font-size: 110px;
  }
  .text-design_06 {
    font-size: var(--size-32px);
  }
  .box-design_07 {
    padding: 20px 10px;
    font-size: var(--size-18px);
  }
  .box-design_10 {
    font-size: 16px;
  }
  .box-design_11 {
    font-size: var(--font-size);
  }
  .box-design_11 p {
    font-size: var(--size-20px);
  }

  .header-icon::after {
    letter-spacing: -2px;
  }

  .parent-pageid-789.ast-single-post .entry-title {
    padding: 40px 20px;
  }

  #wpfront-scroll-top-container {
    right: 10px !important;
    bottom: 10px !important;
  }
  #wpfront-scroll-top-container img {
    width: 13vw !important;
  }

  .site-logo-img::after {
    content: '-\30C6\30FC\30D6\30EB\30AA\30FC\30C0\30FC\5C0E\5165-';
    font-size: 12px;
    margin-top: 8px;
  }

  .home-navi_01.focus, .home-navi_02.focus, .home-navi_03.focus, .home-navi_04.focus, .home-navi_05.focus, .home-navi_06.focus {
    border-bottom: 4px solid #1CAF94;
  }

}

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

  .text-design_01 {
    font-size: 13px;
  }
  .text-design_01_v3 {
    font-size: 13px;
  }
  .text-design_02 {
    font-size: 19px;
  }
  .text-design_02_v3 {
    font-size: 19px;
  }
  .text-design_05::before {
    width: 50px;
  }
  .text-design_05::after {
    width: 50px;
  }

  .title-design_01 h1, .title-design_01 h2 {
    font-size: 18px;
  }
  .title-design_02 h3 {
    font-size: 18px;
  }
  .title-design_02_v3 h3 {
    font-size: 18px;
  }

  .box-design_01-04 {
    height: 80px;
  }
  .box-design_01-04 img {
    max-height: 120px;
  }
  .box-design_01::after, .box-design_02::after, .box-design_03::after {
    top: 110px;
  }
  .box-design_10 {
    font-size: 14px;
  }
  .box-design_11 {
    padding: 10px 8px;
  }

  .site-logo-img::after {
    font-size: 10px;
    margin-top: 10px;
  }

}

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

  body {
    font-size: 10px;
  }

  .size_14px { font-size: 10px; }
  .size_18px { font-size: 12px; }
  .size_20px { font-size: 13px; }
  .size_22px { font-size: 15px; }
  .size_24px { font-size: 16px; }
  .size_26px { font-size: 18px; }
  .size_28px { font-size: 19px; }
  .size_32px { font-size: 22px; }
  .size_38px { font-size: 31px; }

  :root {
    --font-size: 10px;
    --size-14px: 10px;
    --size-18px: 12px;
    --size-20px: 13px;
    --size-22px: 15px;
    --size-24px: 16px;
    --size-26px: 18px;
    --size-28px: 19px;
    --size-32px: 22px;
    --size-38px: 31px;
  }

  .text-design_01 {
    font-size: 11px;
    padding: 5px 3px;
  }
  .text-design_01_v3 {
    font-size: 11px;
    padding: 5px 3px;
  }
  .text-design_02 {
    font-size: 16px;
  }
  p.text-design_03 {
    font-size: var(--size-20px);
  }
  .text-design_02_v3 {
    font-size: 16px;
  }
  .text-design_04 {
    font-size: 12px;
  }

  .title-design_01 h1, .title-design_01 h2 {
    font-size: 16px;
  }
  .title-design_02 h3 {
    font-size: 15px;
    padding: 10px 5px;
  }
  .title-design_02_v3 h3 {
    font-size: 15px;
    padding: 10px 5px;
  }

  .box-design_01-04 {
    font-size: 14px;
    height: 80px;
  }
  .box-design_02, .box-design_03, .box-design_04 {
    margin-top: 40px;
  }
  .box-design_01::after, .box-design_02::after, .box-design_03::after {
    top: 125px;
    font-size: 90px;
  }
  .box-design_01-04 img {
    max-height: 120px;
  }
  .box-design_10 {
    font-size: 12px;
    padding: 5px;
  }
  .box-design_11 {
    padding: 10px 5px;
  }

  .header-icon::after {
    letter-spacing: -3px;
  }

  .site-logo-img::after {
    display: none;
  }

}
