/*common*/
ol, ul {
	list-style: none;
}
.radius_btns {
  width: auto;
  height: 100%;
  line-height: 1.25;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  color: #1C9F91;
  border: 1px solid #1C9F91;
  text-decoration: none;
  background-color: white;
  border-radius: 40px;
  font-family: "noto_sans_cjk_jpbold", sans-serif;
  font-size: 14px;
  padding: 14px 18px;
  height: 48px;
  transition :all 0.5s ease 0s;
  position: relative;

}
.radius_btns.fill::after {
  content: "";
  background-image: linear-gradient(77deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 40px;
  overflow: hidden;
  z-index: 0;
  transition:all 0.5s ease-out;
}
.radius_btns.fill:hover::after {
  opacity: 0;
  visibility: hidden;
}
.radius_btns.fill span {
  color: #fff;
  z-index: 1;
  position: relative;
  transition:all 0.5s ease-out;
  /* transition-delay:0.3ms; */
}
.radius_btns.fill:hover span {
  background: linear-gradient(90deg, #00546C -2.01%, #1C9F91 103.87%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
/**/

.navigationWrap{display: flex; gap: 20px; align-items: center; position: relative;}
ul.main-nav { 
  list-style-type: none; 
  padding: 0px;
  font-size: 0px;
  max-width: 1000px;
  margin: 0 auto;
}

ul.main-nav > li { 
  display: inline-block;
  padding: 0; 
}

ul.main-nav > li > a { 
  display: block; 
  padding: 25px 9px; 
  position: relative;
  color: #333;
  font-size: 13px;
  font-weight: 400; font-family: "noto_sans_cjk_jpbold", sans-serif;
  box-sizing: border-box;
}

ul.main-nav > li:hover { background-color: #f9f9f9; }
ul.main-nav > li:hover > a { color: #333; font-weight: 400; }
/*
ul.main-nav > li ul.sub-menu-lists {
  margin: 0px;
  padding: 0px;
  list-style-type : none;
  display:block;
}

ul.main-nav > li ul.sub-menu-lists > li {
  padding: 2px 0;
}

ul.main-nav > li ul.sub-menu-lists > li > a {
  font-size: 14px;
}
*/
*:focus {
  outline: none;
}
.aside-form-wrap{    
  background-color: #ffffff;
}
.aside-form-wrap .aside-form{
  padding: 26px 44px 36px 44px;
  overflow-y: auto;
  box-shadow: 1px 0px 10px rgba(0, 0, 0, .2);
}
.aside-form-wrap .aside-form #div_contact_fix #mr_form .mr_form_inner{
  background-color: #f3f4f8;
  margin-top: 15px;
  margin-bottom: 34px;
/*    border: 1px #000 solid;*/
  border-radius: 5px;
}
.aside-form-wrap .aside-form #div_contact_fix #mr_form .mr_form_inner .frow{
  padding: 15px 15px 8px 15px;
  border-bottom: 1px #c8c8c8 solid;    
}
.aside-form-wrap .aside-form #div_contact_fix #mr_form .mr_form_inner .frow:first-child input:not([type="submit"]):not([type=checkbox]):not([type=radio]){
  margin-top: 20px;
}
.aside-form-wrap .aside-form #div_contact_fix #mr_form .mr_form_inner .frow input:not([type="submit"]):not([type=checkbox]):not([type=radio]){
  width: 100%;
  margin-top: 12px;
  border: none;
  background-color: transparent;
}
.aside-form-wrap .aside-form #div_contact_fix #mr_form .mr_form_inner .frow input:focus{
  border: none;
}
.aside-form-wrap .aside-form #div_contact_fix #mr_form .mr_form_inner .frow:last-child{
  border-bottom: 0px;
}
.aside-form-wrap .aside-form #div_contact_fix #mr_form .mr_form_inner .mr_require_checkbox.label_cb {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  margin-top: 5px;
  margin-left: -4px;
}
.form_body {
  font-size: 12px;
  line-height: 1.35;
}
#send_button_pre{
  font-family: "noto_sans_cjk_jp_regularRg", sans-serif;
  background: linear-gradient(77deg, rgba(0, 84, 108, 1) 0%, rgba(0, 126, 143, 1) 28%, rgba(28, 159, 145, 1) 90%);
  color: white !important;
  padding: 21px 0 19px;
  border-radius: 40px;
  text-align: center;
  margin-top: 11px;
  border: 1px solid #1C9F91;
}
#send_button {
  font-family: "noto_sans_cjk_jpbold", sans-serif;
  font-size: 16px;
  background: linear-gradient(77deg, rgba(0, 84, 108, 1) 0%, rgba(0, 126, 143, 1) 28%, rgba(28, 159, 145, 1) 90%);
  color: white !important;
  padding: 17px 0 13px;
  border-radius: 40px;
  text-align: center;
  margin-top: 11px;
  border: 1px solid #1C9F91;
  width: 100%;
}
#send_button_pre:hover, #send_button:hover {
  background: white;
  color: #1C9F91 !important;
  cursor: pointer;
}
.aside-form-wrap .valid_icon{
  display: none;
}
/*.aside-form-wrap .aside-form #div_contact_fix #mr_form .mr_form_inner .imp{
  background-color: #1c9f91;
  color: #ffffff;
  font-size: 9px;
  padding: 0px 4px;
}*/
.aside-form-wrap .imp{
  background-color: #1c9f91;
  color: #ffffff;
  font-size: 9px;
  padding: 0px 4px;
}
.form_body a{
  color: #000000;
  text-decoration: none;
}
.aside-form-wrap .aside-form .title {
  margin-bottom: 22px;
}


/* CSS bY TRP dated 24-06-2024 */
/* Support System */
.support_systems {}
.support_systems .rel_logo {
  width: 100px;
  margin-left: auto;
  margin-right: auto;
}
.support_systems .rel_logo img {vertical-align: middle;}


header .radius_btn:hover span {
  color: #1C9F91;
  -webkit-text-fill-color: #1C9F91;
}

/*  */
.radius_btns {
  width: auto;
  height: 100%;
  line-height: 1.25;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  color: #1C9F91;
  border: 1px solid #1C9F91;
  text-decoration: none;
  background-color: white;
  border-radius: 40px;
  font-family: "noto_sans_cjk_jpbold", sans-serif;
  font-size: 14px;
  padding: 14px 18px;
  height: 48px;
  transition :all 0.5s ease 0s;
  position: relative;

}
.radius_btns.fill::after {
  content: "";
  background-image: linear-gradient(77deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 40px;
  overflow: hidden;
  z-index: 0;
  transition:all 0.5s ease-out;
}
.radius_btns.fill:hover::after {
  opacity: 0;
  visibility: hidden;
}
.radius_btns.fill span {
  color: #fff;
  z-index: 1;
  position: relative;
  transition:all 0.5s ease-out;
  /* transition-delay:0.3ms; */
}
.radius_btns.fill:hover span {
  background: linear-gradient(90deg, #00546C -2.01%, #1C9F91 103.87%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;

}

/******************************************************************/
.supporList a{
  overflow: hidden;
}
.supporList a:hover{
  background: transparent;
}
.supporList a span.sl-hover-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  opacity: 0;    
  background: linear-gradient(77deg, rgba(0, 84, 108, 1) 0%, rgba(0, 126, 143, 1) 28%, rgba(28, 159, 145, 1) 90%);
  transition: all .4s ease-in;
}
.supporList a:hover span.sl-hover-bg {
  opacity: 1;    
  transition: all .4s ease-out;
}

/******************************************************************/

/***********************Navigation CSS*****************************/

@media only screen and (min-width: 769px){
  ul.main-nav > li:hover > div.sub-menu-block {
      background-color: #1c9f91;
      border: 1px #1c9f91 solid;
      /*margin-top: 12px;*/
  }
  .main-nav .top-level-link:hover{
      background-color: transparent;
  }
  .main-nav .top-level-link:hover a span{
      position: relative;
  }
  .main-nav .top-level-link:hover a span:after{
      content: "";
      background-color: #1C9F91;
      height: 1px;
      width: 100%;
      position: absolute;
      left: 0;
      bottom: -6px;;
      /*border-bottom: 1px #1c9f91 solid;*/
  }
  ul.main-nav ul.sub-menu li a {
      color: #ffffff;
      text-decoration: none;
      font-family: 'noto_sans_cjk_jpmedium';
      font-size: 16px;
  }
  ul.main-nav ul.sub-menu li li a {
      font-size: 14px;
  }
  
  ul.main-nav ul.sub-menu li {
      background-color: transparent;
      color: #ffffff;
  }
  ul.main-nav ul.sub-menu li {
      float: none;
      width: 100%;
      border-right:1px #fff solid;
      border-radius: 0px;
  }
  ul.main-nav ul.sub-menu li a {
      position: relative;
  }
  ul.main-nav ul.sub-menu li:last-child {
      border-right: 0px;
  }
  ul.main-nav ul.sub-menu {
      display: grid;
      /*grid-template-columns: 28% 22% 50%;*/
      grid-template-columns: 270px 220px 510px;
      gap: 20px;
  }
  ul.main-nav ul.sub-menu li li{
      border-right:0px;
  }
  ul.main-nav ul.sub-menu li div.submenu-level-2{
      margin-top: 21px;
  }
  ul.main-nav ul.sub-menu li:nth-child(3) div.submenu-level-2 ul {
      display: grid;
      grid-template-columns: 47% 53%;
  }
  ul.main-nav ul.sub-menu li:nth-child(3) div.submenu-level-2 ul li{
      border-right:1px #fff solid;
      margin: 0px;
      padding-top: 6px;
      padding-bottom: 6px;
  }
  ul.main-nav ul.sub-menu li:nth-child(3) div.submenu-level-2 ul li:nth-child(even) {
      border-right: 0;
      margin-left: 28px;
  }
  ul.main-nav > li.top-level-link{
      /*position: relative;*/
  }
  ul.main-nav > li.top-level-link:hover:after {
      /*content: "";
      background-image: url(../images/polygon2.png);
      background-size: contain;
      background-repeat: no-repeat;
      position: absolute;
      bottom: -12px;
      left: 50%;
      width: 14px;
      height: 10px;
      transform: translate(-50%, 0);*/
  }
  ul.main-nav ul.sub-menu li a:after{
      /*content: "";
      background-image: url(../images/arrow_forward.svg);
      background-size: 100%;
      background-repeat: no-repeat;
      position: absolute;
      right: -28px;
      top: -2px;
      width: 20px;
      height: 20px;*/
  }
  ul.main-nav ul.sub-menu li li a:after{
      display: none;
  }
  ul.main-nav ul.sub-menu li li{
      padding-left: 25px;
  }
  ul.main-nav ul.sub-menu li li a:before{
      content: "";
      background-image: url(../images/chevron_right.svg);
      background-size: 100%;
      background-repeat: no-repeat;
      position: absolute;
      left: -23px;
      top: -2px;
      width: 20px;
      height: 20px;
  }
  ul.main-nav ul.sub-menu li.sub-menu-top li a:before{ content:none;}
  ul.main-nav ul.sub-menu li.sub-menu-top li {padding-left: 0px;}
  /********************************************************/

  ul.main-nav li.top-level-link2 ul.sub-menu {
      display: grid;
      grid-template-columns: 70% 30%; 
      gap: 20px;
  }
  ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul {
      display: grid;
      grid-template-columns: 30% 30% 40%; 
  }
  ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li{
      border-right:1px #fff solid;
      margin: 0px;
      padding-top: 8px;
      padding-bottom: 8px;
  }
  ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li:nth-child(2), ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li:nth-child(3), ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li:nth-child(5), ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li:nth-child(6), ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li:nth-child(8), ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li:nth-child(9), ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li:nth-child(11), ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li:nth-child(12) {
padding-left: 51px;
  }
  ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li:nth-child(3), ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li:nth-child(6), ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 ul li:nth-child(9){
      border-right:0px;
  }
  ul.main-nav li.top-level-link2 ul.sub-menu li:nth-child(1) div.submenu-level-2 {
      margin-top: 0px;
  }
  ul.main-nav li.top-level-link2 ul.sub-menu li a:after{ display:none; }

}
/************************Index Banner2 Design**********************/

.banner_header.style2 { 
  padding-top: 72px;
}
.banner_header.style2 .base-btn {
  margin-left: 48px;
}

@media all and (max-width:1080px){
  .banner_header.style2 .good-design-wrap h3{
      font-family: 'noto_sans_cjk_jp_regularRg';
      font-size: 18px;
  }
  .banner_header.style2 .gmo_row {
      grid-template-columns: 1fr;
  }
  .banner_header.style2 .bannerImg {
      margin-left: 0;
  }
  .banner_header.style2 .gmo_row{
      text-align: center;
  }
}

.ic {
  position: fixed; 
  cursor: pointer;
  display: inline-block;
  right: 25px;
  width: 32px;
  height: 24px;
  text-align: center;
  top:0px;
  outline: none;
}

.ic.close { 
  opacity: 0; 
  font-size: 0px; 
  font-weight: 300; 
  color: #333;
  top:8px;
  height:40px;
  display: block;
  outline: none;
}

/* Menu Icons for Devices*/
.ic.menu { top:25px; z-index : 20; }

.ic.menu .line { 
  height: 4px; 
  width: 100%; 
  display: block; 
  margin-bottom: 6px; 
}
.ic.menu .line-last-child { margin-bottom: 0px;  }

.banners-area { margin-top: 20px; padding-top: 15px; }

.banners-area img {width: 150px;}


@media only screen and (max-width:768px) {
  .ic.menu { display: block; }
  header.dark .ic.menu .line { background-color: #fff; } 
  header.light .ic.menu .line { background-color: #000; }
  .ic.menu .line {
    -webkit-transition: all 0.4s ease 0s;
    -o-transition: all 0.4s ease 0s;
    transition: all 0.4s ease 0s;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
  }
  .ic.menu:focus .line { background-color: #fff !important; }
  
  .ic.menu:focus .line:nth-child(1) { 
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); 
  }
  
  .ic.menu:focus .line:nth-child(2){ 
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg); 
    margin-top: -10px;
  }
  
  .ic.menu:focus .line:nth-child(3){
    transform: translateY(15px);
    opacity: 0;
  }
  
  .ic.menu:focus{ outline: none; }
  .ic.menu:focus ~ .ic.close { opacity: 1; z-index : 21;  outline: none;  }
  
  /*
  
  .ic.menu:focus ~ .ic.close { opacity: 1.0; z-index : 21;  }
  .ic.close:focus { opacity: 0; }
  */
  .ic.menu:hover, 
  .ic.menu:focus{ opacity: 1; }
  


  
 /* Main Menu for Handheld Devices  */
  ul.main-nav {
    z-index:2; 
    padding: 50px 0;
    position: fixed;
    right: 0px;
    top: 0px;
    width: 0px;
    background-color:rgba(0,0,0,1);
    height: 100%;
    overflow: auto;
    /*CSS animation applied : Slide from Right*/
   -webkit-transition-property: background, width;
    -moz-transition-property: background, width;
    -o-transition-property: background, width;
    transition-property: background, width;
   	-webkit-transition-duration: 0.6s;
	  -moz-transition-duration: 0.6s;
	  -o-transition-duration: 0.6s;
    transition-duration: 0.6s;
  }
  
  .ic.menu:focus ~ .main-nav { width: 300px; background-color:rgba(0,0,0,1); }
  
  ul.main-nav > * { 
    -webkit-transition-property: opacity;
    -moz-transition-property: opacity;
    -o-transition-property: opacity;
    transition-property: opacity;
   	-webkit-transition-duration: 0.4s;
	  -moz-transition-duration: 0.4s;
	  -o-transition-duration: 0.4s;
    transition-duration: 0.4s;
    opacity: 0;
  }
  .ic.menu:focus ~ .main-nav > * {opacity: 1;}
  
  ul.main-nav > li > a:after {display: none;}
  ul.main-nav > li:first-child { border-radius: 0px; }
  ul.main-nav > li {
    display: block;
    border-bottom: 1px solid #444;
  }
  
  ul.main-nav > li > a { font-weight: 600; }
  
  ul.main-nav > li ul.sub-menu-lists > li a { color: #eee; font-size: 14px; }
  ul.main-nav > li:hover { background-color: transparent;  }
  ul.main-nav > li:hover > a {color: #fff; text-decoration: none; font-weight: 600;}
  /* sub-menu-block: モバイルではデフォルト非表示 */
  ul.main-nav > li > div.sub-menu-block {
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }
  .ic.menu:focus ~ ul.main-nav > li > div.sub-menu-block {
    border-left: 0px solid #ccc;
    border-right: 0px solid #ccc;
    border-bottom: 0px solid #ccc;
    position: relative;
    visibility: visible;
    opacity: 1.0;
  }
  
  .sub-menu-block { padding: 0 30px; }
  /* sub-menu-block 配下メニュー：モバイル用 */
  .sub-menu-block ul,
  .sub-menu-block ul.sub-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: block;
  }
  .sub-menu-block ul.sub-menu > li {
    border-bottom: 1px solid #444;
    padding: 8px 0;
  }
  .sub-menu-block ul.sub-menu > li > a {
    color: #eee;
    font-size: 14px;
    text-decoration: none;
    display: block;
    padding: 4px 0;
  }
  .sub-menu-block ul.sub-menu li li a {
    color: #ccc;
    font-size: 13px;
    padding-left: 15px;
    text-decoration: none;
    display: block;
    padding: 4px 0 4px 15px;
  }
  .sub-menu-block .submenu-level-2 {
    margin-top: 10px;
    padding-left: 0;
  }
  .sub-menu-block .submenu-level-2 ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .sub-menu-block p.other_function {
    color: #fff;
    padding: 15px 0 10px;
    font-size: 14px;
    margin: 0;
  }
  .sub-menu-block ul.sub-menu li.sub-menu-top li { padding-left: 0; }
  .sub-menu-block ul.sub-menu li.sub-menu-top li a { padding-left: 0; }
  .banners-area { padding-bottom: 0px;  }
  .banners-area div { margin-bottom: 15px;  }
  .banners-area { border-top: 1px solid #444; }
}

@media only screen and (max-width: 480px) {
  .sub-menu-block { padding: 0 20px; }
  .sub-menu-block ul.sub-menu > li > a { font-size: 13px; }
  .sub-menu-block ul.sub-menu li li a { font-size: 12px; }
}

@media only screen and (min-width:769px) {
  .ic.menu { display: none; }
  /* Main Menu for Desktop Devices  */
  ul.main-nav { display: block;}
  ul.main-nav > li { position: relative; }
  .sub-menu-block { padding: 15px; }
  .sub-menu-block ul { list-style: none; margin: 0; padding: 0; }
  
  /* Sub Menu */
  ul.main-nav > li > div.sub-menu-block { 
  visibility: hidden;
  position: absolute;
  margin-top: 0px;
  width: 100%;
  color: #fff;
  /*left: auto;
  right: 0;*/
  box-sizing: border-box;
  z-index : 3;
  font-size: 16px;
  border-left: 1px #1c9f91 solid;
  border-right: 1px #1c9f91 solid;
  border-bottom: 1px #1c9f91 solid;
  box-sizing: border-box;
  width: 1100px;
  padding: 40px 44px;
  background: #1c9f91;
  opacity: 0.95;
  border-radius: 20px;
  opacity: 0;
  z-index: 100;
}
  /*CSS animation applied for sub menu : Slide from Top */
  -webkit-transition: all 0.4s ease 0s;
  -o-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s;
  -webkit-transform: rotateX(90deg);
  -moz-transform: rotateX(90deg);
  -ms-transform: rotateX(90deg);
  transform: rotateX(90deg);
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
  
  }

  /* sub-menu-block 内メニュー：緑背景・白文字（TOPページ custom-style.css と同一） */
  ul.main-nav ul.sub-menu {
    display: grid;
    grid-template-columns: 270px 220px 510px;
    gap: 20px;
  }
  ul.main-nav ul.sub-menu li {
    float: none;
    width: 100%;
    border: none;
    text-align: left;
    height: auto;
    background-color: transparent;
    color: #ffffff;
    margin: 0;
    padding: 0;
    border-right: 1px #fff solid;
    border-radius: 0;
  }
  ul.main-nav ul.sub-menu li:last-child {
    border-right: 0;
  }
  ul.main-nav ul.sub-menu li a {
    color: #ffffff;
    text-decoration: none;
    font-family: 'noto_sans_cjk_jpmedium', sans-serif;
    font-size: 16px;
    background: none;
    border: none;
    position: relative;
  }
  ul.main-nav ul.sub-menu li li a {
    font-size: 14px;
  }
  ul.main-nav ul.sub-menu li li {
    border-right: 0;
    padding-left: 25px;
  }
  ul.main-nav ul.sub-menu li div.submenu-level-2 {
    margin-top: 21px;
  }
  ul.main-nav ul.sub-menu li:nth-child(3) div.submenu-level-2 ul {
    display: grid;
    grid-template-columns: 47% 53%;
  }
  ul.main-nav ul.sub-menu li:nth-child(3) div.submenu-level-2 ul li {
    border-right: 1px #fff solid;
    margin: 0;
    padding-top: 6px;
    padding-bottom: 6px;
  }
  ul.main-nav ul.sub-menu li:nth-child(3) div.submenu-level-2 ul li:nth-child(even) {
    border-right: 0;
    margin-left: 28px;
  }
  ul.main-nav p.other_function { padding-top: 40px; color: #ffffff; font-weight: bold; }
  
  ul.main-nav > li:hover > div.sub-menu-block { 
    background-color: #1c9f91;
    border-left: 1px #1c9f91 solid;
    border-right: 1px #1c9f91 solid;
    border-bottom: 1px #1c9f91 solid;
    visibility: visible;
    opacity: 1;
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    transform: rotateX(0deg);
  }
  
  ul.main-nav > li > div.sub-menu-block > * {
    -webkit-transition-property: opacity;
    -moz-transition-property: opacity;
    -o-transition-property: opacity;
    transition-property: opacity;
   	-webkit-transition-duration: 0.4s;
	  -moz-transition-duration: 0.4s;
	  -o-transition-duration: 0.4s;
    transition-duration: 0.4s;
    opacity: 0;
  }
  
  ul.main-nav > li:hover > div.sub-menu-block > * {
    opacity: 1;
  }
  
  
  /* List Separator: Outer Border */
  header.dark ul.main-nav > li > a { border-right: 1px solid #bbb; }
  header.light ul.main-nav > li > a { border-right: 1px solid #666; }
  
  /* List Separator: Inner Border */
  ul.main-nav > li > a.mega-menu:before {
    content: '';
    width: 1px;
    height: 62px; opacity: 0; transition: all 0.2s ease 0s;
    position: absolute;
    left:calc(50% - 12px);
    bottom: 0;
    z-index : 2;
    width: 0px;
    height: 0px;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-bottom: 12px solid #1C9F91;
  }

  ul.main-nav > li > a:after {
    content: '';
    width: 1px;
    height: 62px;
    position: absolute;
    right:0px;
    top: 0px;
    z-index : 2;
  }
  .main-nav .top-level-link:hover a.mega-menu:before{opacity: 1;}
  header.dark ul.main-nav > li > a:after { background-color: #777; }
  header.light ul.main-nav > li > a:after { background-color: #999; }
  
  /* Drop Down/Up Arrow for Mega Menu */
  ul.main-nav > li > a.mega-menu > span { display: block; vertical-align: middle; }  
/*  ul.main-nav > li > a.mega-menu > span:after {
    width: 0; 
    height: 0; 
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid #000;
    content: '';
    background-color: transparent;
    display: inline-block;
    margin-left: 10px;
    vertical-align: middle;
  }

  ul.main-nav > li:hover > a.mega-menu span:after{
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 0px solid transparent;
    border-bottom: 5px solid #666;
  }*/
  .banners-area { border-top: 1px solid #ccc; }
}

@media screen and (min-width: 769px) and (max-width: 1099px) {
  ul.main-nav > li > div.sub-menu-block {
    width: calc(100vw - 48px);
    max-width: 1100px;
    left: auto;
    right: 0;
    -webkit-transform: rotateX(90deg);
    -moz-transform: rotateX(90deg);
    -ms-transform: rotateX(90deg);
    transform: rotateX(90deg);
    box-sizing: border-box;
  }
  ul.main-nav > li:hover > div.sub-menu-block {
    -webkit-transform: rotateX(0deg);
    -moz-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    transform: rotateX(0deg);
  }
}
@media screen and (min-width: 1100px) and (max-width: 1200px) { 
  ul.main-nav > li > div.sub-menu-block{width: 1044px;}
}
#send_button_pre,
#send_button{
  /* -webkit-text-stroke: 1px black; */
  font-size: 16px;
  font-weight: bold;
}
.form_body #mr_form .label_cb a{
  text-decoration: underline;
}
.aside-form-wrap .imp{
  padding: 2px 4px !important;
}
.good-design-wrap{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 50px;
  padding: 20px 0 32px 0;
}
.banner_header .good-design-wrap h3{
  padding: 0;
}
.good-design-img{
  width: 75px;
}
.headerBanner2.bannerImg{
  margin-top: 20px;
}
.banner_header.title-style{
  background-position: top;
  padding: 0px;
}
.banner_header.title-style .page-title-container{
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  height: 140px;
}
.banner_header.title-style .gmo_row{
  grid-template-columns: 1fr;
}
.banner_header.title-style h1{
  font-size: 34px;
  color: #fff;
}
.banner_header .breadcrum-wrapper{
  min-height: 36px;
  background-color: rgba(255, 255, 255, 0.2);
}
.banner_header .breadcrum{
  display: inline-flex;
  font-size: 12px;
  gap: 8px 5px;
  padding: 12px 0px;
  flex-wrap: wrap;
}
.breadcrum, .breadcrum a{color: #fff; font-size: 12px;}
/*.breadcrum span{
  padding-right: 12px;
  position: relative;
}*/
/*.breadcrum span:after{
  content: '>';
  position: absolute;
  right: 0px;
}
.breadcrum span:last-child:after{
  content: none;
}*/
.main-content{
  min-height: 300px;
}
ul.main-nav > li > a{
  cursor: pointer;
	text-decoration: none;
}
.banner_header.style2{
  padding-bottom: 0px;
}
.banner_header.style2 .container {
  max-width: 1100px;
}
.banner_header.style2 .gmo_row{
  align-items: end;
}

.banner_header.style2 .gmo_row{
  /* grid-template-columns: 41% 1fr; */
  grid-template-columns: 458px 678px;
}
.banner_header.style2 .base-btnWrap{
  margin-bottom: 98px;
}
.banner_header.style2 .bannerImg .bannerImg1 img{
  margin-bottom: -3px;
}




@font-face {
    font-family: 'noto_sans_cjk_jpbold';
    src: url('../fonts/NotoSansCJKjp-Bold.eot');
    src: url('../fonts/NotoSansCJKjp-Bold.eot?#iefix') format('embedded-opentype'),
        /*url('../NotoSansCJKjp-Bold.woff') format('woff'),*/
        url('../fonts/NotoSansCJKjp-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'noto_sans_cjk_jpmedium';
    src: url('../fonts/notosanscjkjp-medium.woff2') format('woff2'),
         url('../fonts/notosanscjkjp-medium.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'noto_sans_cjk_jp_regularRg';
    src: url('../fonts/notosanscjkjp-regular-webfont.woff2') format('woff2'),
         url('../fonts/notosanscjkjp-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
.spo{ display: block !important;}
.pco{ display: none !important;}
@media only screen and (min-width : 768px){
  .spo{ display: none !important;}
  .pco{ display: block !important;}
}
body{display: block; background-color: white; font-family: "noto_sans_cjk_jp_regularRg", sans-serif; overflow-x: hidden;}
img{max-width: 100%;}
.text-center{text-align: center;}
.display-block{display: block;}
.seaGreen-color{color: #1C9F91 !important;}

.radius_btn{width: auto; line-height: 1.25; display: flex; justify-content: flex-end; align-items: center; color: #1C9F91; border: 1px solid #1C9F91; text-decoration: none; background-color: white; border-radius: 40px; font-family: "noto_sans_cjk_jpbold", sans-serif; font-size: 14px; padding:14px 18px; height: 48px; transition: .5s all;}
.radius_btn span{color: #1C9F91; display: inline-block; transition: .5s all;}
.radius_btn.active,
.radius_btn:hover{background: linear-gradient(77deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%);} 
.radius_btn.active span,
.radius_btn:hover span{background: transparent; color: white; -webkit-text-fill-color: #FFFFFF;}
.radius_btn:hover svg path{stroke: white;}

header .radius_btn:hover{background: #f2f4f8; /*color: #00546c;*/}
/* header .radius_btn:hover span{color: #00546c; -webkit-text-fill-color: #00546c;} */

.radius_btn.active:hover{background: white; }
	.radius_btn.active:hover span{background: linear-gradient(77deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%);
		-webkit-background-clip: text !important;
		-webkit-text-fill-color: transparent;}

.gmo_row{display: flex;}
.space-between{justify-content: space-between;}
.container{width: 100%; max-width: 1150px; margin-left: auto; margin-right: auto;}
.container-max1000{max-width: 1000px;}

.headerTop{display: flex; justify-content: space-between; border-bottom: #c8c8c8 1px solid; background-color: #fafafa; padding: 0 10px;}

header nav{display: flex; justify-content: space-between; padding: 6px 40px; font-family: "noto_sans_cjk_jpbold", sans-serif; align-items: center;z-index: 0;}
.logoSlogan{font-size: 11px; line-height: 1.546; font-family: "noto_sans_cjk_jp_regularRg", sans-serif; padding-bottom: 4px;}

	@keyframes ainm_gmologo {
		0% {
			opacity: 1;
			visibility: visible;
			z-index: 3;
		}

		30% {
			opacity: 1;
			visibility: visible;
			z-index: 3;
		}

		40% {
			opacity: 0.5;
			visibility: visible;
			z-index: 3;
		}

		50% {
			opacity: 0;
			z-index: 2;
		}

		100% {
			opacity: 0;
			z-index: 2;
		}
	}

	@keyframes anim_sustainable {
		0% {
			opacity: 0;
			z-index: 2;
		}

		50% {
			opacity: 0;
			z-index: 2;
		}

		60% {
			opacity: 0.5;
			visibility: visible;
			z-index: 2;
		}

		70% {
			opacity: 1;
			visibility: visible;
			z-index: 3;
		}

		100% {
			opacity: 1;
			visibility: visible;
			z-index: 3;
		}
	}
.mobileMenuHead{display: none; gap: 15px;}
.mobile_hamburger{cursor: pointer;}
/*Mobile Side nav*/
.gmomobileNav{margin: 0; position: fixed; text-transform: uppercase; width: 375px; padding:14px 25px; height: 100%; right: -375px; opacity: 0; top: 0; z-index: 10000;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    background: #007E8F;
    -moz-transition: all 0.3s ease-in;
    -webkit-transition: all 0.3s ease-in;
    transition: all 0.3s ease-in;
}
.navigation-is-open .gmomobileNav {right:0; opacity: 1;}
.mobnav_overlay{position: fixed; width: 100%; height: 100%; left: 0; top: 0; opacity: .6; background: black; z-index: 1001; visibility: hidden;}
.navigation-is-open .mobnav_overlay{visibility: visible;}

.gmomobileNavHeader{text-align: right; cursor: pointer;}
ul.sideNavMobile{margin-bottom: 50px;}
ul.sideNavMobile li{border-bottom: 1px #5AC7C0 solid;}
ul.sideNavMobile li a{color: white; display: block; padding: 13px 0; text-decoration: none;}
.gmomobileNav .base-btn{width: 100%; font-size: 16px;}
.gmomobileNav p.other_function{ color: #ffffff; padding: 20px 0 10px 0;}

.header_contact{display: flex; gap: 8px; align-items: center;}
.header_contact .header_contact__tel{display: flex; flex-direction: column; gap: 3px;}
.header_contact .header_contact__tel a{color: #1c1c1c; text-decoration: none; font-size: 17px;  font-family: "Montserrat", sans-serif; font-weight: 600; display: flex; align-items: center; line-height: 20px; padding-left: 6px;}
.header_contact .header_contact__tel span img{display: inline-block; width: 17px; margin-right: 4px;}
.header_contact .header_contact__tel strong{font-weight: 500 !important; line-height: 19px;}
.header_contact .header_contact__tel small{font-size: 10px; line-height: 1.35; font-family: "noto_sans_cjk_jp_regularRg", sans-serif;}

.banner_header{padding:40px 24px; color: white; background-color: #007c84; position: relative; background-size: cover; background-position: center;}  
.banner_header .gmo_row {display: grid; grid-template-columns: 48% 1fr; align-items: center;}
.banner_header h1{font-size: 36px; padding:0; line-height: 1; font-family: "noto_sans_cjk_jpbold", sans-serif;}
.bannerLargHeading{font-size: 60px; padding: 0; line-height: 1.4; font-family: "noto_sans_cjk_jpbold", sans-serif; color:#DEBC36; /*#D1B28B*/}
.bannerLargHeading small{font-size: 40px; color: white;}
.banner_header h3{font-size: 22px; padding: 10px 0 20px 0; line-height: 1.5; font-family: "noto_sans_cjk_jpbold", sans-serif;}
.banner_header .good-design{position: absolute; bottom: 80px; z-index: 99; left: calc(48% - 46px); line-height: 0;}
.banner_header .fv_img01{ margin: 20px 0 10px 0; width: 80%;}
.banner_header .fv_img02{ margin: 6px 0 10px 0; width: 80%;}
.banner_header .fv_txt01{font-size:9px;}

.bannerImg{position: relative;}
.bannerImg2, .bannerImg3, .bannerImg4{position: absolute; top: 0; left: 0;}

.base-btn{width: 360px; height: 72px; position: relative; line-height: 1.25; display: flex; justify-content: center; align-items: center; color: #1C9F91; border: 1px solid #1C9F91; text-decoration: none; background-color: white; border-radius: 40px; font-family: "noto_sans_cjk_jpbold", sans-serif; padding-right: 15px; transition: .5s all;}
.base-btn svg{position: absolute; right: 18px;}
.base-btn span{/*background: rgb(0,84,108);*/ padding-right: 15px; background: linear-gradient(77deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%);
	 -webkit-background-clip: text !important; -webkit-text-fill-color: transparent; display: inline-block; padding-top: 5px;  transition: .5s all;}

.base-btn:hover{background: linear-gradient(77deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%); border-color: #ffffff; color: white;} 
.base-btn:hover span{background: transparent; color: white; -webkit-text-fill-color: #FFFFFF;}
.base-btn:hover svg path{stroke: white;}

.base-btn2{width: 240px; height: 56px; line-height: 1.25; display: flex; justify-content: center; align-items: center; position: relative; color: #FFFFFF; border: 1px solid white; text-decoration: none; border-radius: 36px; font-family: "noto_sans_cjk_jpbold", sans-serif; font-size: 18px; padding-right: 15px; transition: .5s all;}
.base-btn2 svg{position: absolute; right: 12px;}
.base-btn2 svg path{stroke: white;}

.base-btn2:hover{background-color: white; color: #1C9F91;}
.base-btn2:hover svg path{stroke: #1C9F91;}

.base-btn2.whiteBg{border-color: #1C9F91; color: #1C9F91;}
.base-btn2.whiteBg svg path{stroke: #1C9F91;}

.base-btn2.whiteBg:hover{background-color: #1C9F91; color: #FFFFFF;}
.base-btn2.whiteBg:hover svg path{stroke: #FFFFFF;}


.base-btn2.SeaGreen{border-color: #1C9F91; background-color: #1C9F91; color: #FFFFFF;}
.base-btn2.SeaGreen svg path{stroke: white;}
.base-btn2.SeaGreen:hover{background-color: #0b9183; color: #FFFFFF;}
.base-btn2.SeaGreen:hover svg path{stroke: #FFFFFF;}

.base-btn2.Peacock{border-color: #00546c; background-color: #00546c; color: #FFFFFF;}
.base-btn2.Peacock svg path{stroke: white;}
.base-btn2.Peacock:hover{background-color: #026480; color: #FFFFFF;}
.base-btn2.Peacock:hover svg path{stroke: #FFFFFF;}


.base-btn.btn-gradient{background: linear-gradient(77deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%); color: white !important;}
.base-btn.btn-gradient svg path{stroke: white;}

.base-btn.btn-gradient:hover{background: white; color: #1C9F91 !important;}
.base-btn.btn-gradient:hover svg path{stroke: #1C9F91;}

.achievement_sectionWrap{background-color: #FFFFFF; padding-bottom: 26px;}
.achievement_sectionWrap .container{max-width: 800px;}
.achievement_section{background-color: #FFFFFF; border-radius: 16px; box-shadow:0px 8px 24px rgb(0 0 0 / 15%); margin-top: -40px; position: relative; padding:40px 48px; }
.achievement_section p.annotation{ font-size: 11px; text-align: right; color:#666;margin-top: 8px;}
.achievementList{display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; text-align: center; align-items: center;}
.achievementList>.achievementListItem:first-child{grid-column: 1 / -1;}
.achievementList>.achievementListItem:first-child img{max-width: 402px; width: 100%;}
.logo-slider{padding: 14px 0;}
.logo-slider .owl-carousel .owl-item img{max-height: 64px; object-fit: contain;}

.asideFormWrap{position: fixed;
    right: -440px;
	right: 0;
    height: 100%;
    top: 0;
    width: 492px; z-index: 999;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-moz-transition: all 0.3s ease-in;
	-webkit-transition: all 0.3s ease-in;
	transition: all 0.3s ease-in;
}
.side_bownload_btn{position: absolute; left: 0; top: 180px; z-index: 999; background: linear-gradient(0deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%); color: white; font-size: 14px; font-family: "noto_sans_cjk_jpbold", sans-serif; padding: 16px 12px ; transform: rotate(180deg); text-align: right; height: 168px; cursor: pointer;
    writing-mode: vertical-rl;
	-webkit-border-top-right-radius: 8px;
	-webkit-border-bottom-right-radius: 8px;
	-moz-border-radius-topright: 8px;
	-moz-border-radius-bottomright: 8px;
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px; box-shadow: 0 0 16px rgba(255, 255, 255, 0.603);}
.side_bownload_btn svg{position: absolute; top: 10px; transform: rotate(180deg); right: 25px;}
.side_bownload_btn:hover{color: #5ac7c0;}
.side_bownload_btn:hover svg path{fill: #5ac7c0;}
.asideForm{width: 440px; margin: 0; margin-left: 52px; background-color: white;
	height: 100%; padding: 20px;}
.aside-form .title{font-size: 22px; line-height: 1.2; color: #00546C; text-align: center; margin-bottom: 50px;}	
.aside-form .title big{display: block; font-size: 22px;}
.aside-form .title span{font-size: 16px; font-family: 'noto_sans_cjk_jpmedium';}
.form_body{padding: 20px;}
.close_form{position: absolute; right: 15px; top: 11px; border-radius: 6px; /*background-color: #1C1B1F;*/ width: 40px; height: 40px; display: flex; justify-content: center; align-items: center; cursor: pointer; line-height: 0;}
.close_form svg{height: 26px; width: 26px;}
.close_form svg path{stroke: #00546C; fill: #00546C;} 

.gmo_modal{border-radius: 8px; padding: 20px; color: white; position: fixed; right: 32px; margin-top: -50px; width: 340px; bottom: 32px; 
	z-index: 99; background: linear-gradient(77deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%);} 	
.gmo_modal .gmo_row{display: grid; grid-template-columns: 138px 1fr; gap: 12px;}
.gmo_modal h4{font-size: 15px; font-family: "noto_sans_cjk_jpbold", sans-serif; line-height: 1.6; padding-bottom: 10px;}
.gmo_modal p{font-size: 12px; line-height: 1.35;}
.borderLine{position: relative; height: 1px; background-color: #1C9F91; margin-top: 1px; margin-bottom: 15px;}
.close_modal{position: absolute; right: -15px; cursor: pointer; top: -15px; opacity: 1; transition: .3s all;}
.close_modal:hover{opacity: .9;}

.management_section{background:#f3f4f8; padding:130px 20px 118px 20px; overflow-x: hidden;}
.mainbox.management_section{ background:#fff;}
.management_section .title{color: #00546C;  margin-bottom: 45px}
.management_section .title strong{font-size: 56px;}
.management_section.footer {padding: 4% 4%;}

.campaign_section{ position: relative;overflow: hidden;}
.campaign_section .cpn_btm{ position: absolute; bottom: -150px; left: -110px; width: 27%;}
.campaign_section .cpn_top{ position: absolute; top: -150px; right: -110px; width: 27%;}
.campaign_section .cpn_img{ margin: 0 auto; width: 1000px;}
.campaign_section .container-max1000_cpn{ display: block; position: relative; z-index: 100;}
.campaign_section .cpn_imgspo{ width: 100%;}

.key_success{margin-top: -24px; margin-right: -52px; padding-bottom: 92px;}
.key_success .gmo_row{align-items: center; gap: 14px;}
.key_success h4{padding: 23px 0; color: #1C1C1C; font-family: "noto_sans_cjk_jpmedium", sans-serif; text-align: center; font-size: 16px; line-height: 1.6;}
.key_success h3{padding: 10px 0; color: #1C9F91; font-family: "noto_sans_cjk_jpbold", sans-serif; text-align: center; font-size: 22px; line-height: 1.5;}

.supporDetail{padding-bottom: 20px;}
.supporDetail p{font-family: 'noto_sans_cjk_jpmedium', sans-serif; font-size: 16px; color: #333333; line-height: 1.6; text-align: center; margin-top: -3px;}
.supporList{display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; gap: 30px 40px; padding:20px 0 100px 0;}
.supporList_ftr{display: grid; grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; gap: 10px 10px; padding:20px 0 80px 0;}

.supporList a , .supporList_ftr a{display: flex; width: 100%; justify-content: space-between; height: 80px; line-height: 1.6; box-shadow: 5px 5px 12.5px #a6b0bf60; align-items: center; position: relative; border: #007E8F 1px solid; border-radius: 80px; padding:10px 12px; text-align: center; text-decoration: none; font-family: 'noto_sans_cjk_jpmedium', sans-serif; font-size: 16px; color: #333333;background: linear-gradient(77deg, rgba(242,244,248,1) 0%, rgba(242,244,248,1) 28%, rgba(242,244,248,1) 90%);-moz-transition: all .4s ease-in-out;-o-transition: all .4s ease-in-out;-webkit-transition: all .4s ease-in-out; transition: all .4s ease-in-out;
}
.supporList a svg , .supporList_ftr a svg{margin-left: 10px;}
.supporList a i , .supporList_ftr a i{display: inline-block; position: relative; margin-left: 10px;}
.supporList a i:before , .supporList_ftr a i:before{content: "";
    display: inline-block;
    background-color:#000000;
    position: absolute; width: 12px; height: 2px;
    right: 0;
    top: calc(50% - 1px);
}
.supporList a i:after , .supporList_ftr a i:after{content: "";
    display: inline-block;
    border: solid #000000;
    position: absolute;
    right: 0;
    top: calc(50% - 4px);
    border-width: 0 2px 2px 0;
    padding: 3px;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);}

.supporList a:hover , .supporList_ftr a:hover{background: linear-gradient(77deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%); color: white; border-color: #04838f;} 	
.supporList a:hover i:before , .supporList_ftr a:hover i:before{background-color: white;}
.supporList a:hover i:after , .supporList_ftr a:hover i:after{border-color: white;}
.supporList a:hover svg path , .supporList_ftr a:hover svg path{fill: white;}

.choose_usList{display: flex; flex-direction: column; margin-bottom: 32px;}
.choose_usList .gmo_row{align-items: center; gap: 7%; flex-wrap: wrap;}
.choose_usList .gmo_row .gmo_col.gmo_colImg img{width: 100%; margin-top: -10px; margin-bottom: -10px;}
.choose_usList h2{font-size: 44px; font-family: "noto_sans_cjk_jpbold", sans-serif; color: #00546C; line-height: 1.5; padding-bottom: 50px;}
.choose_usList p{color: #00546C; font-family: "noto_sans_cjk_jpbold", sans-serif; line-height: 1.2; font-size: 18px;}
.choose_usListItem.choose_tItem3 .gmo_row{gap: 0;}
.choose_usListItem h2{white-space: nowrap;}

ul.top_bnr{ display: flex; flex-wrap: wrap;}
ul.top_bnr li{ margin: 10px; width: 47%; margin: 10px 1% 10px 2%;} 

@media only screen and (min-width : 768px){
	.close_form{opacity: 0;}
	.choose_usList>.choose_usListItem:nth-child(odd) .gmo_row{flex-direction: row-reverse;}
	.choose_usList .gmo_row .gmo_col{ width: 44%;}
	.choose_usList .gmo_row .gmo_col.gmo_colImg{ width: 49%;}
	.choose_usListItem.choose_tItem3 .gmo_row .gmo_col{width: 47%;}
	.choose_usListItem.choose_tItem3 .gmo_row .gmo_col.gmo_colImg{width: 53%;}
	.show_ms{display: none;}

	.title_middle_border{position: relative; margin-top: 50px; margin-bottom: 20px; font-size: 18px;}
.title_middle_border .border{display:block; position: absolute; left: 0; right: 0; height: 1px; background-color: #1f6a7f; top: 50%;}
.title_middle_border:after{content: "";
    display: inline-block; border: solid #00546C; position: absolute; right: 0; top: calc(50% - 3px);
    border-width: 0 1px 1px 0; padding: 3px;
    transform: rotate(-45deg); -webkit-transform: rotate(-45deg);}
.title_middle_border:before{content: ""; border: solid #00546C; position: absolute; left: 0; top: calc(50% - 3px);
		border-width:1px 0 0 1px; padding: 3px;
		transform: rotate(-45deg); -webkit-transform: rotate(-45deg);}
.title_middle_border span{background-color: #ffffff; display: inline-block; padding:0 20px; position: relative; font-family: "noto_sans_cjk_jpmedium", sans-serif; color: #00546C;}
.title_middle_border span img{display: none;}

ul.top_bnr{ display: flex; justify-content:center; flex-wrap: nowrap;}
ul.top_bnr li{ width: 320px; margin: 30px 11px;border: 1px solid #eee; border-radius: 20px;}
ul.top_bnr li img{ border-radius:20px;}

}

.title{font-size: 32px; font-family: "noto_sans_cjk_jpbold", sans-serif; line-height: 1.5;}
.title small{display: block; font-size: 28px;}
.title span{position: relative; display: inline-block;}
.title span::after{content: ''; display: block; margin: 0 auto; width: 86px; height: 2px;   margin-top: 17px;
	/*background-image: linear-gradient(to right, #1C9F91 10%, rgba(255, 255, 255, 0) 0%);
    background-position: top;
    background-size: 7px 1px;*/
    background-repeat: repeat-x; background-image: url('../images/doot-line.svg');
}



.track-record-section{background-color: #f3f4f8; padding: 132px 20px 80px 20px;}
.seminar-sliderWrap{margin-left: -20px; margin-right: -20px;}
.track-record-section .title{margin-bottom: 50px; color: #00546C;}
.track-record-section .seminar-sliderBg{background-color: #e4ebf1;}

.track-record-section .base-btn2.Peacock{font-size: 16px; margin-left: auto; margin-right: auto; background-color: #007d8f; border-color: #007d8f;}
.track-record-section .base-btn2.Peacock:hover{background-color: #1c9f91; border-color: #1c9f91}

.clinic_success{display: grid;
    /* grid-template-columns: 1fr 1fr; */
    grid-template-columns: repeat(auto-fit, calc(33.333% - 40px));
    justify-content: center;
    gap: 59px;
    padding-top: 10px;
    margin: 0 auto;
    margin-bottom: 40px;
    /*max-width: 684px;*/}
.clinic_success .clinic_successItem{background-color: white; border-radius: 4px; padding: 20px; box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.103); position: relative; overflow: hidden;}
.top_gradient{height: 8px; width: 100%; background: linear-gradient(77deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%); position: absolute; top: 0; left: 0;}
.clinic_successImg{text-align: center;}
.clinic_successImg img{max-width: 240px; width: 100%;}
.clinic_successImg img.revolutionImg{max-width: 160px;}
.clinic_success h3{text-align: center; font-size: 22px; color: #00546C; font-family: "noto_sans_cjk_jpbold", sans-serif; padding-bottom: 5px;}
.clinicTags{text-align: center; display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; margin-top: 20px; padding-bottom: 10px; padding-left: 20px; padding-right: 20px;}
.clinicTags a{display: inline-block; padding: 10px; text-decoration: none; border: #007E8F 1px solid; color: #1C1C1C; font-size: 14px; background-color: #F2F4F8; border-radius: 18px; transition: .2s all;}
.clinicTags a:hover{background-color: #007e8f; color: white;}
/*機能、リンクが無いボタン*/
.clinicTags span.trackrecord_nolink{display: inline-block; padding: 12px 18px; text-decoration: none; border: #007E8F 1px solid; color: #1C1C1C; font-size: 14px; background-color: #F2F4F8; border-radius: 20px; transition: .2s all;}

.Fee_structure{box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25); padding:60px 50px 65px 50px; background: linear-gradient(to bottom,  rgba(233,237,240,0.02) 0%,rgba(233,237,240,1) 100%); margin-top: 162px; position: relative; border-radius: 10px; text-align: center; margin-left: -50px; margin-right: -50px;}
.Fee_structure .base-btn{width: 100%; border-color: #00546C; color: #00546C;}
.Fee_structure .base-btn.font-large{font-size: 18px;}
.Fee_structure .base-btn svg path{stroke: #00546C;}
.Fee_structure .base-btn:hover{background: #007e8f; border-color: #007e8f; color: #ffffff;}
.Fee_structure .base-btn:hover svg path{stroke: #ffffff;}
.fee_structureBg{position: absolute; left: 0; top: 0; width: 100%; height: 100%; box-shadow:0px 0px 20px #a6b0bf41; border-radius: 10px;}

.Fee_structure h3{padding-top: 12px; padding-bottom: 17px;}
.Fee_structure p{font-size: 16px; color: #1C1C1C; line-height: 1.6; font-family: "noto_sans_cjk_jpmedium", sans-serif; padding:0 0 17px 0;}
.fee_price{font-size: 46px; color: #1C9F91; font-family: "noto_sans_cjk_jpbold", sans-serif; padding: 10px 0 0 0;}
.fee_price_month{font-size: 40px; color: #1C9F91; font-family: "noto_sans_cjk_jpbold", sans-serif; padding: 15px 0 6px 0;}
.fee_price span, .fee_price_month span{display: inline-block; line-height: 1;}
.fee_price small, .fee_price_month small{display: inline-block; font-size: 22px; line-height: 1;}
.Fee_structure .gmo_row{justify-content: center; gap: 30px;}
.Fee_structure h5{font-size: 14px;}
.clinic_successItemSub{background-color: #f6f6f6; border-radius: 4px; margin-bottom: 20px; padding:0 10px 15px 10px; margin-top: 5px;}
.clinic_successItemSub h5{font-size: 15px; color: #1C9F91; font-family: "noto_sans_cjk_jpbold", sans-serif; position: relative; top: -6px; padding-bottom: 4px;}
.clinic_successItemSub p{font-size: 12px; padding-bottom: 0;}
.Fee_structure .smallBtn{height: 48px;}
.Fee_structure .clinic_success .clinic_successItem{display: flex; flex-direction: column; justify-content: center; padding-top: 42px; padding-bottom: 25px; padding-left: 36px; padding-right: 36px;}
 
.customer_section{background-color: #f3f4f8; padding:82px 20px 158px 20px; overflow: hidden;}
.customer_section_header{display: grid; grid-template-columns: 424px 480px; justify-content: center; align-items: center; gap: 50px; padding-bottom: 50px;}
.customer_section_header p{display: table; margin-left: auto; margin-right: auto; font-size: 16px; font-family: "noto_sans_cjk_jpmedium", sans-serif; padding-top: 62px; line-height: 1.6;}
.contracted-accountsImg{position: relative; width: 100%; height: 272px; text-align: center; display: flex; justify-content: flex-end; align-items: center; flex-direction: column;}
.contracted-accountsImg img{position: absolute; z-index: 0;}
.contracted-accountsImg .contractedPrice{font-size: 128px; line-height: 1.01; font-weight: 600; position: relative; z-index: 1; padding: 0; font-family: "Montserrat", sans-serif; background: linear-gradient(90deg, #00546C -2.01%, #1C9F91 103.87%);  -webkit-background-clip: text; -webkit-text-fill-color: transparent;}
.contracted-accountsImg .contractedPrice small{font-size: 80px; line-height: .8;}
.contracted-accountsImg h3{position: relative; z-index: 1; color: #00546C; font-family: "noto_sans_cjk_jpbold", sans-serif; font-size: 28px;}
.contracted-accountsImg h2.title{position: relative; z-index: 1; font-size: 44px; margin-bottom: 0; line-height: 1;}

.customer_section .title{color: #00546C; margin-bottom: 70px;}
.support_systems{display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 60px; padding-top: 20px; text-align: center;}
.support_systemsItem{background-color: #f3f4f8; padding:30px 45px 15px 45px; border-radius: 8px; box-shadow:  #a6b0bf71 5px 5px 12px; position: relative;}
.support_systemsItemBg{position: absolute; left: 0; right: 0; top: 0; bottom: 0; box-shadow:  #FFFFFF -6.25px -6.25px 12px;}
.support_systems img{margin-bottom: 3px; position: relative;}
.support_systems p{line-height: 1.6; /*font-size: 15px;*/ padding: 8px 0; text-align: left; position: relative;}
.support_systems p small{font-size: 12px;}
.supportBtn{text-align: center; padding-top: 72px;}
.supportBtn .base-btn2.Peacock{margin-left: auto; margin-right: auto; font-size: 16px; background-color: #007E8F;}
.supportBtn .base-btn2.Peacock:hover{background-color: #1c9f91; border-color: #1c9f91;}
 
.seminar-sliderWrap{position: relative; padding-top: 20px; margin-bottom: 130px;}
.seminar-sliderBg{background-color: white; border-radius: 8px; position: absolute; left: calc(50% - 414px); max-width: 828px; width: 100%;  top: 0; bottom: 55px;}
.seminar-sliderWrap .swiper{height: auto; padding-top: 20px;}
.seminar-sliderWrap .swiper-button-next, .seminar-sliderWrap .swiper-button-prev{width: 100px; height: 100px; position: relative; float: left; outline: none; margin-top: 45px; }
.seminar-sliderWrap .swiper-button-next:after, .seminar-sliderWrap .swiper-button-prev:after{content: ''; background-image: url('../images/arrow-slide.svg'); background-repeat: no-repeat; width: 100px; height: 100px; display: block; background-size: contain; background-position: center;}
.seminar-sliderWrap .swiper-button-next:after{transform: rotate(180deg);}
/* .seminar-sliderWrap .swiper-button-next:hover:after, .seminar-sliderWrap .swiper-button-prev:hover:after{opacity: .8;} */
.seminar-sliderWrap .container{position: relative; margin-left: auto; margin-right: auto; width: 100%; max-width: 774px;}
.seminar-sliderWrap .container::after{display: block; content: ''; clear: both;}

.seminar-sliderBtn{position: absolute; bottom: 27px; right: 30px;}
.seminar-sliderBtn .base-btn2.Peacock{font-size: 16px; background-color: #007d8f; border-color: #007d8f;}
.seminar-sliderBtn .base-btn2.Peacock:hover{background-color: #1c9f91; border-color: #1c9f91;}

.seminar-sliderWrap .seminarSlidItem{border: #C8C8C8 1px solid; padding: 10px; border-radius: 8px; height: 100%;}
.seminar-sliderWrap .swiper-slide{border-radius: 8px; height: auto;}
.track-record-section .seminarSlidDetail h4 a{color: #00546C;}
.track-record-section .seminarSlidDetail h4 a.max-line{display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;}
.track-record-section .seminar-sliderWrap .seminarSlidItem{padding:32px 40px 12px 40px;  border: none;}
.track-record-section .swiper-slide img{height: 152px; object-fit: cover; border-radius: 0;}
.track-record-section .seminarSlidDetail{padding-left: 0; padding-right: 0;}
/*2024/07/01*/
.seminarSlidItem{position: relative;}
.seminarSlidItem a.full-slider-link{position: absolute; width: 100%; height: 100%; display: block; cursor: pointer; left: 0; top: 0;}

.track-record-section .seminarSlidItem{box-shadow: 0px 4px 20px hsla(0, 0%, 0%, 0.205);}
.track-record-section .seminarSlidItem:hover{box-shadow: 0px 4px 20px rgba(28, 159, 146, 0.40);}
.track-record-section .seminarSlidItem:hover .seminarSlidDetail h4 a{color: #1C9F91;}
.seminarSlidItem:hover .seminarSlidDetail.placeholder-data h4 a{color: #F2F4F8 !important; background: #F2F4F8 !important; background-color: #F2F4F8 !important; } 
.seminarSlideMNg .seminarSlidItem:hover .seminarSlidDetail.placeholder-data h4 a{ background: #F2F4F8 !important; -webkit-background-clip:unset !important; -webkit-text-fill-color:#F2F4F8;}
.seminarSlideMNg .seminarSlidItem .seminarSlidDetail.placeholder-data .slideBtn{opacity: 0;}

.seminarSlideMNg .seminarSlidItem{box-shadow: 0px 4px 20px hsla(0, 0%, 0%, 0.12);}
.seminarSlideMNg .seminarSlidItem:hover{box-shadow: 0px 4px 20px hsla(0, 0%, 0%, 0.12); border-color: #1C9F91;}
.seminarSlideMNg .seminarSlidItem:hover .seminarSlidDetail h4 a{background: linear-gradient(77deg, rgba(0,84,108,1) 0%, rgba(0,126,143,1) 28%, rgba(28,159,145,1) 90%);
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent;}
 
.seminarSlidItemThumb{margin-bottom: 20px;}
.seminarSlidItemThumb img{border-radius: 8px; height: 300px;}
.seminarSlidDetail{text-align: left; padding:0 20px 17px 20px;}
.seminarSlidDetail h4{font-size: 15px; line-height: 1.45; font-family: "noto_sans_cjk_jpbold", sans-serif; }
.seminarSlidDetail h4 a{color: #1C1C1C; text-decoration: none; min-height: 44px;}
.seminarSlidDetail h4 .clinicname{display: block; color: #333333; padding-top: 14px; font-family: "noto_sans_cjk_jpbold", sans-serif; font-size: 14px; line-height: 1.2; padding-bottom: 10px;}
.seminarSlidDetail .slideBtn a, 
.seminarSlidDetail h4 span.kamoku{display: inline-block; border: #606060 1px solid; color: black; text-decoration: none; padding:3px 8px 4px 8px; border-radius: 15px; font-family: "noto_sans_cjk_jp_regularRg", sans-serif; font-size: 12px; line-height: 1.35;}
.seminarSlidDetail .slideBtn{padding-top: 7px;}
/* .seminarSlidDetail .slideBtn a{display: inline-block; background-color: #F2F4F8; color: black; text-decoration: none; padding: 8px 9px; border-radius: 15px; font-size: 12px;} */
/*2004/07/01*/
.seminarSlidDetail .slideBtn{padding-top: 7px; display: flex; flex-wrap: wrap; gap: 8px;}

.introduction_section{background-color: white; padding:100px 20px 64px 20px; text-align: center; position: relative;}
.introduction_section .title{color: #00546C; padding-bottom: 70px;}
.introduction_section .title span{position: relative; display: inline-block;}
.introduction_section .title span::after{content: ''; display: block; margin: 0 auto; width: 80px; height: 1px;  margin-top: 10px;
	background-image: linear-gradient(to right, #1C9F91 10%, rgba(255, 255, 255, 0) 0%);
    background-position: top;
    background-size: 7px 2px;
    background-repeat: repeat-x;
}
.introduction_section .step-wrapper{
	display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 106px;
}
.step-wrapper .step-item{
	position: relative;
}
.step-wrapper .step-item p{
	padding-top: 32px;
	color: #00546C;
	font-family: 'noto-sans-cjk-jp';
    font-weight: 500;
}
.step-wrapper .step-item:nth-child(even){
	padding-top: 48px;
}
.step-item .step-indicator{
	position: absolute;
    width: 110px;
    height: 10px;
    left: 100%;
    top: 40px;
}
.step-item .step-indicator:after{
	content: '';
	background-image: url('../images/step-indicator.svg');
	background-repeat: no-repeat;
	background-size: 100%;
    width: 100%;
    height: 100%;
    position: relative;
    display: block;
}
.step-wrapper .step-item:nth-child(2) .step-indicator{
	top: 70px;
    width: 137px;
    left: 85%;
}
.step-wrapper .step-item:nth-child(2) .step-indicator:after{
	background-image: url('../images/step-indicator-rev.svg');
}
.step-wrapper .step-item:last-child .step-indicator{
	display: none;
}
.vision_section{background-color: #013445; background-size: cover; background-position: center; background-repeat: no-repeat; color: white; padding: 70px 20px 42px 20px; display: flex; align-items: center; overflow: hidden;}


.vision_section .container{max-width: 1252px;}
.vision_section .gmo_row{display: grid; grid-template-columns: 470px 1fr; gap: 50px; align-items: center;}
.vision_section img{width: 100%;}
.vision_section p{font-size: 16px; font-family: "Montserrat", sans-serif; font-weight: 500; padding: 37px 0 59px 0;}

.news_section{background-color: #f3f4f8; padding: 90px 20px 55px 20px;}
.news_section h3{font-size: 18px; font-family: "Montserrat", sans-serif; font-weight: 600; color: #00546C;}
.news_section .gmo_row{display: grid; grid-template-columns: 1fr 1fr; gap: 110px;}
.newsList{display: grid; height: 100%; gap: 0px; padding:21px 0 31px 0;}
.newsList .newsitem{border-bottom: #C8C8C8 1px solid; padding-top:14px;}

.newsList .newsMeta{font-size: 12px; line-height: 1.35; display: flex; gap: 5px;}
.newsList .newsMeta span{display: inline-block; margin-right: 5px;}
.newsList .tag-item a{text-decoration: none; color: #606060; background-color: white; font-size: 10px; padding: 2px; padding: 1px 8px; border-radius: 4px; display: inline-block;}
.newsList .newsitem p{font-size: 15px; line-height: 1.6;}
.newsList .newsitem p a{color: #1C1C1C; text-decoration: none;}
.news_section .base-btn2{font-size: 14px; width: 200px; height: 48px;} 

.meet_family_section{background-color: #FFFFFF; padding:36px 20px 16px 20px; color: #1C1C1C; text-align: center;}
.meet_family_section h3{text-align: center; font-family: "noto_sans_cjk_jpbold", sans-serif; font-size: 22px; color: #00546C;}
.meet_family_section .gmo_row{justify-content: center; gap: 40px; margin-bottom: 20px;}
.contact_label{font-size: 16px; font-family: "noto_sans_cjk_jpmedium", sans-serif; padding-bottom: 10px; padding-top: 21px;}
.meet_family_section h5{text-align: center; font-family: "Montserrat", sans-serif;  font-size: 18px; color: #00546C; font-weight: 600;}
.meet_family_section h5 a{color: #333333; text-decoration: none; display: inline-flex; align-items: center; justify-content: center; gap: 4px;}
.meet_family_section address{line-height: 1.35; font-size: 12px; text-align: center;}
.meet_family_section address small{font-size: 11px;}
.meet_family_section .base-btn2{height: 72px; width: 300px;}
.meet_family_section .base-btn{width: 300px; border-color: #007E8F; color: #007E8F; font-size: 18px;}
.meet_family_section .base-btn:hover{color: white;}
.meet_family_section  .base-btn.btn-gradient{width: 640px; margin-left: auto; margin-right: auto;}

/*Footer*/
footer{background-color: #f3f4f8; padding-top: 80px; padding-left: 20px; padding-right: 20px;}
.back-toTop{text-align: right; border-bottom: 1px solid #c8c8c8; font-family: "noto-sans-cjk-jp", sans-serif; padding-bottom: 14px; margin-bottom: 28px;}
.back-toTop a{text-decoration: none; color: #1C9F91; font-size: 12px; font-family: "noto_sans_cjk_jpmedium", sans-serif; display: flex; justify-content: flex-end; align-items: center; gap: 12px;} 

footer p{padding: 5px 0; font-size: 12px;}

.footCols{display: grid; grid-template-columns: 1fr 1fr 1fr 1fr 1fr; gap: 20px;}
.footCols ul li{padding: 1px 0;line-height: 1.2;display: block;border: none;text-align: left;padding: 0;}
.footCols a{color: #1c1c1c; text-decoration: none; font-size: 12px; font-family: "noto_sans_cjk_jp_regularRg", sans-serif; font-weight: 400; font-style: normal;}
.footCols .fcolHeading a{font-family: "noto_sans_cjk_jpmedium", sans-serif; color: #00546c;}
a:hover img{opacity: 0.8;}
.footerlogo{margin: 20px auto; padding: 20px 0;}
.footerlogo ul{width: 20px;height: 20px; padding: 2px 0; margin: 0 auto;}
.footerlogo img{height:18px;}
.footerlogo ul li img{height: 20px;margin: 20px 0;}
.copyright{padding: 5px 0;}

@media only screen and (min-width : 768px){
.footerlogo{display: flex;max-width: 1040px;margin: 0 auto; padding: 20px 0 20px 10px;}
.copyright{text-align: center; padding: 30px 0;}
.footerlogo ul{width: 20px;height: 20px; padding: 0; margin: 0 20px;}
.footerlogo ul li img{height: 20px;margin: 0;}

}

.RevolutionList{display: flex; justify-content: center; align-items: center; gap: 40px; padding: 40px 0;  font-family: "noto_sans_cjk_jp_regularRg", sans-serif; font-size: 14px; margin-bottom: 20px; text-decoration: none;}
.RevolutionList li::after{content: ''; width: 0px; display: inline-block; margin-left: 7px;
    height: 0px;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 4px solid #1C1B1F;}
footer .gmoLogo{padding-bottom: 23px;}
footer .gmoLogo .open_new{
	color: #333;
    font-size: 16px;
    margin-top: 8px;
    display: block;
}
footer .gmoLogo a.open_new::after{
  content: url("../images/open_in_new.svg");
  display: inline-block;
  font-size: 18px;
  margin-left: 14px;
  text-decoration: none;
  vertical-align: middle;
}

.certificate-logo{padding-top: 10px;}
.gmoFooterLogo{padding-top: 12px;}
.gmoFooterLogo ul li img{width: 20px; height: 20px;}

.gmoFooterLogo, .globalLogo{max-width: 234px;}

.footer_security{background-color: #f2f3f4; text-align: center; margin: 0;padding: 0;}
.servicesList{display: grid; grid-template-columns: 100px 100px 100px; justify-content: center; align-items: center; gap: 10px; padding: 40px 0;}
.servicesList img{ width: 100px !important; height:50px;}
.footer_security p{color: #858585; font-size: 9px; font-family: "noto_sans_cjk_jp_regularRg", sans-serif; font-weight: 400;}

.footer_bottom{background-color: #fefefe; padding: 30px 10px 10px 10px; margin-left: -20px; margin-right: -20px;}
.gmp_group_title{color: #4d4d4d; font-size: 14px; font-family: "noto_sans_cjk_jpbold", sans-serif; line-height: 1.5; margin-bottom: 5px; padding-top: 15px;}
.certificate-logo img{width: 100px;}

@media only screen and (min-width : 768px){
.mobile-base-btnWrap{display: none;}
.Fee_structure .clinic_success{gap: 92px; grid-template-columns: 296px 296px;}
.servicesList{display: grid; grid-template-columns: 100px 100px 100px; gap: 10px; padding: 40px 0;}
}
@media only screen and (min-width : 992px){
.mobileFootBottom{display: none;}
}


/*選ばれる理由 2024/07*/

.banner_header.title-style.reason .page-title-container{ height: 450px; align-items: flex-start;}
.banner_header.reason .gmo_row { position: relative;}
.banner_header.reason .gmo_row img { position: absolute; right: 10px; bottom: -213px; width: 66%;}
.banner_header.reason .gmo_col{ margin: 20px 60px 0px 24px;}
.banner_header.reason .gmo_col h1{ font-size: 34px; margin-bottom: 20px;}
.banner_header.reason .gmo_col  p{ font-size: 17px; font-weight: bold; color:#fff; line-height: 1.4;}

.develop_section{background-color: white; padding:100px 20px 64px 20px; text-align: center; position: relative;}
.develop_section.three_reason h2.title, .operation_section.three_reason h2.title{ position: relative;}
.reason h2 span, .three_reason h2 span { font-size: 23px; font-weight: bold; color: rgba(0, 84, 108, 1); margin-bottom: 40px;}
.develop_section.three_reason h2 span.reason_nmb, .operation_section.three_reason h2 span.reason_nmb{ position: absolute; top: -120px; left: 0; font-size: 150px; color:rgba(202, 226, 229, 1); font-family:"Montserrat", sans-serif;}
.operation_section.three_reason, .operation_section.reason, .other_section.reason{background-color: #f3f4f8; padding:100px 20px 50px 20px; overflow: hidden;}
.operation_section.three_reason .key_success { margin-top: 0;}
.operation_section.reason h2 span{ font-size: 30px;}
.operation_section{ color: rgba(0, 84, 108, 1); font-weight: bold;}

.three_reason h2 span::after{ display: none;}
.develop_section.three_reason{ text-align: left;}
.develop_section.three_reason .support_systemsItem{ display: flex;padding: 10px 5px 10px 30px;}
.develop_section.three_reason .support_systemsItem img{ width: 44%; width: auto; height: 110px; margin-right: 14px; margin: 20px 14px 0 0;}
.develop_section.three_reason .support_systemsItem .deve_txt{ width: auto;}

.develop_section.three_reason .support_systems p { padding-top: 0;}
.develop_section.three_reason .support_systems p.deve01{background:linear-gradient(90deg, #00546C -2.01%, #1C9F91 103.87%); -webkit-background-clip: text;-webkit-text-fill-color:transparent; font-size:34px; font-weight: bold; margin: 10px 0 10px 0; line-height: 1;}
.support_systems p.deve02{ font-size: 15px; padding: 0; line-height: 1.2; margin-bottom: 16px;}
.support_systems p.deve03{ font-size: 15px; }
.support_systems p.deve04{ font-size: 15px; line-height: 1.8; }
.support_systems p.deve02 span, .support_systems p.deve03 span{ font-size: 34px; line-height: 1; font-weight: 700;}
.three_reason p.reason_txt{ color: rgba(0, 84, 108, 1); font-weight: bold; margin-bottom: 20px;}

.other_section.reason .other_txt h3 { font-size: 30px;font-weight: 600;  z-index: 1; padding: 0; font-family: "Montserrat", sans-serif; background: linear-gradient(90deg, #00546C -2.01%, #1C9F91 103.87%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; width: 100%; text-align: center;margin-bottom: 20px;}

.other_section.reason .other_txt img{ width: 100%; }
p.annotation{ font-size: 11px;}
.other_section.reason .other03 { }
.other_section.reason .other03 .other03_con{ display: flex; flex-wrap: wrap; background-color: #fff; padding: 4%}
.other_section.reason .other03 h3{ width: 100%; font-size: 30px;}
.other_section.reason .other03 div div{ width: 30%;}
.other_section.reason .other03 div div.other03_txt { width: 64%; margin-right: 4%;}
.other_section.reason img.other_img{ margin-bottom: 60px;}

@media only screen and (min-width : 768px){
	.banner_header.title-style.reason .page-title-container{ align-items: center; align-content: center; height: 360px;}
	.banner_header.reason .gmo_row{ margin-bottom: 3%;width: 100%;}
	.banner_header.reason .gmo_row img { right: 10px; bottom: -200px; width: 50%;}
	
	.banner_header.reason .gmo_col{ margin: 20px 50% 0px 24px;}
	.banner_header.reason .gmo_col h1{ font-size: 40px; line-height: 1.5;}
	.banner_header.reason .gmo_col  p{ font-size: 20px; }
	
	.develop_section.three_reason{ padding: 140px 20px 90px 20px;}
	.develop_section.three_reason .container{ position: relative;}
	.develop_section.three_reason .management_tools img{ width: 56%; position: absolute; top: -72px; right: -30px;}
	.operation_section.reason, .other_section.reason{padding:140px 20px 10px 20px;}
  .other_section.reason img.other_img{ margin-bottom: 60px;}

	.develop_section.three_reason .support_systemsItem{ display: block; padding: 0 10px 10px 10px;}
	.support_systems p.deve01, .support_systems p.deve02, .support_systems p.deve03, .support_systems p.deve04 { text-align: center;}
	.develop_section.three_reason .support_systemsItem img { width: 90%; height: auto;}
	
	.other_section.reason .other03_img{ display: flex;}
	.other_section.reason .other03 div div{ width: 25%;}
	.other_section.reason .other03 div div.other03_txt { width: 70%; margin-right: 4%;}
	.other_section.reason .other03_img img{ width: 44%; height: auto;}
	.other_section.reason .other03_img img.pmark{ width: 100%; height: auto;}	
}
@media only screen and (min-width : 992px){
	.develop_section.three_reason .management_tools img{ width: 50%; }
}
/*Footer 診療科section*/

.medicalDepartment_ftr{display: flex; justify-content: center;margin: 30px 0;}
.medicalDepartment_ftr .departmentList
{
    display: grid;

    max-width: 952px;
    margin-left: 44px;

    grid-template-columns: repeat(auto-fill,116px);
    gap: 21px 23px;
}

.medicalDepartment_ftr .departmentList li
{
    height: 116px;
}

.medicalDepartment_ftr .departmentList .departmentBtn
{
    display: grid;

    width: 100%;
    height: 100%;
    padding: 0;

    cursor: pointer;
    transition: background-color .2s;

    border: 1px solid #f2f5f7;
    border: none;
    border-radius: 10px;
    background: #f2f5f7;
    box-shadow: 0 2px 2px 0 rgba(51, 51, 51, .25);

    grid-template-columns: 100%;
    grid-template-rows: 82px 1fr;
}

@media (hover:hover)
{
    .medicalDepartment_ftr .departmentList .departmentBtn:hover
    {
        border: 1px solid #66c5bb;
        background-color: #fff;
    }
}

.medicalDepartment_ftr .departmentList .departmentBtn::before
{
    width: 64px;
    height: 64px;

    content: '';

    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;

    grid-column: 1;
    grid-row: 1;
    justify-self: center;
    align-self: center;
}

.medicalDepartment_ftr .departmentList .departmentBtn span
{
    font-size: 12px;
    font-weight: 500;
    line-height: 1.08;

    padding-bottom: 8px;

    text-align: center;

    align-self: center;
}

.medicalDepartment_ftr .departmentList .departmentBtn1::before
{
    background-image: url('../images/products/department_icon1.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn2::before
{
    background-image: url('../images/products/department_icon2.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn3::before
{
    background-image: url('../images/products/department_icon3.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn4::before
{
    background-image: url('../images/products/department_icon4.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn5::before
{
    background-image: url('../images/products/department_icon5.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn6::before
{
    background-image: url('../images/products/department_icon6.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn7::before
{
    background-image: url('../images/products/department_icon7.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn8::before
{
    background-image: url('../images/products/department_icon8.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn9::before
{
    background-image: url('../images/products/department_icon9.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn10::before
{
    background-image: url('../images/products/department_icon10.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn11::before
{
    background-image: url('../images/products/department_icon11.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn12::before
{
    width: 66px;
    height: 67px;

    background-image: url('../images/products/department_icon12.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn13::before
{
    width: 44px;
    height: 51px;

    background-image: url('../images/products/department_icon13.svg');
}

.medicalDepartment_ftr .departmentList .departmentBtn14::before
{
    width: 41px;
    height: 45px;

    background-image: url('../images/products/department_icon14.svg');
}
@media only screen and (max-width: 767px)
{
.medicalDepartment_ftr .departmentList
    {
        display: grid;

        max-width: calc(calc(350/393) *100vw);
        margin-left: calc(calc(17/393) *100vw);

        grid-template-columns: repeat(4,1fr);
        gap: calc(calc(16/393) *100vw);
    }
    .medicalDepartment_ftr .departmentList li
    {
        height: calc(calc(76/393) *100vw);
    }
    .medicalDepartment_ftr .departmentList .departmentBtn
    {
        border: calc(calc(1/393) *100vw) solid #f2f5f7;
        border-radius: calc(calc(10/393) *100vw);
        background: #f2f5f7;
        box-shadow: 0 calc(calc(2/393) *100vw) calc(calc(2/393) *100vw) 0 rgba(51, 51, 51, .25);

        grid-template-rows: calc(calc(50/393) *100vw) 1fr;
    }
    .medicalDepartment_ftr .departmentList .departmentBtn::before
    {
        width: calc(calc(42/393) *100vw);
        height: calc(calc(42/393) *100vw);
    }
    .medicalDepartment_ftr .departmentList .departmentBtn span
    {
        font-size: calc(calc(10/393) *100vw);
        line-height: 1;

        padding-bottom: calc(calc(2/393) *100vw);
    }
    .medicalDepartment_ftr .departmentList .departmentBtn12::before
    {
        width: calc(calc(43/393) *100vw);
        height: calc(calc(44/393) *100vw);
    }
    .medicalDepartment_ftr .departmentList .departmentBtn13::before
    {
        width: calc(calc(28/393) *100vw);
        height: calc(calc(33/393) *100vw);
        margin-top: calc(calc(13/393) *100vw);

        align-self: start;
    }
    .medicalDepartment_ftr .departmentList .departmentBtn13 span
    {
        font-size: calc(calc(9/393) *100vw);
    }
    .medicalDepartment_ftr .departmentList .departmentBtn14::before
    {
        width: calc(calc(27/393) *100vw);
        height: calc(calc(29/393) *100vw);
        margin-top: calc(calc(18/393) *100vw);

        align-self: start;
    }
    .medicalDepartment_ftr .departmentList .departmentBtn14 span
    {
        font-size: calc(calc(9/393) *100vw);
    }
}
.gmoGroupSecurity a:link, .gmoGroupSecurity a:visited {
  font-size: 10px;
}

/*-----*/
