@charset "UTF-8";
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

.alignleft {
  @apply float-left mr-4 mb-4;
}

.alignright {
  @apply float-right ml-4 mb-4;
}

.aligncenter {
  @apply block mx-auto mb-4;
}

.alignwide {
  @apply w-full;
}

.alignfull {
  @apply w-screen relative left-1/2 right-1/2 -mx-[50vw];
}

img {
  @apply h-auto max-w-full;
}

table {
  @apply w-full border-collapse;
}

th,
td {
  @apply p-2 border border-secondary-300;
}

th {
  @apply bg-secondary-100 font-semibold;
}

@layer base {
  body {
    @apply font-sans text-secondary-900 leading-relaxed;
  }
  h1, h2, h3, h4, h5, h6 {
    @apply font-semibold leading-tight mb-4;
  }
  h1 {
    @apply text-4xl lg:text-5xl;
  }
  h2 {
    @apply text-3xl lg:text-4xl;
  }
  h3 {
    @apply text-2xl lg:text-3xl;
  }
  h4 {
    @apply text-xl lg:text-2xl;
  }
  h5 {
    @apply text-lg lg:text-xl;
  }
  h6 {
    @apply text-base lg:text-lg;
  }
  p {
    @apply mb-4 leading-relaxed;
  }
  a {
    @apply text-primary-600 hover:text-primary-800 transition-colors duration-200;
  }
  ul, ol {
    @apply mb-4 pl-6;
  }
  ul {
    @apply list-disc;
  }
  ol {
    @apply list-decimal;
  }
  li {
    @apply mb-2;
  }
  blockquote {
    @apply border-l-4 border-primary-500 pl-6 italic my-6 text-secondary-700;
  }
  code {
    @apply bg-secondary-100 px-2 py-1 rounded text-sm font-mono;
  }
  pre {
    @apply bg-secondary-900 text-secondary-100 p-4 rounded-lg overflow-x-auto my-6;
  }
  pre code {
    @apply bg-transparent p-0;
  }
  hr {
    @apply border-0 border-t border-secondary-300 my-8;
  }
  strong, b {
    @apply font-semibold;
  }
  em, i {
    @apply italic;
  }
  small {
    @apply text-sm text-secondary-600;
  }
}
.bold {
  font-weight: 700;
}

@layer base {
  input[type=text],
  input[type=email],
  input[type=url],
  input[type=password],
  input[type=search],
  input[type=tel],
  input[type=number],
  textarea,
  select {
    @apply w-full px-3 py-2 border border-secondary-300 rounded-md shadow-sm;
    @apply focus:outline-none focus:ring-2 focus:ring-primary-500 focus:border-primary-500;
    @apply transition-colors duration-200;
  }
  textarea {
    @apply resize-vertical min-h-[100px];
  }
  input[type=checkbox],
  input[type=radio] {
    @apply text-primary-600 focus:ring-primary-500 focus:ring-offset-0;
  }
  label {
    @apply block text-sm font-medium text-secondary-700 mb-1;
  }
  .required {
    @apply text-red-500;
  }
  .error {
    @apply text-red-600 text-sm mt-1;
  }
  .success {
    @apply text-green-600 text-sm mt-1;
  }
  .field-group {
    @apply mb-4;
  }
  .wp-block-search {
    @apply flex gap-2;
  }
  .wp-block-search__input {
    @apply flex-1;
  }
  .wp-block-search__button {
    @apply btn-primary;
  }
  .comment-form {
    @apply space-y-4;
  }
  .comment-form-comment textarea {
    @apply w-full;
  }
  .form-submit {
    @apply mt-4;
  }
  .form-submit input[type=submit] {
    @apply btn-primary;
  }
}
.site-header {
  @apply bg-white shadow-sm border-b border-secondary-200;
}
.site-header .header-container {
  @apply container-custom py-4;
}
.site-header .header-content {
  @apply flex items-center justify-between;
}
.site-header .site-branding {
  @apply flex items-center space-x-3;
}
.site-header .custom-logo {
  @apply h-10 w-auto;
}
.site-header .site-title {
  @apply text-2xl font-bold text-secondary-900 no-underline;
}
.site-header .site-description {
  @apply text-sm text-secondary-600;
}

.header-sticky {
  @apply fixed top-0 left-0 right-0 z-40 bg-white shadow-md;
  @apply transform -translate-y-full transition-transform duration-300;
}
.header-sticky.is-visible {
  @apply translate-y-0;
}

.site-footer {
  @apply bg-secondary-900 text-white;
}
.site-footer .footer-container {
  @apply container-custom py-12;
}
.site-footer .footer-widgets {
  @apply grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-8 mb-8;
}
.site-footer .footer-widget h3 {
  @apply text-lg font-semibold mb-4;
}
.site-footer .footer-widget ul {
  @apply space-y-2 list-none p-0;
}
.site-footer .footer-widget a {
  @apply text-secondary-300 hover:text-white transition-colors;
}
.site-footer .site-info {
  @apply border-t border-secondary-700 pt-8 text-center text-secondary-400;
}

.widget-area {
  @apply space-y-8;
}

.widget {
  @apply bg-white rounded-lg shadow-sm p-6;
}
.widget .widget-title {
  @apply text-lg font-semibold mb-4 pb-2 border-b border-secondary-200;
}
.widget ul {
  @apply space-y-2 list-none p-0;
}
.widget a {
  @apply text-secondary-700 hover:text-primary-600 transition-colors;
}

.widget_search .search-form {
  @apply flex gap-2;
}
.widget_search .search-field {
  @apply flex-1;
}
.widget_search .search-submit {
  @apply btn-primary;
}

.widget_recent_entries .post-date {
  @apply text-sm text-secondary-500;
}

.widget_categories .count,
.widget_archive .count {
  @apply text-secondary-500 text-sm;
}

.site-content {
  @apply container-custom py-8;
}

.content-area {
  @apply lg:col-span-2;
}

.sidebar {
  @apply lg:col-span-1;
}

.layout-sidebar .site-content {
  @apply grid grid-cols-1 lg:grid-cols-3 gap-8;
}

.layout-full-width .content-area {
  @apply col-span-full;
}

.posts-grid {
  @apply grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6;
}

.posts-list {
  @apply space-y-6;
}

.btn {
  @apply inline-flex items-center justify-center font-medium rounded-lg transition-colors focus:outline-none focus:ring-2 focus:ring-offset-2;
}
.btn.btn-sm {
  @apply px-3 py-1.5 text-sm;
}
.btn.btn-md {
  @apply px-4 py-2 text-base;
}
.btn.btn-lg {
  @apply px-6 py-3 text-lg;
}
.btn.btn-primary {
  @apply bg-blue-600 text-white hover:bg-blue-700 focus:ring-blue-500;
}
.btn.btn-secondary {
  @apply bg-gray-200 text-gray-900 hover:bg-gray-300 focus:ring-gray-500;
}
.btn.btn-success {
  @apply bg-green-600 text-white hover:bg-green-700 focus:ring-green-500;
}
.btn.btn-warning {
  @apply bg-orange-500 text-white hover:bg-orange-600 focus:ring-orange-500;
}
.btn.btn-danger {
  @apply bg-red-600 text-white hover:bg-red-700 focus:ring-red-500;
}
.btn.btn-outline-primary {
  @apply bg-transparent text-blue-600 border-2 border-blue-600 hover:bg-blue-600 hover:text-white focus:ring-blue-500;
}
.btn.btn-outline-secondary {
  @apply bg-transparent text-gray-700 border-2 border-gray-300 hover:bg-gray-50 focus:ring-gray-500;
}
.btn:disabled {
  @apply opacity-50 cursor-not-allowed;
}
.btn.btn-with-icon {
  @apply space-x-2;
}
.btn.btn-with-icon .btn-icon {
  @apply w-5 h-5;
}

.btn-large {
  @apply btn btn-lg;
}

.btn-small {
  @apply btn btn-sm;
}

.btn-block {
  @apply btn w-full justify-center;
}

.btn-icon {
  @apply btn flex items-center gap-2;
}

.btn-loading {
  @apply btn relative text-transparent;
}
.btn-loading::after {
  content: "";
  @apply absolute inset-0 flex items-center justify-center;
  @apply w-4 h-4 border-2 border-white border-t-transparent rounded-full animate-spin;
}

.btn-group {
  @apply flex;
}
.btn-group .btn {
  @apply rounded-none border-r-0;
}
.btn-group .btn:first-child {
  @apply rounded-l-md;
}
.btn-group .btn:last-child {
  @apply rounded-r-md border-r;
}

.wp-block-button {
  @apply inline-block;
}

.wp-block-button__link {
  @apply btn btn-primary no-underline;
}

.btn-header {
  @apply btn btn-md;
}
.btn-header.btn-header-primary {
  @apply btn-primary;
}
.btn-header.btn-header-success {
  @apply btn-success;
}
.btn-header.btn-header-warning {
  @apply btn-warning btn-with-icon;
}

.btn-mega-menu, .mega-menu-link-button, .mega-menu-top-link {
  color: #fff;
  background-color: #FF6C00;
  border: 1px solid #FF6C00;
  padding: 10px 20px;
  border-radius: 20px;
  font-size: 1rem;
  font-weight: 500;
  text-decoration: none;
  transition: background-color 0.3s ease;
  display: inline-block;
}
.btn-mega-menu:hover, .mega-menu-link-button:hover, .mega-menu-top-link:hover {
  background-color: #fff;
  color: #FF6C00;
  text-decoration: none;
}
.btn-mega-menu:focus, .mega-menu-link-button:focus, .mega-menu-top-link:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(255, 108, 0, 0.3);
}
.btn-mega-menu.btn-mega-menu-sm, .btn-mega-menu-sm.mega-menu-link-button, .btn-mega-menu-sm.mega-menu-top-link {
  padding: 8px 16px;
  font-size: 0.875rem;
  border-radius: 16px;
}
.btn-mega-menu.btn-mega-menu-lg, .btn-mega-menu-lg.mega-menu-link-button, .btn-mega-menu-lg.mega-menu-top-link {
  padding: 12px 24px;
  font-size: 1.125rem;
  border-radius: 24px;
}
@media (max-width: 768px) {
  .btn-mega-menu, .mega-menu-link-button, .mega-menu-top-link {
    padding: 8px 16px;
    font-size: 0.875rem;
    border-radius: 16px;
  }
}
@media (max-width: 480px) {
  .btn-mega-menu, .mega-menu-link-button, .mega-menu-top-link {
    padding: 6px 12px;
    font-size: 0.8rem;
    border-radius: 14px;
  }
}

.card-hover {
  @apply card hover-shadow hover-lift cursor-pointer;
}

.card-bordered {
  @apply card border border-secondary-200;
}

.card-elevated {
  @apply card shadow-lg;
}

.post-card {
  @apply card hover-shadow hover-lift;
}
.post-card .post-thumbnail {
  @apply w-full h-48 object-cover;
}
.post-card .post-title {
  @apply text-xl font-semibold mb-2;
}
.post-card .post-excerpt {
  @apply text-secondary-600 mb-4;
}
.post-card .post-meta {
  @apply text-sm text-secondary-500;
}

.main-navigation {
  @apply relative;
}
.main-navigation ul {
  @apply flex space-x-8 list-none p-0 m-0;
}
.main-navigation a {
  @apply text-secondary-700 hover:text-primary-600 font-medium no-underline;
  @apply transition-colors duration-200;
}
.main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a {
  @apply text-primary-600;
}
.main-navigation .sub-menu {
  @apply absolute top-full left-0 bg-white shadow-lg rounded-md py-2 min-w-[200px];
  @apply opacity-0 invisible transform -translate-y-2 transition-all duration-200;
}
.main-navigation .sub-menu a {
  @apply block px-4 py-2 text-sm hover:bg-secondary-50;
}
.main-navigation li:hover .sub-menu {
  @apply opacity-100 visible translate-y-0;
}

.menu-toggle {
  @apply btn-secondary lg:hidden;
}

.breadcrumbs {
  @apply flex items-center space-x-2 text-sm text-secondary-600 mb-6;
}
.breadcrumbs a {
  @apply hover:text-primary-600;
}
.breadcrumbs .separator {
  @apply text-secondary-400;
}

.modal {
  @apply fixed inset-0 z-50 flex items-center justify-center p-4;
  @apply bg-black bg-opacity-50 opacity-0 invisible;
  @apply transition-all duration-300;
}
.modal.active {
  @apply opacity-100 visible;
}

.modal-content {
  @apply bg-white rounded-lg shadow-xl max-w-lg w-full max-h-[90vh] overflow-y-auto;
  @apply transform scale-95 transition-transform duration-300;
}
.modal.active .modal-content {
  @apply scale-100;
}

.modal-header {
  @apply flex items-center justify-between p-6 border-b border-secondary-200;
}

.modal-title {
  @apply text-lg font-semibold;
}

.modal-close {
  @apply text-secondary-400 hover:text-secondary-600 text-2xl leading-none;
  @apply focus:outline-none;
}

.modal-body {
  @apply p-6;
}

.modal-footer {
  @apply flex justify-end space-x-3 p-6 border-t border-secondary-200;
}

.form-row {
  @apply grid grid-cols-1 md:grid-cols-2 gap-4 mb-4;
}

.form-group {
  @apply mb-4;
}

.form-inline {
  @apply flex items-center space-x-4;
}

.input-group {
  @apply relative;
}
.input-group .input-prefix,
.input-group .input-suffix {
  @apply absolute top-1/2 transform -translate-y-1/2 text-secondary-500;
}
.input-group .input-prefix {
  @apply left-3;
}
.input-group .input-suffix {
  @apply right-3;
}
.input-group input.has-prefix {
  @apply pl-10;
}
.input-group input.has-suffix {
  @apply pr-10;
}

.file-upload {
  @apply relative border-2 border-dashed border-secondary-300 rounded-lg p-6;
  @apply hover:border-primary-400 transition-colors;
}
.file-upload input[type=file] {
  @apply absolute inset-0 w-full h-full opacity-0 cursor-pointer;
}
.file-upload .upload-text {
  @apply text-center text-secondary-600;
}

.site-header {
  @apply bg-white shadow-sm;
}
.site-header .header-container {
  @apply container mx-auto px-4;
}
.site-header .header-main {
  @apply flex items-center justify-between h-16;
}
.site-header .logo-section {
  @apply flex items-center;
}
.site-header .logo-section .logo-container {
  @apply flex items-center space-x-2;
}
.site-header .logo-section .logo-container .logo-image {
  @apply h-8 w-auto;
}
.site-header .logo-section .logo-container .logo-text {
  @apply text-lg font-semibold text-gray-900;
}
.site-header .nav-primary {
  @apply hidden md:flex items-center space-x-8;
}
.site-header .nav-primary .nav-link {
  @apply text-gray-700 hover:text-blue-600 transition-colors;
}
.site-header .header-actions {
  @apply flex items-center space-x-4;
}
.site-header .header-actions .search-section {
  @apply hidden md:flex items-center;
}
.site-header .header-actions .search-section .search-container {
  @apply relative;
}
.site-header .header-actions .search-section .search-container .search-input {
  @apply pl-4 pr-10 py-2 border border-gray-300 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent;
}
.site-header .header-actions .search-section .search-container .search-button {
  @apply absolute right-2 top-1/2 transform -translate-y-1/2;
}
.site-header .header-actions .search-section .search-container .search-button .search-icon {
  @apply w-5 h-5 text-gray-400;
}
.site-header .header-actions .action-buttons {
  @apply hidden md:flex items-center space-x-2;
}
.site-header .header-actions .action-buttons .btn-info {
  @apply bg-blue-600 text-white px-4 py-2 rounded-lg hover:bg-blue-700 transition-colors;
}
.site-header .header-actions .action-buttons .btn-success {
  @apply bg-green-600 text-white px-4 py-2 rounded-lg hover:bg-green-700 transition-colors;
}
.site-header .header-actions .login-section {
  @apply flex items-center;
}
.site-header .header-actions .login-section .btn-login {
  @apply bg-orange-500 text-white px-4 py-2 rounded-lg hover:bg-orange-600 transition-colors flex items-center space-x-2;
}
.site-header .header-actions .login-section .btn-login .login-icon {
  @apply w-5 h-5;
}
.site-header .header-actions .mobile-menu-toggle {
  @apply md:hidden flex items-center justify-center w-8 h-8 text-gray-700;
}
.site-header .header-actions .mobile-menu-toggle .menu-icon {
  @apply w-6 h-6;
}
.site-header .nav-secondary {
  @apply border-t border-gray-200 py-3;
}
.site-header .nav-secondary .nav-secondary-container {
  @apply flex items-center justify-center space-x-8;
}
.site-header .nav-secondary .nav-secondary-container .nav-secondary-link {
  @apply text-gray-700 hover:text-blue-600 transition-colors border-b-2 border-transparent hover:border-blue-600 pb-1;
}

.hero-section {
  @apply relative h-screen bg-gray-100;
}
.hero-section .hero-background {
  @apply absolute inset-0;
}
.hero-section .hero-background .slider-container {
  @apply w-full h-full relative overflow-hidden;
}
.hero-section .hero-background .slider-container .slide {
  @apply absolute inset-0 w-full h-full transition-opacity duration-500;
}
.hero-section .hero-background .slider-container .slide.active {
  @apply opacity-100;
}
.hero-section .hero-background .slider-container .slide:not(.active) {
  @apply opacity-0;
}
.hero-section .hero-background .slider-container .slide .slide-image {
  @apply w-full h-full object-cover;
}
.hero-section .hero-background .slider-container .slide .slide-overlay {
  @apply absolute inset-0 bg-black bg-opacity-30;
}
.hero-section .hero-background .slider-navigation {
  @apply absolute bottom-8 left-1/2 transform -translate-x-1/2 flex space-x-2;
}
.hero-section .hero-background .slider-navigation .nav-dot {
  @apply w-3 h-3 rounded-full bg-white transition-opacity;
}
.hero-section .hero-background .slider-navigation .nav-dot.active {
  @apply opacity-100;
}
.hero-section .hero-background .slider-navigation .nav-dot:not(.active) {
  @apply opacity-50 hover:opacity-100;
}
.hero-section .hero-content {
  @apply absolute inset-0 flex items-center justify-center text-center text-white z-10;
}
.hero-section .hero-content .hero-title {
  @apply text-4xl md:text-6xl font-bold mb-4;
}
.hero-section .hero-content .hero-subtitle {
  @apply text-xl md:text-2xl mb-8;
}
.hero-section .hero-content .hero-actions {
  @apply flex flex-col md:flex-row gap-4 justify-center;
}
.hero-section .hero-content .hero-actions .btn-hero-primary {
  @apply bg-blue-600 text-white px-8 py-3 rounded-lg hover:bg-blue-700 transition-colors font-semibold;
}
.hero-section .hero-content .hero-actions .btn-hero-secondary {
  @apply bg-transparent text-white px-8 py-3 rounded-lg border-2 border-white hover:bg-white hover:text-gray-900 transition-colors font-semibold;
}

.services-section {
  @apply py-16 bg-white;
}
.services-section .services-container {
  @apply container mx-auto px-4;
}
.services-section .services-grid {
  @apply grid grid-cols-1 md:grid-cols-3 gap-8 max-w-6xl mx-auto;
}
.services-section .service-card {
  @apply group cursor-pointer;
}
.services-section .service-card .service-card-inner {
  @apply bg-white border border-gray-200 rounded-lg p-8 text-center hover:shadow-lg transition-shadow duration-300;
}
.services-section .service-card .service-content {
  @apply mb-6;
}
.services-section .service-card .service-content .service-title {
  @apply text-xl font-bold text-gray-900 mb-2;
}
.services-section .service-card .service-content .service-subtitle {
  @apply text-sm text-gray-600;
}
.services-section .service-card .service-content .service-title-with-icon {
  @apply flex items-center justify-center mb-2;
}
.services-section .service-card .service-content .service-title-with-icon .service-icon {
  @apply w-6 h-6 mr-2;
}
.services-section .service-card .service-content .service-title-with-icon .service-title-text {
  @apply text-lg font-bold text-gray-900;
}
.services-section .service-card .service-content .service-icon-gradient {
  @apply w-6 h-6 bg-gradient-to-r from-pink-500 to-purple-500 rounded-full mr-2;
}
.services-section .service-card .service-image-container {
  @apply flex justify-center;
}
.services-section .service-card .service-image-container .service-image {
  height: 81px;
  width: auto;
  display: inline-flex;
}

.service-card--specialized .service-card-inner {
  @apply border-blue-200 hover:border-blue-300;
}

.service-card--publication .service-card-inner {
  @apply border-green-200 hover:border-green-300;
}

.service-card--career .service-card-inner {
  @apply border-purple-200 hover:border-purple-300;
}

.mobile-menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  z-index: 998;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.mobile-menu-container {
  position: fixed;
  top: var(--header-height, 80px);
  right: 0;
  width: 100%;
  max-width: 400px;
  height: calc(100% - var(--header-height, 80px));
  background-color: #fff;
  z-index: 999;
  transform: translateX(100%);
  transition: transform 0.3s ease;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
@media (max-width: 400px) {
  .mobile-menu-container {
    max-width: 100%;
  }
}
.mobile-menu.is-open .mobile-menu-overlay {
  opacity: 1;
  visibility: visible;
}
.mobile-menu.is-open .mobile-menu-container {
  transform: translateX(0);
  overflow-x: hidden;
}
.mobile-menu-close {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  width: 100%;
  padding: 1rem 1.5rem;
  background: none;
  border: none;
  border-bottom: 1px solid #e5e7eb;
  cursor: pointer;
  color: #374151;
  font-size: 1rem;
  font-weight: 500;
  transition: color 0.2s ease;
}
.mobile-menu-close:hover {
  color: #000;
}
.mobile-menu-close svg {
  width: 1.5rem;
  height: 1.5rem;
}

.mobile-menu-nav {
  padding: 1rem 0;
}

.mobile-search-section {
  padding: 1rem 1.5rem;
  border-bottom: 1px solid #e5e7eb;
}

.mobile-search-form {
  display: flex;
  align-items: center;
  position: relative;
}

.mobile-search-input {
  flex: 1;
  padding: 0.75rem 1rem;
  padding-right: 3rem;
  border: 1px solid #d1d5db;
  border-radius: 0.5rem;
  font-size: 1rem;
  outline: none;
  transition: border-color 0.2s ease;
}
.mobile-search-input:focus {
  border-color: #3b82f6;
}
.mobile-search-input::placeholder {
  color: #9ca3af;
}

.mobile-search-button {
  position: absolute;
  right: 0.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  background: none;
  border: none;
  cursor: pointer;
  color: #6b7280;
}
.mobile-search-button svg {
  width: 1.25rem;
  height: 1.25rem;
}

.mobile-menu-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.mobile-menu-item {
  border-bottom: 1px solid #e5e7eb;
}
.mobile-menu-item.has-submenu {
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.mobile-menu-item.has-submenu .mobile-menu-link {
  flex: 1;
  padding-right: 0.5rem;
}
.mobile-menu-item.has-submenu.is-open .mobile-submenu {
  width: 100%;
}

.mobile-menu-link {
  display: block;
  padding: 0.7rem 1.5rem;
  color: #374151;
  text-decoration: none;
  font-size: 1rem;
  font-weight: 500;
  transition: background-color 0.2s ease;
}
.mobile-menu-link:hover {
  background-color: #f3f4f6;
}

.submenu-toggle {
  width: 3rem;
  height: 3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  cursor: pointer;
  color: #6b7280;
  transition: background-color 0.2s ease;
  flex-shrink: 0;
}
.submenu-toggle:hover {
  background-color: #f3f4f6;
}
.submenu-toggle svg {
  width: 0.75rem;
  height: 0.5rem;
  transition: transform 0.2s ease;
}
.submenu-toggle.is-open svg {
  transform: rotate(180deg);
}

.mobile-submenu {
  display: none;
  background-color: #f9fafb;
}
.mobile-submenu.is-open {
  display: block;
  animation: slideDown 0.3s ease;
}
.mobile-submenu .mobile-submenu-category {
  padding: 0.75rem 1.5rem 0.5rem 2rem;
  border-bottom: 1px solid #e5e7eb;
}
.mobile-submenu .mobile-submenu-category:last-child {
  border-bottom: none;
}
.mobile-submenu .category-title {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  color: #6b7280;
  margin-bottom: 0.5rem;
}
.mobile-submenu .mobile-submenu-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.mobile-submenu .mobile-submenu-list li a {
  display: block;
  padding: 0.625rem 1rem;
  color: #4b5563;
  text-decoration: none;
  font-size: 0.9375rem;
  transition: background-color 0.2s ease;
  border-radius: 0.25rem;
}
.mobile-submenu .mobile-submenu-list li a:hover {
  background-color: #e5e7eb;
}
.mobile-submenu > li {
  list-style: none;
}
.mobile-submenu > li > a {
  display: block;
  padding: 0.875rem 2rem;
  color: #4b5563;
  text-decoration: none;
  font-size: 0.9375rem;
  transition: background-color 0.2s ease;
  border-bottom: 1px solid #e5e7eb;
}
.mobile-submenu > li > a:hover {
  background-color: #e5e7eb;
}
.mobile-submenu > li:last-child > a {
  border-bottom: none;
}

.mobile-menu-actions {
  padding: 1.5rem;
  border-top: 1px solid #e5e7eb;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.mobile-action-button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.875rem 1.5rem;
  border-radius: 0.5rem;
  font-weight: 600;
  text-decoration: none;
  transition: opacity 0.2s ease;
}
.mobile-action-button:hover {
  opacity: 0.9;
}
.mobile-action-button.mobile-action-info {
  background-color: #3b82f6;
  color: #fff;
}
.mobile-action-button.mobile-action-success {
  background-color: #10b981;
  color: #fff;
}
.mobile-action-button.mobile-action-login {
  background-color: #ff6c02;
  color: #fff;
  gap: 0.5rem;
}
.mobile-action-button.mobile-action-login svg {
  width: 1.25rem;
  height: 1.25rem;
}

.mobile-menu-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  background: none;
  border: none;
  cursor: pointer;
  margin-left: 1rem;
  position: relative;
}
@media (max-width: 1199px) {
  .mobile-menu-toggle {
    display: flex;
    margin-top: -4px;
  }
}
.mobile-menu-toggle .hamburger {
  width: 24px;
  height: 20px;
  position: relative;
  display: block;
}
.mobile-menu-toggle .hamburger-line {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: #374151;
  border-radius: 2px;
  left: 0;
  transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.mobile-menu-toggle .hamburger-line-top {
  top: 0;
}
.mobile-menu-toggle .hamburger-line-middle {
  top: 50%;
  transform: translateY(-50%);
}
.mobile-menu-toggle .hamburger-line-bottom {
  bottom: 0;
}
.mobile-menu-toggle.is-active .hamburger-line-top {
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}
.mobile-menu-toggle.is-active .hamburger-line-middle {
  opacity: 0;
}
.mobile-menu-toggle.is-active .hamburger-line-bottom {
  bottom: 50%;
  transform: translateY(50%) rotate(-45deg);
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-0.5rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 1199px) {
  .header-nav-search,
  .nav-secondary,
  .action-buttons {
    display: none !important;
  }
  .login-section .btn-login {
    display: none;
  }
  .header-service .header-nav {
    display: none !important;
  }
}
body.mobile-menu-open {
  overflow: hidden;
  position: fixed;
  width: 100%;
  height: 100%;
}

@layer utilities {
  .section-spacing {
    @apply py-16 lg:py-24;
  }
  .section-spacing-sm {
    @apply py-8 lg:py-12;
  }
  .section-spacing-lg {
    @apply py-24 lg:py-32;
  }
  .content-spacing > * + * {
    @apply mt-6;
  }
  .content-spacing-sm > * + * {
    @apply mt-4;
  }
  .content-spacing-lg > * + * {
    @apply mt-8;
  }
}
@layer utilities {
  .bg-gradient-primary {
    @apply bg-gradient-to-r from-primary-500 to-primary-700;
  }
  .bg-gradient-secondary {
    @apply bg-gradient-to-r from-secondary-500 to-secondary-700;
  }
  .text-muted {
    @apply text-secondary-600;
  }
  .text-light {
    @apply text-secondary-400;
  }
  .border-light {
    @apply border-secondary-200;
  }
  .border-muted {
    @apply border-secondary-300;
  }
}
.color-red {
  color: #A81765;
}

@layer utilities {
  .animate-fade-in-up {
    @apply animate-slide-up;
  }
  .hover-scale {
    @apply transition-transform duration-300 hover:scale-105;
  }
  .hover-rotate {
    @apply transition-transform duration-300 hover:rotate-3;
  }
  .loading-dots::after {
    content: "";
    @apply inline-block w-4 h-4 ml-2;
    animation: loading-dots 1.4s infinite ease-in-out;
  }
  @keyframes loading-dots {
    0%, 80%, 100% {
      transform: scale(0);
    }
    40% {
      transform: scale(1);
    }
  }
  .pulse-slow {
    animation: pulse 3s cubic-bezier(0.4, 0, 0.6, 1) infinite;
  }
}
.page-nursing-training .point-box {
  background: #fffde7;
  padding: 20px;
  margin: 20px;
  display: grid;
  grid-template-columns: 1fr;
  width: 100%;
  margin: 20px auto;
  max-width: 1000px;
}

.page-nursing-training .point-box ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.page-nursing-training .point-box ul li {
  font-size: 17px;
  font-size: 1.0625rem;
  font-weight: 500;
}

.row {
  box-sizing: border-box;
  display: flex;
  flex: 0 1 auto;
  flex-direction: row;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
}

.col-xs-4 {
  flex-basis: 33.33333333%;
  max-width: 33.33333%;
}

.col-xs, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-offset-0, .col-xs-offset-1, .col-xs-offset-10, .col-xs-offset-11, .col-xs-offset-12, .col-xs-offset-2, .col-xs-offset-3, .col-xs-offset-4, .col-xs-offset-5, .col-xs-offset-6, .col-xs-offset-7, .col-xs-offset-8, .col-xs-offset-9 {
  box-sizing: border-box;
  flex: 0 0 auto;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.container {
  margin-right: auto;
  margin-left: auto;
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-right: 2rem;
  padding-left: 2rem;
}

.row {
  box-sizing: border-box;
  display: flex;
  flex: 0 1 auto;
  flex-direction: row;
  flex-wrap: wrap;
  margin-right: -0.5rem;
  margin-left: -0.5rem;
}
.row.no-gap {
  margin: 0;
}
.row.no-gap div[class^=col-] {
  padding: 0;
}
.row.gap15 {
  margin-right: -7.5px;
  margin-left: -7.5px;
}
.row.gap15 div[class^=col-] {
  padding-right: 7.5px;
  padding-left: 7.5px;
}
.row.gap20 {
  margin-right: -10px;
  margin-left: -10px;
}
.row.gap20 div[class^=col-] {
  padding-right: 10px;
  padding-left: 10px;
}
.row.gap30 {
  margin-right: -15px;
  margin-left: -15px;
}
.row.gap30 div[class^=col-] {
  padding-right: 15px;
  padding-left: 15px;
}
.row.gap40 {
  margin-right: -20px;
  margin-left: -20px;
}
.row.gap40 div[class^=col-] {
  padding-right: 20px;
  padding-left: 20px;
}
.row.gap80 {
  margin-right: -40px;
  margin-left: -40px;
}
.row.gap80 div[class^=col-] {
  padding-right: 40px;
  padding-left: 40px;
}
.row.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.col.reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

.col-xs,
.col-xs-1,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-offset-0,
.col-xs-offset-1,
.col-xs-offset-10,
.col-xs-offset-11,
.col-xs-offset-12,
.col-xs-offset-2,
.col-xs-offset-3,
.col-xs-offset-4,
.col-xs-offset-5,
.col-xs-offset-6,
.col-xs-offset-7,
.col-xs-offset-8,
.col-xs-offset-9 {
  box-sizing: border-box;
  flex: 0 0 auto;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.col-xs {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  max-width: 100%;
}

.col-xs-1 {
  -ms-flex-preferred-size: 8.33333333%;
  flex-basis: 8.33333333%;
  max-width: 8.33333%;
}

.col-xs-2 {
  -ms-flex-preferred-size: 16.66666667%;
  flex-basis: 16.66666667%;
  max-width: 16.66667%;
}

.col-xs-3 {
  -ms-flex-preferred-size: 25%;
  flex-basis: 25%;
  max-width: 25%;
}

.col-xs-4 {
  -ms-flex-preferred-size: 33.33333333%;
  flex-basis: 33.33333333%;
  max-width: 33.33333%;
}

.col-xs-5 {
  -ms-flex-preferred-size: 41.66666667%;
  flex-basis: 41.66666667%;
  max-width: 41.66667%;
}

.col-xs-6 {
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  max-width: 50%;
}

.col-xs-7 {
  -ms-flex-preferred-size: 58.33333333%;
  flex-basis: 58.33333333%;
  max-width: 58.33333%;
}

.col-xs-8 {
  -ms-flex-preferred-size: 66.66666667%;
  flex-basis: 66.66666667%;
  max-width: 66.66667%;
}

.col-xs-9 {
  -ms-flex-preferred-size: 75%;
  flex-basis: 75%;
  max-width: 75%;
}

.col-xs-10 {
  -ms-flex-preferred-size: 83.33333333%;
  flex-basis: 83.33333333%;
  max-width: 83.33333%;
}

.col-xs-11 {
  -ms-flex-preferred-size: 91.66666667%;
  flex-basis: 91.66666667%;
  max-width: 91.66667%;
}

.col-xs-12 {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  max-width: 100%;
}

.col-xs-offset-0 {
  margin-left: 0;
}

.col-xs-offset-1 {
  margin-left: 8.33333%;
}

.col-xs-offset-2 {
  margin-left: 16.66667%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-offset-4 {
  margin-left: 33.33333%;
}

.col-xs-offset-5 {
  margin-left: 41.66667%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-offset-7 {
  margin-left: 58.33333%;
}

.col-xs-offset-8 {
  margin-left: 66.66667%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-offset-10 {
  margin-left: 83.33333%;
}

.col-xs-offset-11 {
  margin-left: 91.66667%;
}

.start-xs {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  text-align: start;
}

.center-xs {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
}

.end-xs {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  text-align: end;
}

.top-xs {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.middle-xs {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.bottom-xs {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.around-xs {
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.between-xs {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.first-xs {
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
}

.last-xs {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

@media only screen and (min-width: 48em) {
  .container {
    width: 49rem;
  }
  .col-sm,
  .col-sm-1,
  .col-sm-10,
  .col-sm-11,
  .col-sm-12,
  .col-sm-2,
  .col-sm-3,
  .col-sm-4,
  .col-sm-5,
  .col-sm-6,
  .col-sm-7,
  .col-sm-8,
  .col-sm-9,
  .col-sm-offset-0,
  .col-sm-offset-1,
  .col-sm-offset-10,
  .col-sm-offset-11,
  .col-sm-offset-12,
  .col-sm-offset-2,
  .col-sm-offset-3,
  .col-sm-offset-4,
  .col-sm-offset-5,
  .col-sm-offset-6,
  .col-sm-offset-7,
  .col-sm-offset-8,
  .col-sm-offset-9 {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .col-sm {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%;
  }
  .col-sm-1 {
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333%;
  }
  .col-sm-2 {
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66667%;
  }
  .col-sm-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333%;
  }
  .col-sm-5 {
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66667%;
  }
  .col-sm-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333%;
  }
  .col-sm-8 {
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66667%;
  }
  .col-sm-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333%;
  }
  .col-sm-11 {
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66667%;
  }
  .col-sm-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }
  .col-sm-offset-0 {
    margin-left: 0;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66667%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66667%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66667%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66667%;
  }
  .start-sm {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start;
  }
  .center-sm {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }
  .end-sm {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end;
  }
  .top-sm {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .middle-sm {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .bottom-sm {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  .around-sm {
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }
  .between-sm {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .first-sm {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
  }
  .last-sm {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}
@media only screen and (min-width: 64em) {
  .container {
    width: 65rem;
  }
  .col-md,
  .col-md-1,
  .col-md-10,
  .col-md-11,
  .col-md-12,
  .col-md-2,
  .col-md-3,
  .col-md-4,
  .col-md-5,
  .col-md-6,
  .col-md-7,
  .col-md-8,
  .col-md-9,
  .col-md-offset-0,
  .col-md-offset-1,
  .col-md-offset-10,
  .col-md-offset-11,
  .col-md-offset-12,
  .col-md-offset-2,
  .col-md-offset-3,
  .col-md-offset-4,
  .col-md-offset-5,
  .col-md-offset-6,
  .col-md-offset-7,
  .col-md-offset-8,
  .col-md-offset-9 {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .col-md {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%;
  }
  .col-md-1 {
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333%;
  }
  .col-md-2 {
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66667%;
  }
  .col-md-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
  }
  .col-md-4 {
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333%;
  }
  .col-md-5 {
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66667%;
  }
  .col-md-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }
  .col-md-7 {
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333%;
  }
  .col-md-8 {
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66667%;
  }
  .col-md-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%;
  }
  .col-md-10 {
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333%;
  }
  .col-md-11 {
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66667%;
  }
  .col-md-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }
  .col-md-offset-0 {
    margin-left: 0;
  }
  .col-md-offset-1 {
    margin-left: 8.33333%;
  }
  .col-md-offset-2 {
    margin-left: 16.66667%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333%;
  }
  .col-md-offset-5 {
    margin-left: 41.66667%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333%;
  }
  .col-md-offset-8 {
    margin-left: 66.66667%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333%;
  }
  .col-md-offset-11 {
    margin-left: 91.66667%;
  }
  .start-md {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start;
  }
  .center-md {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }
  .end-md {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end;
  }
  .top-md {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .middle-md {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .bottom-md {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  .around-md {
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }
  .between-md {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .first-md {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
  }
  .last-md {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}
@media only screen and (min-width: 74rem) {
  .container {
    width: 75rem;
  }
  .col-lg,
  .col-lg-1,
  .col-lg-10,
  .col-lg-11,
  .col-lg-12,
  .col-lg-2,
  .col-lg-3,
  .col-lg-4,
  .col-lg-5,
  .col-lg-6,
  .col-lg-7,
  .col-lg-8,
  .col-lg-9,
  .col-lg-offset-0,
  .col-lg-offset-1,
  .col-lg-offset-10,
  .col-lg-offset-11,
  .col-lg-offset-12,
  .col-lg-offset-2,
  .col-lg-offset-3,
  .col-lg-offset-4,
  .col-lg-offset-5,
  .col-lg-offset-6,
  .col-lg-offset-7,
  .col-lg-offset-8,
  .col-lg-offset-9 {
    box-sizing: border-box;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .col-lg {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    max-width: 100%;
  }
  .col-lg-1 {
    -ms-flex-preferred-size: 8.33333333%;
    flex-basis: 8.33333333%;
    max-width: 8.33333%;
  }
  .col-lg-2 {
    -ms-flex-preferred-size: 16.66666667%;
    flex-basis: 16.66666667%;
    max-width: 16.66667%;
  }
  .col-lg-3 {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    -ms-flex-preferred-size: 33.33333333%;
    flex-basis: 33.33333333%;
    max-width: 33.33333%;
  }
  .col-lg-5 {
    -ms-flex-preferred-size: 41.66666667%;
    flex-basis: 41.66666667%;
    max-width: 41.66667%;
  }
  .col-lg-6 {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    -ms-flex-preferred-size: 58.33333333%;
    flex-basis: 58.33333333%;
    max-width: 58.33333%;
  }
  .col-lg-8 {
    -ms-flex-preferred-size: 66.66666667%;
    flex-basis: 66.66666667%;
    max-width: 66.66667%;
  }
  .col-lg-9 {
    -ms-flex-preferred-size: 75%;
    flex-basis: 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    -ms-flex-preferred-size: 83.33333333%;
    flex-basis: 83.33333333%;
    max-width: 83.33333%;
  }
  .col-lg-11 {
    -ms-flex-preferred-size: 91.66666667%;
    flex-basis: 91.66666667%;
    max-width: 91.66667%;
  }
  .col-lg-12 {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
  }
  .col-lg-offset-0 {
    margin-left: 0;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66667%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66667%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66667%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66667%;
  }
  .start-lg {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    text-align: start;
  }
  .center-lg {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }
  .end-lg {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    text-align: end;
  }
  .top-lg {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .middle-lg {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .bottom-lg {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  .around-lg {
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }
  .between-lg {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .first-lg {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
  }
  .last-lg {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
}
.management_ladder .service-page-header {
  margin: auto calc(50% - 50vw) 24px;
  background-color: #FBD9E0;
  background-image: none;
  padding: 0;
}
@media (max-width: 768px) {
  .management_ladder .service-page-header {
    height: 455px;
  }
}
.management_ladder .service-page-header .entry-header {
  background: url("../../src/img/optimized/management_ladder/management_ladder-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
}
@media (max-width: 768px) {
  .management_ladder .service-page-header .entry-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/management_ladder/management_ladder-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
    height: 455px;
  }
}
.management_ladder-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  max-width: 1200px;
  margin: 30px auto 60px;
  padding: 30px 25px;
  background-color: #FAF2F2;
}
@media (max-width: 991px) {
  .management_ladder-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    padding: 30px 10px;
  }
}
@media (max-width: 575px) {
  .management_ladder-grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }
}
.management_ladder-grid-item {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 15px;
  border: 1px solid #707070;
  gap: 10px;
}
.management_ladder-grid-item h4 {
  font-size: 21px;
  font-weight: 700;
  color: #A81765;
  text-align: center;
}
.management_ladder-grid-item p {
  font-size: 16px;
  color: #666;
  margin-bottom: 0;
}
.management_ladder-content {
  padding: 25px;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.management_ladder-footer {
  background: #f8f9fa;
  padding: 100px 0;
  margin-top: 100px;
}
.management_ladder-footer-content {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  padding: 0 20px;
}
.management_ladder-footer-title {
  font-size: 2rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 20px;
}
.management_ladder-footer-text {
  color: #666;
  line-height: 1.8;
  margin-bottom: 40px;
}
.management_ladder-footer-buttons {
  display: flex;
  gap: 20px;
  justify-content: center;
  flex-wrap: wrap;
}
.management_ladder-footer-button {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 15px 30px;
  font-size: 1.1rem;
  font-weight: 600;
  text-decoration: none;
  border-radius: 30px;
  transition: all 0.3s ease;
}
.management_ladder-footer-button.primary {
  background: #2e87cd;
  color: white;
}
.management_ladder-footer-button.primary:hover {
  background: rgb(36.6533864542, 107.5697211155, 163.3466135458);
}
.management_ladder-footer-button.secondary {
  background: #f0f4f8;
  color: #333;
}
.management_ladder-footer-button.secondary:hover {
  background: rgb(222.6136363636, 231.25, 239.8863636364);
}

.left-block-title--management_ladder {
  border-left: 10px solid #A81765;
}

.point-title-management_ladder {
  font-size: 1.5rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 15px;
  line-height: 1.4;
  border-bottom: 2px solid #A81765;
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 4px;
  width: 100%;
}

@media (max-width: 768px) {
  .management_ladder .point-title-box-item {
    background-color: #A81765;
  }
}

.point-description-management_ladder {
  color: #666;
  line-height: 1.6;
  font-size: 0.95rem;
}

.point-number-management_ladder {
  background: linear-gradient(135deg, #2e87cd, #4a9de0);
  color: white;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  font-weight: 700;
  flex-shrink: 0;
}

.management_ladder .voice-box-item-title-main {
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.62;
  letter-spacing: 0.02em;
  margin-bottom: 15px;
  color: #A81765;
}
.management_ladder .voice-box-item-title-main::after {
  content: "";
  border-bottom: 2px solid #A81765;
  width: 100%;
  display: block;
  margin-top: 15px;
}
.management_ladder .voice-box-item-img img {
  margin-bottom: 6px;
}
.management_ladder .voice-box-item-img dl dt {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.62;
  letter-spacing: 0.02em;
  margin-bottom: 0;
}
.management_ladder .voice-box-item-img dl dd {
  font-size: 0.875rem;
  line-height: 1.71;
  letter-spacing: 0.04em;
  margin-bottom: 0;
}
.management_ladder .voice-box-item-title {
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.62;
  letter-spacing: 0.02em;
  margin-bottom: 10px;
  color: #A81765;
}
.management_ladder .voice-box-item-text {
  font-size: 1rem;
  line-height: 1.62;
  letter-spacing: 0.02em;
  margin-bottom: 10px;
}
.management_ladder .voice-box-item-content-title {
  font-weight: 700;
  line-height: 1.69;
  letter-spacing: 0.04em;
}
.management_ladder .voice-box-item-content-text p {
  margin-bottom: 1em;
  font-size: 1rem;
  line-height: 1.69;
  letter-spacing: 0.04em;
}
.management_ladder .voice-box-item-content-text p:last-child {
  margin-bottom: 0;
}
.management_ladder .voice-box-item-content-text a {
  color: #A81765;
  text-decoration: underline;
}
.management_ladder .voice-box-item-content-text a:hover {
  text-decoration: none;
}
.management_ladder .voice-box-item-text-link {
  display: inline-block;
  margin-top: 10px;
  color: #A81765;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
  transition: all 0.3s ease;
}
.management_ladder .voice-box-item-text-link:hover {
  text-decoration: none;
  opacity: 0.8;
}
.management_ladder .voice-box-item-text-link::after {
  content: "";
  background-image: url("../../src/img/optimized/voice/link-arrow-expand-management_ladder.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 16px;
  height: 16px;
  font-size: 0.8em;
  margin-left: 5px;
  transition: transform 0.3s ease;
  display: inline-block;
  top: 3px;
  position: relative;
}
.management_ladder .voice-box-item-text-link.is-open::after {
  transform: rotate(180deg);
}
.management_ladder .voice-box-item-content-wrapper {
  position: relative;
  overflow: hidden;
}
.management_ladder .voice-box-item-content-wrapper .voice-box-item-content-excerpt {
  display: block;
}
.management_ladder .voice-box-item-content-wrapper .voice-box-item-content-full {
  display: none;
}
.management_ladder .voice-box-item-content-wrapper.is-expanded .voice-box-item-content-excerpt {
  display: none;
}
.management_ladder .voice-box-item-content-wrapper.is-expanded .voice-box-item-content-full {
  display: block;
  animation: fadeIn 0.3s ease-in-out;
}

.clinical-ladder .service-page-header {
  margin: auto calc(50% - 50vw) 24px;
  background-color: #DEF5FF;
  background-image: url("../../src/img/optimized/clinical-ladder-specific-training/gradient-bg.png");
  padding: 0;
}
@media (max-width: 768px) {
  .clinical-ladder .service-page-header {
    height: 455px;
  }
}
.clinical-ladder .service-page-header .entry-header {
  background: url("../../src/img/optimized/clinical-ladder-specific-training/clinical-ladder-specific-training-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
}
@media (max-width: 768px) {
  .clinical-ladder .service-page-header .entry-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/clinical-ladder-specific-training/clinical-ladder-specific-training-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
    height: 455px;
  }
}
.clinical-ladder .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #02369A;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .clinical-ladder .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.clinical-ladder .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.clinical-ladder .color-text-clinical-ladder {
  color: #02369A;
}
.clinical-ladder .bold-text-clinical-ladder {
  font-weight: 700;
}
.clinical-ladder-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  max-width: 1200px;
  margin: 60px auto;
  padding: 0 20px;
}
@media (max-width: 991px) {
  .clinical-ladder-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
@media (max-width: 575px) {
  .clinical-ladder-grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }
}
.clinical-ladder-item {
  background: #fff;
  border-radius: 15px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  transition: all 0.3s ease;
  cursor: pointer;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.clinical-ladder-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}
.clinical-ladder-content {
  padding: 25px;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.clinical-ladder-footer {
  background: #f8f9fa;
  padding: 100px 0;
  margin-top: 100px;
}
.clinical-ladder-footer-content {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  padding: 0 20px;
}
.clinical-ladder-footer-title {
  font-size: 2rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 20px;
}
.clinical-ladder-footer-text {
  color: #666;
  line-height: 1.8;
  margin-bottom: 40px;
}
.clinical-ladder-footer-buttons {
  display: flex;
  gap: 20px;
  justify-content: center;
  flex-wrap: wrap;
}
.clinical-ladder-footer-button {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 15px 30px;
  font-size: 1.1rem;
  font-weight: 600;
  text-decoration: none;
  border-radius: 30px;
  transition: all 0.3s ease;
}
.clinical-ladder-footer-button.primary {
  background: #2e87cd;
  color: white;
}
.clinical-ladder-footer-button.primary:hover {
  background: rgb(36.6533864542, 107.5697211155, 163.3466135458);
}
.clinical-ladder-footer-button.secondary {
  background: #f0f4f8;
  color: #333;
}
.clinical-ladder-footer-button.secondary:hover {
  background: rgb(222.6136363636, 231.25, 239.8863636364);
}
.clinical-ladder .option-box {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 80px;
}
@media screen and (max-width: 768px) {
  .clinical-ladder .option-box {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
  }
}
.clinical-ladder .option-box .option-box-item a {
  display: inline-block;
  transition: all 0.3s ease;
}
.clinical-ladder .option-box .option-box-item a:hover {
  transform: translateY(-10px);
  transition: all 0.3s ease;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.clinical-ladder .option-box .option-box-item img {
  width: 100%;
}
.clinical-ladder .set-plan-text {
  color: #02369A;
}
.clinical-ladder .square-button .square-button-item {
  background-color: #02369A;
  border: 1px solid #02369A;
}
.clinical-ladder .square-button .square-button-item:hover {
  color: #02369A;
}
.clinical-ladder .square-button .square-button-item::after {
  background-image: url("../../src/img/optimized/clinical-ladder-specific-training/link-arrow.svg");
}

.left-block-title--clinical-ladder {
  border-left: 10px solid #02369A;
}

.point-title-clinical-ladder {
  font-size: 1.5rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 15px;
  line-height: 1.4;
  border-bottom: 2px solid #02369A;
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 4px;
  width: 100%;
}

.point-description-clinical-ladder {
  color: #666;
  line-height: 1.6;
  font-size: 0.95rem;
}

.point-number-clinical-ladder {
  background: linear-gradient(135deg, #2e87cd, #4a9de0);
  color: white;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  font-weight: 700;
  flex-shrink: 0;
}

.sample-video-box-wrap {
  background-color: #EDF9FF;
  padding: 80px 0;
  margin: auto calc(50% - 50vw);
}
.sample-video-box-wrap .features-box {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.price-table th {
  background: #EDF9FF;
  font-weight: 700;
}

.price-table th, .price-table td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: center;
}

.price-table td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: center;
}

.features-box--lecture {
  margin-bottom: 126px;
}
@media screen and (max-width: 768px) {
  .features-box--lecture {
    margin-bottom: 60px;
  }
}

@media screen and (max-width: 768px) {
  .clinical-ladder .point-title-box-item--clinical-ladder--no1 {
    background-color: #02369A;
  }
  .clinical-ladder .point-title-box-item--clinical-ladder--no1::after {
    content: "1";
  }
}
@media screen and (max-width: 768px) {
  .clinical-ladder .point-title-box-item--clinical-ladder--no2 {
    background-color: #02369A;
  }
  .clinical-ladder .point-title-box-item--clinical-ladder--no2::after {
    content: "2";
  }
}
@media screen and (max-width: 768px) {
  .clinical-ladder .point-title-box-item--clinical-ladder--no3 {
    background-color: #02369A;
  }
}

.page-newnursingstaff-training .point-box {
  margin-bottom: 10px;
}
.page-newnursingstaff-training .service-page-header {
  margin: auto calc(50% - 50vw) 24px;
  background-color: #FFFDE0;
  background-image: none;
  padding: 0;
}
@media (max-width: 768px) {
  .page-newnursingstaff-training .service-page-header {
    height: 500px;
  }
}
.page-newnursingstaff-training .service-page-header .entry-header {
  background: url("../../src/img/optimized/newnursingstaff-training/newnursingstaff-training-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
}
@media (max-width: 768px) {
  .page-newnursingstaff-training .service-page-header .entry-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/newnursingstaff-training/newnursingstaff-training-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
    height: 500px;
  }
}
.page-newnursingstaff-training .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #60AD1F;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page-newnursingstaff-training .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.page-newnursingstaff-training .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.page-newnursingstaff-training-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  max-width: 1200px;
  margin: 60px auto;
  padding: 0 20px;
}
@media (max-width: 991px) {
  .page-newnursingstaff-training-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
@media (max-width: 575px) {
  .page-newnursingstaff-training-grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }
}
.page-newnursingstaff-training-item {
  background: #fff;
  border-radius: 15px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  transition: all 0.3s ease;
  cursor: pointer;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.page-newnursingstaff-training-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}
.page-newnursingstaff-training-content {
  padding: 25px;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.page-newnursingstaff-training-footer {
  background: #f8f9fa;
  padding: 100px 0;
  margin-top: 100px;
}
.page-newnursingstaff-training-footer-content {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  padding: 0 20px;
}
.page-newnursingstaff-training-footer-title {
  font-size: 2rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 20px;
}
.page-newnursingstaff-training-footer-text {
  color: #666;
  line-height: 1.8;
  margin-bottom: 40px;
}
.page-newnursingstaff-training-footer-buttons {
  display: flex;
  gap: 20px;
  justify-content: center;
  flex-wrap: wrap;
}
.page-newnursingstaff-training-footer-button {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 15px 30px;
  font-size: 1.1rem;
  font-weight: 600;
  text-decoration: none;
  border-radius: 30px;
  transition: all 0.3s ease;
}
.page-newnursingstaff-training-footer-button.primary {
  background: #2e87cd;
  color: white;
}
.page-newnursingstaff-training-footer-button.primary:hover {
  background: rgb(36.6533864542, 107.5697211155, 163.3466135458);
}
.page-newnursingstaff-training-footer-button.secondary {
  background: #f0f4f8;
  color: #333;
}
.page-newnursingstaff-training-footer-button.secondary:hover {
  background: rgb(222.6136363636, 231.25, 239.8863636364);
}
.page-newnursingstaff-training .option-box {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 80px;
}
.page-newnursingstaff-training .option-box .option-box-item a {
  display: inline-block;
  transition: all 0.3s ease;
}
.page-newnursingstaff-training .option-box .option-box-item a:hover {
  transform: translateY(-10px);
  transition: all 0.3s ease;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.page-newnursingstaff-training .option-box .option-box-item img {
  width: 100%;
}
.page-newnursingstaff-training .set-plan-text {
  color: #60AD1F;
}
.page-newnursingstaff-training .square-button .square-button-item {
  background-color: #60AD1F;
  border: 1px solid #60AD1F;
}
.page-newnursingstaff-training .square-button .square-button-item:hover {
  color: #60AD1F;
}
.page-newnursingstaff-training .square-button .square-button-item::after {
  background-image: url("../../src/img/optimized/newnursingstaff-training/link-arrow.svg");
}
.page-newnursingstaff-training .features-box {
  margin-top: 60px;
}
.page-newnursingstaff-training .point-title-box {
  margin-top: 120px;
}
.page-newnursingstaff-training .point-title-box:first-child {
  margin-top: 0;
}
.page-newnursingstaff-training .color-text-newnursingstaff-training {
  color: #60AD1F;
}
.page-newnursingstaff-training .bold-text-newnursingstaff-training {
  font-weight: 700;
}
.page-newnursingstaff-training .left-block-title--newnursingstaff-training {
  border-left: 10px solid #60AD1F;
}
.page-newnursingstaff-training .point-title-newnursingstaff-training {
  font-size: 1.5rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 15px;
  line-height: 1.4;
  border-bottom: 2px solid #60AD1F;
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 4px;
  width: 100%;
}
.page-newnursingstaff-training .point-description-newnursingstaff-training {
  color: #666;
  line-height: 1.6;
  font-size: 0.95rem;
}
.page-newnursingstaff-training .point-number-newnursingstaff-training {
  background: linear-gradient(135deg, #2e87cd, #4a9de0);
  color: white;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  font-weight: 700;
  flex-shrink: 0;
}
.page-newnursingstaff-training .sample-video-box-wrap {
  background-color: #FFFDE0;
  padding: 80px 0;
  margin: auto calc(50% - 50vw);
}
@media (max-width: 768px) {
  .page-newnursingstaff-training .sample-video-box-wrap {
    padding: 40px 10px;
  }
}
.page-newnursingstaff-training .sample-video-box-wrap .features-box {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
.page-newnursingstaff-training .price-table th {
  background: #FFFDE0;
  font-weight: 700;
}
.page-newnursingstaff-training .price-table th, .page-newnursingstaff-training .price-table td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: center;
}
.page-newnursingstaff-training .price-table td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: center;
}
.page-newnursingstaff-training .point3-list {
  margin-bottom: 30px;
}
.page-newnursingstaff-training .point3-list .point3-list-item {
  border: 1px solid #60AD1F;
  border-radius: 10px;
  padding: 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .page-newnursingstaff-training .point3-list .point3-list-item {
    flex-direction: column;
    align-items: flex-start;
  }
}
.page-newnursingstaff-training .point3-list .point3-list-item:last-child {
  margin-bottom: 0;
}
.page-newnursingstaff-training .point3-list .point3-list-item .point3-list-item-left {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.page-newnursingstaff-training .point3-list .point3-list-item .point3-title {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #60AD1F;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .page-newnursingstaff-training .point3-list .point3-list-item .point3-title {
    font-size: 1.125rem;
  }
}
.page-newnursingstaff-training .point3-list .point3-list-item .point3-list-item-right {
  width: 280px;
}
@media (max-width: 768px) {
  .page-newnursingstaff-training .point3-list .point3-list-item .point3-list-item-right {
    width: 100%;
  }
}
.page-newnursingstaff-training .point3-merit {
  border: 1px solid #60AD1F;
  border-radius: 10px;
  padding: 15px;
  margin-bottom: 20px;
}
.page-newnursingstaff-training .point3-merit .merit-title {
  color: #60AD1F;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page-newnursingstaff-training .point3-merit .merit-title {
    font-size: 1.125rem;
  }
}
.page-newnursingstaff-training .point3-merit .merit-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  justify-content: center;
}
@media (max-width: 768px) {
  .page-newnursingstaff-training .point3-merit .merit-list {
    grid-template-columns: repeat(1, 1fr);
  }
}
.page-newnursingstaff-training .point3-merit .merit-list li {
  border: 1px solid #E2E2E2;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  padding: 30px 10px;
  text-align: center;
  border-radius: 15px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .page-newnursingstaff-training .point3-merit .merit-list li {
    font-size: 1rem;
    padding: 10px 10px;
  }
}
.page-newnursingstaff-training .voice-block-newnursingstaff-training {
  margin-top: 120px;
}
@media (max-width: 768px) {
  .page-newnursingstaff-training .voice-block-newnursingstaff-training {
    margin-top: 60px;
  }
}
.page-newnursingstaff-training .voice-block-newnursingstaff-training .voice-box-item-title-main {
  color: #60AD1F;
}
.page-newnursingstaff-training .voice-block-newnursingstaff-training .voice-box-item-text-link {
  color: #60AD1F;
  justify-content: flex-end;
  display: flex;
  align-items: center;
}
.page-newnursingstaff-training .voice-block-newnursingstaff-training .voice-box-item-text-link::after {
  top: 2px;
  background: url("../../src/img/optimized/voice/link-arrow-expand-newnursingstaff-training.svg") no-repeat center center;
  background-size: contain;
  width: 16px;
  height: 16px;
  margin-left: 5px;
  transition: all 0.3s ease;
}
.page-newnursingstaff-training .price-block-newnursingstaff-training {
  padding: 40px 0;
}
@media (max-width: 768px) {
  .page-newnursingstaff-training .price-block {
    margin-bottom: 0;
  }
}

.specifictraining .point-box {
  margin-bottom: 10px;
}
.specifictraining .service-page-header {
  margin: auto calc(50% - 50vw) 24px;
  background-color: #CCEBED;
  background-image: none;
}
@media (max-width: 768px) {
  .specifictraining .service-page-header {
    height: 490px;
  }
}
.specifictraining .service-page-header .entry-header {
  background: url("../../src/img/optimized/specifictraining/specifictraining-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
}
@media (max-width: 768px) {
  .specifictraining .service-page-header .entry-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/specifictraining/specifictraining-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
    height: auto;
  }
}
.specifictraining .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #096763;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .specifictraining .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.specifictraining .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.specifictraining .color-text-specifictraining {
  color: #096763;
}
.specifictraining .bold-text-specifictraining {
  font-weight: 700;
}
.specifictraining-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  max-width: 1200px;
  margin: 60px auto;
  padding: 0 20px;
}
@media (max-width: 991px) {
  .specifictraining-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
@media (max-width: 575px) {
  .specifictraining-grid {
    grid-template-columns: 1fr;
    gap: 15px;
  }
}
.specifictraining-item {
  background: #fff;
  border-radius: 15px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  transition: all 0.3s ease;
  cursor: pointer;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.specifictraining-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}
.specifictraining-content {
  padding: 25px;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.specifictraining-footer {
  background: #f8f9fa;
  padding: 100px 0;
  margin-top: 100px;
}
.specifictraining-footer-content {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  padding: 0 20px;
}
.specifictraining-footer-title {
  font-size: 2rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 20px;
}
.specifictraining-footer-text {
  color: #666;
  line-height: 1.8;
  margin-bottom: 40px;
}
.specifictraining-footer-buttons {
  display: flex;
  gap: 20px;
  justify-content: center;
  flex-wrap: wrap;
}
.specifictraining-footer-button {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 15px 30px;
  font-size: 1.1rem;
  font-weight: 600;
  text-decoration: none;
  border-radius: 30px;
  transition: all 0.3s ease;
}
.specifictraining-footer-button.primary {
  background: #2e87cd;
  color: white;
}
.specifictraining-footer-button.primary:hover {
  background: rgb(36.6533864542, 107.5697211155, 163.3466135458);
}
.specifictraining-footer-button.secondary {
  background: #f0f4f8;
  color: #333;
}
.specifictraining-footer-button.secondary:hover {
  background: rgb(222.6136363636, 231.25, 239.8863636364);
}
.specifictraining .option-box {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 80px;
}
.specifictraining .option-box .option-box-item a {
  display: inline-block;
  transition: all 0.3s ease;
}
.specifictraining .option-box .option-box-item a:hover {
  transform: translateY(-10px);
  transition: all 0.3s ease;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
.specifictraining .option-box .option-box-item img {
  width: 100%;
}
.specifictraining .set-plan-text {
  color: #096763;
}
.specifictraining .square-button .square-button-item {
  background-color: #096763;
  border: 1px solid #096763;
}
.specifictraining .square-button .square-button-item:hover {
  color: #096763;
}
.specifictraining .square-button .square-button-item::after {
  background-image: url("../../src/img/optimized/specifictraining/link-arrow.svg");
}

.left-block-title--specifictraining {
  border-left: 10px solid #096763;
}

.point-title-specifictraining {
  font-size: 1.5rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 15px;
  line-height: 1.4;
  color: #096763;
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 4px;
  width: 100%;
}

.point-description-specifictraining {
  color: #666;
  line-height: 1.6;
  font-size: 0.95rem;
}

.point-number-specifictraining {
  background: linear-gradient(135deg, #2e87cd, #4a9de0);
  color: white;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  font-weight: 700;
  flex-shrink: 0;
}

@media (max-width: 768px) {
  .specifictraining .reason3-title-box-wrap:nth-child(2) .point-title-box-item::after {
    content: "2";
  }
  .specifictraining .reason3-title-box-wrap:nth-child(3) .point-title-box-item::after {
    content: "3";
  }
}
@media (max-width: 768px) {
  .specifictraining .point-title-box-item {
    background-color: #096763;
  }
}

.sample-video-box-wrap {
  padding: 80px 0;
  margin: auto calc(50% - 50vw);
}
.sample-video-box-wrap .features-box {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
.sample-video-box-wrap--specifictraining {
  background-color: #DFF3F4;
}
.sample-video-box-wrap--management {
  background-color: #FAF2F2;
}
.sample-video-box-wrap--clinical-ladder {
  background-color: #E8F3F8;
}
.sample-video-box-wrap--newnursing {
  background-color: #FFF5E5;
}

.price-table--specifictraining {
  width: 100%;
  border-collapse: collapse;
  margin-top: 30px;
}
.price-table--specifictraining th, .price-table--specifictraining td {
  border: 1px solid #ddd;
  padding: 12px 8px;
  text-align: center;
  vertical-align: middle;
}
.price-table--specifictraining thead th {
  background: #DCF0F3;
  font-weight: 700;
  font-size: 0.9375rem;
}
.price-table--specifictraining thead th .small {
  display: block;
  font-size: 0.75rem;
  font-weight: 400;
  margin-top: 4px;
}
.price-table--specifictraining tbody th {
  background: #DCF0F3;
  font-weight: 700;
  font-size: 0.9375rem;
  white-space: nowrap;
}
.price-table--specifictraining tbody td {
  background: #fff;
  font-weight: 500;
}
.price-table--specifictraining tfoot th {
  background: #107E85;
  color: #fff;
  font-weight: 700;
  font-size: 0.725rem;
  line-height: 1.3;
  padding: 16px 8px;
}
.price-table--specifictraining tfoot td {
  background: #107E85;
  color: #fff;
  font-weight: 700;
  font-size: 1.125rem;
}
@media (max-width: 768px) {
  .price-table--specifictraining {
    overflow-x: auto;
    overflow-y: visible;
    -webkit-overflow-scrolling: touch;
    display: block;
    width: 100%;
  }
  .price-table--specifictraining table {
    min-width: 600px;
    width: 100%;
  }
  .price-table--specifictraining::-webkit-scrollbar {
    height: 8px;
  }
  .price-table--specifictraining::-webkit-scrollbar-track {
    background: #f1f1f1;
  }
  .price-table--specifictraining::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 4px;
  }
  .price-table--specifictraining th, .price-table--specifictraining td {
    padding: 8px 6px;
    font-size: 0.875rem;
    white-space: nowrap;
  }
  .price-table--specifictraining thead th {
    font-size: 0.875rem;
  }
  .price-table--specifictraining thead th .small {
    font-size: 0.6875rem;
    white-space: normal;
  }
  .price-table--specifictraining tbody th {
    font-size: 0.875rem;
    white-space: normal;
    min-width: 80px;
  }
  .price-table--specifictraining tbody td {
    min-width: 120px;
  }
  .price-table--specifictraining tfoot th {
    font-size: 0.6875rem;
    padding: 12px 6px;
  }
  .price-table--specifictraining tfoot td {
    font-size: 1rem;
  }
}

.price-block {
  margin-bottom: 100px;
}

.price-block-wrap {
  max-width: 1000px;
  margin: 0 auto 56px;
}

.price-table th, .price-table td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: center;
}

.price-table td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: center;
}

.price-table-note {
  text-align: right;
  font-size: 1rem;
  line-height: 1.3;
  letter-spacing: 0.05em;
  margin-top: 10px;
}

.point3-list {
  margin-bottom: 30px;
}
.point3-list .point3-list-item {
  border: 1px solid #096763;
  border-radius: 10px;
  padding: 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}
.point3-list .point3-list-item:last-child {
  margin-bottom: 0;
}
.point3-list .point3-list-item .point3-list-item-left {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.point3-list .point3-list-item .point3-title {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #096763;
  margin-bottom: 10px;
}
.point3-list .point3-list-item .point3-list-item-right {
  width: 280px;
}

.point3-merit {
  border: 1px solid #096763;
  border-radius: 10px;
  padding: 15px;
  margin-bottom: 20px;
}
.point3-merit .merit-title {
  color: #096763;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
  text-align: center;
}
.point3-merit .merit-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  justify-content: center;
}
.point3-merit .merit-list li {
  border: 1px solid #E2E2E2;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  padding: 30px 10px;
  text-align: center;
  border-radius: 15px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.button-box .button-box-item.button-box-item--bcourse {
  background: #FE5F58;
  border: 2px solid #FE5F58;
  border-radius: 10px;
  padding: 10px 20px;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.3636363636;
  letter-spacing: 0.05em;
  position: relative;
  color: #fff;
  text-align: center;
  padding-right: 40px;
}
.button-box .button-box-item.button-box-item--bcourse:hover {
  background-color: #fff;
  color: #FE5F58;
}
.button-box .button-box-item.button-box-item--bcourse::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10%;
  width: 25px;
  height: 25px;
  background-image: url("../../src/img/optimized/specifictraining/link-arrow-bcourse.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
  transition: all 0.3s ease;
}
.button-box .button-box-item.button-box-item--bcourse:hover::after {
  transform: translateY(-50%) translateX(10px);
}

.button-box .button-box-item.button-box-item--applyschedule {
  background: #539F6D;
  border: 2px solid #539F6D;
  border-radius: 10px;
  padding: 10px 20px;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.3636363636;
  letter-spacing: 0.05em;
  position: relative;
  color: #fff;
  text-align: center;
  padding-right: 50px;
}
.button-box .button-box-item.button-box-item--applyschedule:hover {
  background-color: #fff;
  color: #539F6D;
}
.button-box .button-box-item.button-box-item--applyschedule::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10%;
  width: 25px;
  height: 25px;
  background-image: url("../../src/img/optimized/specifictraining/link-arrow-applyschedule.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
  transition: all 0.3s ease;
}
.button-box .button-box-item.button-box-item--applyschedule:hover::after {
  transform: translateY(-50%) translateX(10px);
}

.button-box .button-box-item.button-box-item--price {
  background: #6FA6FF;
  border: 2px solid #6FA6FF;
  border-radius: 10px;
  padding: 10px 20px;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.3636363636;
  letter-spacing: 0.05em;
  position: relative;
  color: #fff;
  text-align: center;
  padding-right: 40px;
}
.button-box .button-box-item.button-box-item--price:hover {
  background-color: #fff;
  color: #6FA6FF;
}
.button-box .button-box-item.button-box-item--price::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10%;
  width: 25px;
  height: 25px;
  background-image: url("../../src/img/optimized/specifictraining/link-arrow-price.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
  transition: all 0.3s ease;
}
.button-box .button-box-item.button-box-item--price:hover::after {
  transform: translateY(-50%) translateX(10px);
}

.left-block-title.left-block-title--specifictraining {
  border-left: 10px solid #096763;
  line-height: 1.1;
  padding-bottom: 10px;
}
.left-block-title.left-block-title--specifictraining span {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.reason3-box {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.reason3-box .reason3-title-box-wrap {
  display: flex;
  flex-direction: column;
  border: 2px solid #096763;
  border-radius: 10px;
  padding: 20px;
  gap: 10px;
}
.reason3-box .reason3-title-box-wrap .point-title-box {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
@media (max-width: 768px) {
  .reason3-box .reason3-title-box-wrap .point-title-box {
    flex-direction: column;
  }
}
.reason3-box .reason3-list li {
  margin-bottom: 15px;
}
.reason3-box .reason3-list li:last-child {
  margin-bottom: 0;
}
.reason3-box .reason3-list li span {
  color: #FF6C02;
}
.reason3-box .point-title-box-wrap {
  margin-bottom: 0;
}

.about_training-section .about_training-container {
  display: grid;
  grid-template-columns: 230px 1fr;
  gap: 36px;
}
@media (max-width: 768px) {
  .about_training-section .about_training-container {
    grid-template-columns: 1fr;
  }
}
.about_training-section .about_training-container .about_training-contents {
  margin-bottom: 40px;
}
.about_training-section .about_training-container .h4-point-title {
  margin-bottom: 15px;
}
@media (max-width: 768px) {
  .about_training-section .about_training-container .about_training-flow-image {
    width: 80%;
    margin: 0 auto;
  }
}

.about_training-item {
  margin-bottom: 40px;
}

.about_training-contents-item-box {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
.about_training-contents-item-box .about_training-contents-item img {
  width: 100%;
}

.about_training-contents-item-box--full {
  grid-template-columns: 1fr;
}

.about_training-contents-item-accent {
  color: #096763;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 15px;
}

.about_training-contents-item-text {
  margin-bottom: 18px;
}

.training-type-title {
  color: #fff;
  background-color: #096763;
  padding: 7px 0;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  border-radius: 30px;
  text-align: center;
  margin-bottom: 20px;
}

.training-type-block {
  margin-bottom: 60px;
}

.training-type-item {
  display: grid;
  grid-template-columns: 1fr 1fr 1.129fr;
  gap: 15px;
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .training-type-item {
    grid-template-columns: 1fr;
  }
}
.training-type-item .training-type-item-text {
  background-color: #FFFEEC;
  padding: 11px 0;
  border-radius: 15px;
  display: grid;
  place-items: center;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.16);
}
.training-type-item .training-type-item-text p {
  color: #096763;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  margin-bottom: 0;
}

.specifictraining-attention {
  color: #096763;
  font-weight: 700;
  line-height: 1.62;
  letter-spacing: 0.02em;
  margin-bottom: 30px;
  font-size: 1.3125rem;
}

.syllabus-pdf {
  background: #FFFEEC;
  border: 3px solid #FF6C02;
  border-radius: 15px;
  padding: 30px 40px;
  margin-bottom: 60px;
}
@media (max-width: 768px) {
  .syllabus-pdf {
    padding: 30px 20px;
  }
}

.syllabus-pdf-item {
  display: flex;
  flex-direction: column;
}
.syllabus-pdf-item .h4-point-title {
  margin-bottom: 10px;
}
.syllabus-pdf-item p {
  margin-bottom: 0;
}
.syllabus-pdf-item img {
  margin-top: 20px;
  margin-bottom: 30px;
}

.syllabus-pdf-item-button {
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
  margin-top: 30px;
}
.syllabus-pdf-item-button a {
  color: #fff;
  background-color: #FF6C02;
  padding: 10px 20px;
  border-radius: 30px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  border: 1px solid #FF6C02;
}
.syllabus-pdf-item-button a:hover {
  background-color: #fff;
  color: #FF6C02;
  transition: all 0.3s ease;
}

.sample-video-block-specifictraining {
  background-color: #DFF3F4;
}

.sample-video-block {
  margin-bottom: 90px;
}

.specifictraining .button-box {
  margin-bottom: 140px;
}

.follow_up-training-title {
  color: #FF6C02;
  font-size: 30px;
  text-align: center;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .follow_up-training-title {
    font-size: 22px;
  }
}

.special_page-box {
  background: #FFFDE0;
  padding: 25px 27px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  margin-bottom: 60px;
}

.special_page-box-item {
  margin-bottom: 24px;
}

.special_page-link a {
  background: #096763;
  color: #fff;
  padding: 10px 20px;
  border-radius: 30px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  display: flex;
  align-items: center;
  gap: 10px;
  transition: all 0.3s ease;
  border: 1px solid #096763;
}
.special_page-link a:hover {
  background-color: #fff;
  color: #096763;
  transition: all 0.3s ease;
}
.special_page-link a:hover img {
  transform: translateX(10px);
  transition: all 0.3s ease;
}
.special_page-link a img {
  width: 25px;
  height: 25px;
  transition: all 0.3s ease;
}

.reasoning-q-box {
  display: grid;
  grid-template-columns: 282px 1fr;
  gap: 24px;
  margin-bottom: 70px;
}
@media (max-width: 768px) {
  .reasoning-q-box {
    grid-template-columns: 1fr;
    margin-top: 40px;
  }
}
.reasoning-q-box .reasoning-q-content {
  background-color: #FFFEEC;
  padding: 26px;
  border-radius: 15px;
}
@media (max-width: 768px) {
  .reasoning-q-box img {
    width: 60%;
    margin: 0 auto;
  }
}

@media (max-width: 768px) {
  .reasoning-q-link-button .reasoning-q-link-button a img {
    width: 9%;
  }
}

.reasoning-q-content-text {
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.62;
  letter-spacing: 0.02em;
  margin-bottom: 20px;
  color: #096763;
}

.reasoning-q-content-text-free {
  position: relative;
  margin-bottom: 10px;
}
.reasoning-q-content-text-free img {
  position: absolute;
  top: 50%;
  right: 40px;
  transform: translateY(-50%);
  width: 100px;
  height: 88px;
}
@media (max-width: 768px) {
  .reasoning-q-content-text-free img {
    top: -80%;
    right: 110px;
    transform: translateY(-50%);
    width: 70px;
    height: 58px;
  }
}

.reasoning-q-link-button {
  display: grid;
  grid-template-columns: 0.7fr 0.5fr;
  gap: 30px;
}
@media (max-width: 768px) {
  .reasoning-q-link-button {
    grid-template-columns: 1fr;
  }
}
.reasoning-q-link-button a {
  background-color: #096763;
  color: #fff;
  padding: 10px 20px;
  border-radius: 30px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  transition: all 0.3s ease;
  border: 1px solid #096763;
}
@media (max-width: 768px) {
  .reasoning-q-link-button a {
    padding: 20px 20px;
  }
}
.reasoning-q-link-button a:hover {
  background-color: #fff;
  color: #096763;
  transition: all 0.3s ease;
}
.reasoning-q-link-button a:hover img {
  transform: translateX(10px);
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .reasoning-q-link-button a img {
    width: 10%;
    margin: 0 0 0 auto;
  }
}

.organizational-retention-support-project-block {
  margin-top: 100px;
  margin-bottom: 100px;
}

.voice-block-specifictraining {
  background: #DFF3F4;
  margin: auto calc(50% - 50vw) 116px;
  padding: 105px 0 150px;
}
@media (max-width: 768px) {
  .voice-block-specifictraining {
    padding: 40px 10px 40px;
  }
}

.voice-block-wrap {
  max-width: 1000px;
  margin: 0 auto;
}

.voice-box-item {
  background-color: #fff;
  padding: 20px;
  border-radius: 10px;
  margin-bottom: 20px;
  border: 2px solid #096763;
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 14px;
}
@media (max-width: 768px) {
  .voice-box-item {
    grid-template-columns: 1fr;
  }
}

.voice-box-item-title-main {
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.62;
  letter-spacing: 0.02em;
  margin-bottom: 15px;
  color: #096763;
}
.voice-box-item-title-main::after {
  content: "";
  border-bottom: 2px solid #096763;
  width: 100%;
  display: block;
  margin-top: 15px;
}

.voice-box-item-img img {
  margin-bottom: 6px;
}
.voice-box-item-img dl dt {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.62;
  letter-spacing: 0.02em;
  margin-bottom: 0;
}
.voice-box-item-img dl dd {
  font-size: 0.875rem;
  line-height: 1.71;
  letter-spacing: 0.04em;
  margin-bottom: 0;
}

.voice-box-item-title {
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.62;
  letter-spacing: 0.02em;
  margin-bottom: 10px;
  color: #096763;
}

.voice-box-item-text {
  font-size: 1rem;
  line-height: 1.62;
  letter-spacing: 0.02em;
  margin-bottom: 10px;
}

.voice-box-item-content-title {
  font-weight: 700;
  line-height: 1.69;
  letter-spacing: 0.04em;
}

.voice-box-item-content-text p {
  margin-bottom: 1em;
  font-size: 1rem;
  line-height: 1.69;
  letter-spacing: 0.04em;
}
.voice-box-item-content-text p:last-child {
  margin-bottom: 0;
}
.voice-box-item-content-text a {
  color: #096763;
  text-decoration: underline;
}
.voice-box-item-content-text a:hover {
  text-decoration: none;
}

.voice-box-item-content-text {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.voice-box-item-text-link {
  display: inline-block;
  margin-top: 10px;
  color: #096763;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
  transition: all 0.3s ease;
}
.voice-box-item-text-link:hover {
  text-decoration: none;
  opacity: 0.8;
}
.voice-box-item-text-link::after {
  content: "";
  background-image: url("../../src/img/optimized/voice/link-arrow-expand.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 16px;
  height: 16px;
  font-size: 0.8em;
  margin-left: 5px;
  transition: transform 0.3s ease;
  display: inline-block;
  top: 3px;
  position: relative;
}
.voice-box-item-text-link.is-open::after {
  transform: rotate(180deg);
}

.voice-box-item-content-wrapper {
  position: relative;
  overflow: hidden;
}
.voice-box-item-content-wrapper .voice-box-item-content-excerpt {
  display: block;
}
.voice-box-item-content-wrapper .voice-box-item-content-full {
  display: none;
}
.voice-box-item-content-wrapper.is-expanded .voice-box-item-content-excerpt {
  display: none;
}
.voice-box-item-content-wrapper.is-expanded .voice-box-item-content-full {
  display: block;
  animation: fadeIn 0.3s ease-in-out;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.table-row {
  display: flex;
  gap: 40px;
  margin-bottom: 60px;
}
@media (max-width: 768px) {
  .table-row {
    flex-direction: column;
    gap: 20px;
  }
}

.table-row table {
  border-collapse: collapse;
  border: 1px solid #231916;
  table-layout: fixed;
  width: 100%;
}

.table-row table tr th:nth-child(odd) {
  border-right: 1px solid #231916;
  width: 62%;
}

.table-row table tr th {
  font-size: 20px;
  font-size: 1.25rem;
  background: #f9d6e6;
}

.table-row table tr td {
  border-right: 1px solid #231916;
  width: 62%;
}

.table-row table tr:nth-child(even) td {
  background: #EFEFEF;
}

.table-row table tr td {
  font-size: 16px;
  font-size: 1rem;
  text-align: center;
  padding: 8px 10px;
}

.table-row table tr td a {
  font-size: 14px;
  font-size: 0.875rem;
  align-items: center;
  background: #ef7c1f;
  border-radius: 15px;
  color: #fff;
  display: flex;
  margin-bottom: 0.65%;
  padding: 4px 12px;
  text-decoration: none;
  transition: all 0.3s ease;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #ef7c1f;
  gap: 4px;
  transition: all 0.3s ease;
}
.table-row table tr td a:hover {
  background-color: #fff;
  color: #ef7c1f;
  transition: all 0.3s ease;
}
.table-row table tr td a img {
  width: 16px;
  height: 16px;
}

.syllabus-download-block {
  margin-bottom: 100px;
}

.support-institutions-block {
  margin-bottom: 22px;
}

.about-training-block {
  margin-top: 80px;
}

.syllabus-download-block-item-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
.syllabus-download-block-item-title h3 {
  margin-bottom: 0;
}
.syllabus-download-block-item-title a {
  display: flex;
  align-items: center;
  gap: 10px;
  background-color: #FF6C02;
  color: #fff;
  padding: 10px 20px;
  border-radius: 30px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  border: 1px solid #FF6C02;
  transition: all 0.3s ease;
}
.syllabus-download-block-item-title a:hover {
  background-color: #fff;
  color: #FF6C02;
  transition: all 0.3s ease;
}
.syllabus-download-block-item-title a img {
  width: 24px;
  height: 24px;
}

.whats-different-box {
  margin-top: 40px;
}

.hr-eval .point-box {
  margin-bottom: 10px;
}

.hr-eval .service-page-header {
  background: url("../../src/img/optimized/hr-eval/hr-eval-header-bg-texture.png") no-repeat bottom center;
  background-size: cover;
  padding: 0;
  margin: auto calc(50% - 50vw) 24px;
}
.hr-eval .service-page-header .entry-header {
  background: url("../../src/img/optimized/hr-eval/hr-eval-header-bg.png") no-repeat;
  background-position: 50% 100%;
  background-size: cover;
}
@media (max-width: 768px) {
  .hr-eval .service-page-header .entry-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/hr-eval/hr-eval-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
    height: 440px;
  }
}
.hr-eval .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #FC427B;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .hr-eval .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.hr-eval .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.left-block-title--hr-eval {
  border-left: 10px solid #FC427B;
  line-height: 1.1;
  padding-bottom: 10px;
}

.point-title-hr-eval {
  font-size: 1.5rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 15px;
  line-height: 1.4;
  border-bottom: 2px solid #FC427B;
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 4px;
  width: 100%;
}

.point-no1-img-item {
  display: grid;
  grid-template-columns: 336px 1fr;
  gap: 20px;
  margin-bottom: 80px;
}
.point-no1-img-item .point-no1-img-item-left img {
  width: 100%;
  height: auto;
}
.point-no1-img-item .point-no1-img-item-right img {
  margin-bottom: 24px;
}
.point-no1-img-item .point-no1-img-item-right img:last-child {
  margin-bottom: 0;
}

.h4-point-title-hr-eval {
  color: #FC427B;
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 15px;
  line-height: 1.4;
  display: flex;
  align-items: center;
  padding-bottom: 4px;
}

.set-plan-text.set-plan-text--hr-eval {
  color: #FC427B;
}

.square-button .square-button-item.square-button-item--hr-eval {
  background-color: #FC427B;
  border: 1px solid #FC427B;
}

.square-button .square-button-item.square-button-item--hr-eval::after {
  background-image: url(../../src/img/optimized/hr-eval/link-arrow-icon.svg);
  content: "";
  width: 30px;
  height: 30px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.square-button .square-button-item.square-button-item--hr-eval:hover {
  color: #FC427B;
}

.required_training .service-page-header {
  margin: auto calc(50% - 50vw) 24px;
  background-color: #FFFDE0;
  background-image: url("../../src/img/optimized/required_training/gradient-bg.png");
  padding: 0;
}
@media (max-width: 768px) {
  .required_training .service-page-header {
    height: 455px;
  }
}
.required_training .service-page-header .entry-header {
  background: url("../../src/img/optimized/required_training/required_training-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
}
@media (max-width: 768px) {
  .required_training .service-page-header .entry-header {
    padding: 10px 10px 390px;
    background: url("../../src/img/optimized/required_training/required_training-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
    height: 455px;
  }
}
.required_training .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #853C96;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .required_training .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.required_training .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.left-block-title--required_training {
  border-left: 10px solid #853C96;
  line-height: 1.1;
  padding-bottom: 10px;
}

.required-training-program-box {
  margin-top: 30px;
}
@media (max-width: 768px) {
  .required-training-program-box {
    margin-top: 120px;
  }
}

.required-traning-program-grid-title {
  position: relative;
}
.required-traning-program-grid-title img {
  position: absolute;
  top: -90px;
  right: 0;
  width: 350px;
  height: auto;
  object-fit: cover;
}

.required-traning-program-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  border: 1px solid #FC427B;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .required-traning-program-grid {
    grid-template-columns: repeat(1, 1fr);
    padding: 20px 10px;
  }
}
.required-traning-program-grid li {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.required-traning-program-grid li .pink {
  color: #FC427B;
}

.add-program-box-item {
  margin-bottom: 60px;
}

.lecture-image-box {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media (max-width: 768px) {
  .lecture-image-box {
    grid-template-columns: repeat(1, 1fr);
  }
}
.lecture-image-box .lecture-image-box-item {
  position: relative;
}
.lecture-image-box .lecture-image-box-item img {
  width: 100%;
  height: auto;
}

.about-pojiko {
  background: #FFFDE0;
  margin: auto calc(50% - 50vw);
  margin-bottom: 100px;
}
@media (max-width: 768px) {
  .about-pojiko {
    margin-bottom: 50px;
  }
}
.about-pojiko .about-pojiko-box {
  max-width: 1000px;
  margin: 0 auto;
  padding: 60px 0;
}
@media (max-width: 768px) {
  .about-pojiko .about-pojiko-box {
    padding: 30px 25px;
  }
}
.about-pojiko .about-pojiko-box .left-block-title--required_training {
  border-left: 10px solid #853C96;
  line-height: 1.1;
  padding-bottom: 10px;
}

.about-pojiko-box-content {
  display: grid;
  grid-template-columns: 1fr 198px;
  gap: 20px;
}
@media (max-width: 768px) {
  .about-pojiko-box-content {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media (max-width: 768px) {
  .about-pojiko-box-content .about-pojiko-box-item-pc {
    display: none;
  }
}
.about-pojiko-box-content .about-pojiko-box-item-pc img {
  width: 100%;
  height: auto;
}
.about-pojiko-box-content .about-pojiko-box-item-sp {
  display: none;
}
@media (max-width: 768px) {
  .about-pojiko-box-content .about-pojiko-box-item-sp {
    display: block;
    width: 50%;
    margin: 0 auto;
    margin-bottom: 20px;
  }
}

.about-pojiko-box-content-item p {
  letter-spacing: 0.04em;
  line-height: 1.69;
}

.sample-videos {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .sample-videos {
    grid-template-columns: repeat(1, 1fr);
  }
}
.sample-videos .sample-videos-item figure a {
  display: block;
  width: 100%;
  height: 100%;
}
.sample-videos .sample-videos-item figure a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.concerns {
  margin-bottom: 100px;
}
@media (max-width: 768px) {
  .concerns {
    margin-bottom: 50px;
  }
}

.groupwork {
  margin-bottom: 100px;
}
@media (max-width: 768px) {
  .groupwork {
    margin-bottom: 50px;
  }
}

.required_training_e-learning {
  margin-bottom: 100px;
}
@media (max-width: 768px) {
  .required_training_e-learning {
    margin-bottom: 50px;
  }
}

.pricetable {
  margin-bottom: 100px;
}
@media (max-width: 768px) {
  .pricetable {
    margin-bottom: 50px;
  }
}

.normal-weight {
  font-weight: 400;
}

.price-table {
  margin-bottom: 20px;
}

.pricetable-box-item {
  margin-bottom: 20px;
}

.required_training .set-plan-text {
  color: #FC427B;
}

.required_training .square-button a {
  background-color: #FC427B;
  border: 1px solid #FC427B;
}
.required_training .square-button a:hover {
  background-color: #fff;
  color: #FC427B;
}

.required_training .square-button .square-button-item::after {
  background-image: url("../../src/img/optimized/required_training/link-arrow.svg");
}

.required_training .voice-box-item {
  border: 2px solid #853C96;
}

.required_training .voice-box-item-title-main {
  color: #853C96;
}

.required_training .voice-box-item-text-link {
  color: #853C96;
}

.required_training .voice-box-item-text-link::after {
  background-image: url("../../src/img/optimized/voice/link-arrow-expand-required_training.svg");
}

.nursing-training .point-box {
  margin-bottom: 10px;
}

.nursing-training .entry-header {
  height: auto;
}
.nursing-training .service-page-header .entry-title {
  color: #00D5BC;
}
.nursing-training .service-page-header {
  background: #EAFFF9;
  padding-top: 10px;
  padding-bottom: 40px;
  height: auto;
}
@media (max-width: 768px) {
  .nursing-training .service-page-header {
    background-image: url("../../src/img/optimized/nursing-training/nursing-training-header-bg-sp.png");
    background-size: cover;
    background-position: bottom center;
    background-repeat: no-repeat;
    padding: 10px 10px 300px;
  }
}
.nursing-training .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .nursing-training .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.nursing-training .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.nursing-training .header-point-box {
  background: #fff;
  border-radius: 10px;
  padding: 28px 20px;
  margin-bottom: 30px;
  max-width: 1000px;
  margin: 0 auto;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  background-image: url("../../src/img/optimized/nursing-training/header-nursing-training-img.png");
  background-size: 13% auto;
  background-position: 99% 50%;
  background-repeat: no-repeat;
}
@media (max-width: 768px) {
  .nursing-training .header-point-box {
    display: none;
  }
}
.nursing-training .header-point-box .h2-title {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
  text-align: left;
}
.nursing-training .header-point-box .header-point-box-item {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.nursing-training .header-point-box .header-point-box-item img {
  width: 80px;
  height: 30px;
}
.nursing-training .header-point-box .header-point-box-item p {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 0;
}
.nursing-training .left-block-title--nursing-training {
  border-left: 10px solid #00D5BC;
  padding-left: 10px;
  margin-bottom: 20px;
}
.nursing-training .about-nursing-training-item {
  margin-bottom: 30px;
}
.nursing-training .about-nursing-training-item p {
  line-height: 1.69;
  letter-spacing: 0.04em;
  margin-bottom: 0;
}
.nursing-training .button-box a {
  text-align: center;
  display: block;
  font-size: 19px;
  padding: 10px 20px 10px 0px;
}
.nursing-training .button-box a span {
  display: inline-block;
  font-size: 16px;
}
.nursing-training .nursing-training-tab-box {
  background: #fff;
  border-radius: 20px;
  padding: 32px 20px;
  margin-bottom: 30px;
  max-width: 1000px;
  margin: 0 auto 67px;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.16);
}
.nursing-training .nursing-training-tab-header {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 30px;
}
.nursing-training .nursing-training-tab-header ul {
  display: flex;
  align-items: center;
  gap: 20px;
  width: 100%;
}
@media (max-width: 768px) {
  .nursing-training .nursing-training-tab-header ul {
    flex-direction: column;
    gap: 10px;
  }
}
.nursing-training .nursing-training-tab-header li {
  list-style: none;
  width: 50%;
}
@media (max-width: 768px) {
  .nursing-training .nursing-training-tab-header li {
    width: 100%;
  }
}
.nursing-training .nursing-training-tab-header-item {
  cursor: pointer;
  font-size: 19px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 0;
  border: 1px solid #AAA8A8;
  border-radius: 0;
  padding: 23px 0;
  text-align: center;
  transition: all 0.3s ease;
}
.nursing-training .nursing-training-tab-header-item:hover {
  background: #02369A;
  color: #fff;
  border: 1px solid #02369A;
  transition: all 0.3s ease;
}
.nursing-training .nursing-training-tab-header-item--active {
  background: #02369A;
  color: #fff;
  border: 1px solid #02369A;
}
.nursing-training .nursing-training-tab-content {
  margin-bottom: 30px;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}
.nursing-training .nursing-training-tab-content.active {
  opacity: 1;
}

.rootnurse .service-page-header {
  background: url("../../src/img/optimized/rootnurse/rootnurse-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
  margin: auto calc(50% - 50vw) 24px;
}
@media (max-width: 768px) {
  .rootnurse .service-page-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/rootnurse/rootnurse-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
  }
}
.rootnurse .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #5B94F0;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .rootnurse .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.rootnurse .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.rootnurse .left-block-title--rootnurse {
  border-left: 10px solid #5B94F0;
}

@media (max-width: 768px) {
  .price-list {
    padding: 0 10px;
  }
}
.price-list .price-list-title {
  color: #02369A;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
}
.price-list .entry-title {
  color: #02369A;
}
.price-list .container {
  display: grid;
  grid-template-columns: 250px 1fr;
  gap: 50px;
}
@media (max-width: 768px) {
  .price-list .container {
    grid-template-columns: 1fr;
  }
}
.price-list .container .side-block .side-block-inner a {
  display: flex;
  padding: 18px 13px;
  transition: all 0.3s ease;
  line-height: 1.5;
  font-size: 1rem;
  font-weight: 400;
  align-items: center;
  justify-content: space-between;
}
.price-list .container .side-block .side-block-inner a::after {
  content: "";
  background-image: url(../../src/img/optimized/casestudy/link-arrow-default.svg);
  width: 18px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: all 0.3s ease;
}
.price-list .container .side-block .side-block-inner a:hover {
  color: #FF6C00;
}
.price-list .container .side-block .side-block-inner a:hover::after {
  background-image: url(../../src/img/optimized/casestudy/link-arrow-hover.svg);
  transition: all 0.3s ease;
  transform: translateX(5px);
}
.price-list .container .side-block .side-block-inner a.current {
  background-color: #02369A;
  color: #fff;
  pointer-events: none;
}
.price-list .container .side-block .side-block-inner a.current::after {
  background-image: url(../../src/img/optimized/casestudy/link-arrow-current.svg);
}
.price-list .recent-casestudy {
  margin-top: 40px;
}
.price-list .recent-casestudy-item-wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media (max-width: 768px) {
  .price-list .recent-casestudy-item-wrap {
    grid-template-columns: repeat(1, 1fr);
  }
}
.price-list .recent-casestudy-item-wrap .recent-casestudy-item a {
  display: flex;
  flex-direction: column;
  gap: 10px;
  border: 1px solid #02369A;
  padding: 10px 0;
  border-radius: 10px;
  position: relative;
}
.price-list .recent-casestudy-item-wrap .recent-casestudy-item a .prefucture-title {
  display: inline-block;
  background-color: #02369A;
  color: #fff;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  padding: 5px 10px;
  text-align: center;
  margin: auto;
  width: 50%;
}
.price-list .recent-casestudy-item-wrap .recent-casestudy-item a img {
  width: 100%;
  height: 100%;
  max-height: 111px;
  object-fit: cover;
  object-position: top center;
}
.price-list .recent-casestudy-item-wrap .recent-casestudy-item a .hospital-name {
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.024em;
  color: #02369A;
  text-align: center;
}
.price-list .recent-casestudy-item-wrap .recent-casestudy-item a .hospital-contents {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  padding: 0 10px;
  margin-bottom: 0;
}
.price-list .recent-casestudy-item-wrap .recent-casestudy-item a::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(2, 54, 154, 0.5);
  border-radius: 10px;
  pointer-events: none;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.price-list .recent-casestudy-item-wrap .recent-casestudy-item a:hover::after {
  opacity: 1;
}
.price-list .left-block-title--price-list {
  border-left: 10px solid #02369A;
}
.price-list .discount-text {
  border: 1px solid #FF6C00;
  padding: 15px;
  margin-bottom: 40px;
  border-radius: 10px;
}
.price-list .discount-text p {
  margin-bottom: 0;
}
.price-list .price-table th {
  background-color: #E3F5FF;
}
.price-list .price-table td {
  background-color: #fff;
}
.price-list .price-list {
  margin-bottom: 60px;
}
.price-list .kantan-video-section {
  margin-bottom: 100px;
}
.price-list .cta-section .cta-text {
  color: #02369A;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 60px;
  text-align: center;
}
.price-list .cta-section .cta-button {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media (max-width: 768px) {
  .price-list .cta-section .cta-button {
    grid-template-columns: repeat(1, 1fr);
  }
}
.price-list .cta-section .cta-button-item a {
  display: flex;
  align-items: center;
  justify-content: center;
}
.price-list .cta-section .cta-button-item .cta-button-item-link {
  color: #fff;
  padding: 10px 20px;
  border-radius: 10px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  transition: all 0.3s ease;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  position: relative;
}
@media (max-width: 768px) {
  .price-list .cta-section .cta-button-item .cta-button-item-link {
    justify-content: center;
    padding-right: 50px;
  }
}
.price-list .cta-section .cta-button-item .cta-button-item-link--primary {
  background-color: #02369A;
  border: 1px solid #02369A;
}
.price-list .cta-section .cta-button-item .cta-button-item-link--primary::after {
  content: "";
  background-image: url(../../src/img/optimized/price-list/link-arrow-current.svg);
  width: 18px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: all 0.3s ease;
  margin-left: 10px;
}
@media (max-width: 768px) {
  .price-list .cta-section .cta-button-item .cta-button-item-link--primary::after {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    margin-left: 0;
  }
}
.price-list .cta-section .cta-button-item .cta-button-item-link--primary:hover {
  background-color: #fff;
  color: #02369A;
  transition: all 0.3s ease;
}
.price-list .cta-section .cta-button-item .cta-button-item-link--primary:hover::after {
  background-image: url(../../src/img/optimized/price-list/link-arrow-current.svg);
  transition: all 0.3s ease;
}
@media (min-width: 769px) {
  .price-list .cta-section .cta-button-item .cta-button-item-link--primary:hover::after {
    transform: translateX(5px);
  }
}
@media (max-width: 768px) {
  .price-list .cta-section .cta-button-item .cta-button-item-link--primary:hover::after {
    transform: translateY(-50%) translateX(5px);
  }
}
.price-list .cta-section .cta-button-item .cta-button-item-link--secondary {
  background-color: #FF6C00;
  border: 1px solid #FF6C00;
  text-align: center;
}
.price-list .cta-section .cta-button-item .cta-button-item-link--secondary::after {
  content: "";
  background-image: url(../../src/img/optimized/price-list/link-arrow-secondary.svg);
  width: 18px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: all 0.3s ease;
  margin-left: 10px;
}
@media (max-width: 768px) {
  .price-list .cta-section .cta-button-item .cta-button-item-link--secondary::after {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    margin-left: 0;
  }
}
.price-list .cta-section .cta-button-item .cta-button-item-link--secondary:hover {
  background-color: #fff;
  color: #FF6C00;
  transition: all 0.3s ease;
}
.price-list .cta-section .cta-button-item .cta-button-item-link--secondary:hover::after {
  background-image: url(../../src/img/optimized/price-list/link-arrow-secondary.svg);
  transition: all 0.3s ease;
}
@media (min-width: 769px) {
  .price-list .cta-section .cta-button-item .cta-button-item-link--secondary:hover::after {
    transform: translateX(5px);
  }
}
@media (max-width: 768px) {
  .price-list .cta-section .cta-button-item .cta-button-item-link--secondary:hover::after {
    transform: translateY(-50%) translateX(5px);
  }
}
.price-list .cta-section .cta-button-item p {
  margin-bottom: 0;
}
.price-list .setplan p {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 0;
}
.price-list .price-table--specifictraining tfoot th {
  color: #222;
}
.price-list .price-table--specifictraining tbody th {
  font-size: 14px;
}
.price-list .left-block-title--kantan-video-price {
  border-left: 10px solid #FF6C00;
}
.price-list .price-block-kantan-video-price .container {
  max-width: 700px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.price-list .price-block-kantan-video-price .container .price-table img {
  width: 100%;
}

.companionanimal {
  /* ベーススタイル */
  /* 交互の行の背景色 */
  /* ホバーエフェクト */
  /* 名前列のスタイル */
  /* 詳細情報のスタイル */
  /* レスポンシブ対応 */
  /* アクセシビリティ向上 */
  /* 印刷対応 */
}
.companionanimal .service-page-header {
  margin: auto calc(50% - 50vw) 24px;
  background-color: #fce8e7;
  background-image: none;
  padding: 0;
}
.companionanimal .service-page-header .entry-header {
  background: url("../../src/img/optimized/companionanimal/companionanimal-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
}
@media (max-width: 768px) {
  .companionanimal .service-page-header .entry-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/companionanimal/companionanimal-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
  }
}
.companionanimal .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #FF5771;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .companionanimal .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.companionanimal .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.companionanimal .left-block-title--companionanimal {
  border-left: 10px solid #FF5771;
}
.companionanimal .button-box .button-box-item--session {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.companionanimal .button-box .button-box-item--session .small-text {
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: 0.05em;
}
.companionanimal .companionanimal .mv-section {
  background-image: url(../img/companionanimal/companionanimal-header-bg.jpg);
  background-size: cover;
  background-position: center bottom;
  background-repeat: no-repeat;
  padding: 60px 0;
  border-left: 4px solid #40e0d0;
}
@media screen and (max-width: 768px) {
  .companionanimal .companionanimal .mv-section {
    border-left: none;
    background-position: 71% 100%;
    padding: 20px 0 170px;
  }
}
.companionanimal .companionanimal .mv-content {
  padding-left: 20px;
}
@media screen and (max-width: 768px) {
  .companionanimal .companionanimal .mv-content {
    padding-left: 0;
  }
}
.companionanimal .companionanimal .mv-text {
  color: #6a4a4a;
  display: flex;
  flex-direction: column-reverse;
}
.companionanimal .companionanimal .mv-text .mv-description {
  font-size: 1.563rem;
  font-weight: 500;
  text-align: left;
}
.companionanimal .companionanimal .mv-text .mv-title {
  font-size: 2.5rem;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  font-weight: bold;
  line-height: 1.2;
}
.companionanimal .companionanimal .mv-points {
  max-width: 48%;
  margin-top: 50px;
}
.companionanimal .companionanimal .mv-points ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  list-style: none;
  padding: 0;
  margin: 0;
}
@media screen and (max-width: 768px) {
  .companionanimal .companionanimal .mv-points {
    margin-top: 10px;
    max-width: 100%;
  }
  .companionanimal .companionanimal .mv-points ul {
    grid-template-columns: repeat(3, 1fr);
  }
}
.companionanimal .application-buttons {
  display: flex;
  gap: 20px;
  justify-content: center;
  align-items: center;
  margin-top: 30px;
  margin-bottom: 30px;
}
.companionanimal .application-buttons .btn {
  width: 321px;
  height: 81px;
}
@media screen and (max-width: 768px) {
  .companionanimal .application-buttons {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 10px;
    margin-bottom: 10px;
  }
  .companionanimal .application-buttons .btn {
    width: 100%;
    height: 50px;
  }
}
.companionanimal .veterinary-staff-table-wrapper {
  width: 100%;
  overflow-x: auto;
  margin: 30px 0;
}
.companionanimal .veterinary-staff-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 14px;
  line-height: 1.6;
}
.companionanimal .veterinary-staff-table th,
.companionanimal .veterinary-staff-table td {
  padding: 12px 16px;
  text-align: left;
  vertical-align: top;
  border: 1px solid #e0e0e0;
}
.companionanimal .veterinary-staff-table th {
  background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
  font-weight: 600;
  color: #333;
  white-space: nowrap;
  min-width: 120px;
}
.companionanimal .veterinary-staff-table td {
  background: #fff;
}
.companionanimal .veterinary-staff-table tbody tr:hover td {
  background: #e3f2fd;
  transition: background-color 0.2s ease;
}
.companionanimal .veterinary-staff-table .name-column {
  font-weight: 600;
  background: #FDF5F5;
  min-width: 100px;
}
.companionanimal .veterinary-staff-table .detail-column {
  line-height: 1.7;
  padding-right: 20px;
}
.companionanimal .veterinary-staff-table td.detail-column:nth-child(2) {
  padding-right: 30px;
}
.companionanimal .veterinary-staff-table td.name-column:nth-child(3),
.companionanimal .veterinary-staff-table td.detail-column:nth-child(4) {
  border-left: 3px solid #e0e0e0;
  padding-left: 24px;
}
@media screen and (max-width: 768px) {
  .companionanimal .veterinary-staff-table-wrapper {
    margin: 10px 0;
    border-radius: 4px;
  }
  .companionanimal .veterinary-staff-table {
    font-size: 12px;
  }
  .companionanimal .veterinary-staff-table th,
  .companionanimal .veterinary-staff-table td {
    padding: 8px 12px;
  }
  .companionanimal .veterinary-staff-table th {
    min-width: 80px;
  }
}
@media screen and (max-width: 480px) {
  .companionanimal .veterinary-staff-table {
    font-size: 11px;
  }
  .companionanimal .veterinary-staff-table th,
  .companionanimal .veterinary-staff-table td {
    padding: 6px 8px;
  }
}
.companionanimal .veterinary-staff-table:focus-within {
  outline: 2px solid #007cba;
  outline-offset: 2px;
}
@media print {
  .companionanimal .veterinary-staff-table-wrapper {
    box-shadow: none;
    overflow: visible;
  }
  .companionanimal .veterinary-staff-table {
    font-size: 10px;
  }
  .companionanimal .veterinary-staff-table th,
  .companionanimal .veterinary-staff-table td {
    padding: 4px 6px;
    border: 1px solid #000;
  }
}
.companionanimal .about-companionanimal {
  margin-top: 80px;
}
.companionanimal .about-companionanimal-title {
  color: #000000;
  font-size: 30px;
  font-weight: 700;
  padding-left: 15px;
  border-left: 10px solid #FC6F85;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
}
@media screen and (max-width: 768px) {
  .companionanimal .about-companionanimal-title {
    font-size: 20px;
    padding-left: 0;
    border-left: none;
  }
}
.companionanimal .about-companionanimal-content p {
  font-size: 1rem; /* フォントサイズ: 16px */
  font-weight: 400; /* レギュラー（通常） */
  letter-spacing: 0.04em; /* 字間: 40/1000em = 0.04em */
  line-height: 1.6875; /* 行送り: 27/16 = 1.6875 */
  margin-top: 30px;
}
.companionanimal .about-companionanimal-description {
  color: #FC6F85;
  font-size: 1.563rem;
  font-weight: 500;
}
.companionanimal .greeting-section {
  padding: 50px 28px;
  background-color: #FDF5F5;
  border-radius: 22px;
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .companionanimal .greeting-section {
    font-size: 18px;
  }
}
.companionanimal .greeting-title {
  color: #FC6F85;
  font-size: 30px;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .companionanimal .greeting-title {
    font-size: 18px;
  }
}
.companionanimal .greeting-content p {
  font-size: 1rem;
  letter-spacing: 0.04em;
  line-height: 1.6875;
  margin-top: 30px;
  text-align: left;
}
.companionanimal .greeting-image {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 20px;
}
@media screen and (max-width: 768px) {
  .companionanimal .greeting-image {
    margin-top: 40px;
  }
}
.companionanimal .greeting-image .greeting-image-text {
  text-align: right;
  margin-bottom: 8px;
}
.companionanimal .greeting-image .greeting-image-text p {
  font-size: 1rem;
  letter-spacing: 0.04em;
  line-height: 1.6875;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .companionanimal .greeting-image .greeting-image-text p {
    font-size: 14px;
  }
}
.companionanimal .greeting-image img {
  width: 139px;
  height: auto;
  object-fit: cover;
}
.companionanimal .greeting-section-title {
  font-size: 1.5rem;
  font-weight: 500;
  margin-top: 53px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .companionanimal .greeting-section-title {
    font-size: 1.1rem;
  }
}
.companionanimal .greeting-section-content {
  background-color: #FDF5F5;
  border-radius: 19px;
  margin-top: 45px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  padding: 30px 0;
}
@media screen and (max-width: 768px) {
  .companionanimal .greeting-section-content {
    padding: 20px 10px;
  }
}
.companionanimal .greeting-section-content p {
  font-size: 1rem;
  letter-spacing: 0.04em;
  line-height: 1.6875;
}
.companionanimal .greeting-section-content p span {
  font-size: 1.25rem;
  font-weight: 700;
}
.companionanimal .greeting-section-content .price-button {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}
.companionanimal .greeting-section-content .price-button a {
  background-color: #fc6f85;
  border-radius: 999px;
  border: 1px solid #FC6F85;
  color: #fff;
  font-size: 1.375rem;
  font-weight: 700;
  padding: 0 28px 0 118px;
  height: 55px;
  min-width: 433px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  box-shadow: none;
  text-decoration: none;
  transition: background 0.2s;
}
@media screen and (max-width: 768px) {
  .companionanimal .greeting-section-content .price-button a {
    font-size: 1.1rem;
    padding: 0 20px 0 60px;
    height: 45px;
    min-width: 80%;
  }
}
.companionanimal .greeting-section-content .price-button a span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  background: #fff;
  border-radius: 50%;
  margin-left: 24px;
}
.companionanimal .greeting-section-content .price-button a img {
  width: 25px;
  height: 25px;
  object-fit: contain;
  margin: 0;
  transition: margin-left 0.2s;
  border: 1px solid #fff;
  border-radius: 50%;
}
.companionanimal .greeting-section-content .price-button a:hover {
  background-color: #fff;
  color: #FC6F85;
}
.companionanimal .greeting-section-content .price-button a:hover span img {
  margin-left: -15px;
  border: 1px solid #FC6F85;
  border-radius: 50%;
}
.companionanimal .greeting-section-content-title {
  font-size: 1.875rem;
  font-weight: 700;
  margin-bottom: 20px;
  color: #FC6F85;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .companionanimal .greeting-section-content-title {
    font-size: 1.13rem;
  }
}
.companionanimal .sample-video {
  margin-top: 100px;
  background-color: #FDF5F5;
  margin: auto calc(50% - 50vw);
}
@media screen and (max-width: 768px) {
  .companionanimal .sample-video {
    margin-top: 50px;
  }
}
.companionanimal .sample-video-content {
  background-color: #FDF5F5;
  padding: 60px 0;
  margin-top: 45px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
.companionanimal .sample-video-title {
  color: #000000;
  font-size: 30px;
  font-weight: 700;
  padding-left: 15px;
  border-left: 10px solid #FC6F85;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  align-self: flex-start;
}
@media screen and (max-width: 768px) {
  .companionanimal .sample-video-title {
    font-size: 1.125rem;
  }
}
.companionanimal .sample-video-list {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 30px 24px;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .companionanimal .sample-video-list {
    gap: 10px 10px;
  }
}
.companionanimal .sample-video-item {
  width: calc(50% - 20px);
}
.companionanimal .sample-video-item-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.companionanimal .teacher-list {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  .companionanimal .teacher-list {
    margin-top: 50px;
  }
}
.companionanimal .teacher-list-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 30px;
}
.companionanimal .teacher-list-title {
  color: #000000;
  font-size: 30px;
  font-weight: 700;
  padding-left: 15px;
  border-left: 10px solid #FC6F85;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  align-self: flex-start;
}
@media screen and (max-width: 768px) {
  .companionanimal .teacher-list-title {
    font-size: 1.125rem;
  }
}
.companionanimal .veterinary-staff-table-flex {
  display: flex;
  gap: 32px;
  justify-content: center;
  margin-bottom: 68px;
}
.companionanimal .veterinary-staff-table-flex .veterinary-staff-table {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .companionanimal .veterinary-staff-table-flex {
    flex-direction: column;
    gap: 16px;
    align-items: center;
  }
  .companionanimal .veterinary-staff-table-flex .veterinary-staff-table {
    max-width: 100%;
  }
}
.companionanimal .price-section {
  background: #FDF5F5;
  padding: 60px 0 20px;
  margin-top: 45px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  margin: auto calc(50% - 50vw);
}
@media screen and (max-width: 768px) {
  .companionanimal .price-section ul {
    padding-left: 20px;
  }
  .companionanimal .price-section ul li {
    font-size: 0.75rem;
  }
}
@media screen and (max-width: 768px) {
  .companionanimal .price-section .container {
    padding: 0 10px;
  }
}
.companionanimal .price-section-title {
  margin-top: 92px;
  color: #000000;
  font-size: 30px;
  font-weight: 700;
  padding-left: 15px;
  border-left: 10px solid #FC6F85;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  align-self: flex-start;
}
@media screen and (max-width: 768px) {
  .companionanimal .price-section-title {
    margin-top: 0;
    font-size: 1.125rem;
  }
}
.companionanimal .price-section-table {
  margin-top: 30px;
  margin-bottom: 20px;
}
.companionanimal .template-card-list-ul, .companionanimal .price-section-list-ul {
  list-style-type: disc;
  padding-left: 20px;
  margin-bottom: 30px;
}
.companionanimal .template-card-list-ul li, .companionanimal .price-section-list-ul li {
  font-size: 1rem;
  line-height: 1.6875;
  letter-spacing: 0.04em;
}
.companionanimal .price-section-table-image {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.companionanimal .price-section-table-image-wrapper {
  width: 100%;
}
.companionanimal .subsidies-section {
  background: #fff;
  border-radius: 30px;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  padding: 30px;
  margin-top: 30px;
  margin-bottom: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.companionanimal .subsidies-section .subsidies-section-title {
  font-size: 1.875rem;
  font-weight: 500;
  margin-bottom: 20px;
  letter-spacing: 0.05em;
  line-height: 1.7333333333;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .companionanimal .subsidies-section .subsidies-section-title {
    font-size: 1.125rem;
  }
}
.companionanimal .subsidies-section .subsidies-section-title .yellow-underline {
  font-size: 2.5rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1.7333333333;
  color: #FF5771;
}
.companionanimal .subsidies-section .subsidies-section-title .font-big {
  font-size: 3.75rem;
}
.companionanimal .subsidies-section .colo-pen_yellow {
  font-size: 1.5rem;
  font-weight: 700;
}
.companionanimal .subsidies-section .font-big {
  font-size: 1.5rem;
}
.companionanimal .subsidies-section .subsidies-section-note-big {
  font-size: 1.5rem;
}
@media screen and (max-width: 768px) {
  .companionanimal .subsidies-section .subsidies-section-note-big {
    font-size: 1.125rem;
  }
}
.companionanimal .subsidies-section .subsidies-section-button {
  font-size: 1rem;
}
.companionanimal .subsidies-section .subsidies-section-note {
  font-size: 1rem;
}
.companionanimal .subsidies-section .subsidies-section-url {
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  word-wrap: break-word;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .companionanimal .subsidies-section .subsidies-section-url {
    font-size: 1.125rem;
    word-wrap: break-word;
  }
}
.companionanimal .subsidies-section .subsidies-section-url a {
  width: 100%;
}
.companionanimal .subsidies-section .subsidies-section-url a:hover {
  color: #FF5771;
  text-decoration: underline;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .companionanimal .subsidies-section .subsidies-section-url a {
    font-size: 1.125rem;
    word-wrap: break-word;
  }
}
.companionanimal .subsidies-section .mail-link {
  color: #FF5771;
  text-decoration: underline;
  font-weight: 700;
  transition: all 0.3s ease-in-out;
}
.companionanimal .subsidies-section .mail-link:hover {
  color: #FF5771;
  text-decoration: none;
  font-weight: 700;
  transition: all 0.3s ease-in-out;
}
.companionanimal .option-section {
  margin-top: 90px;
}
@media screen and (max-width: 768px) {
  .companionanimal .option-section {
    margin-top: 50px;
  }
}
.companionanimal .option-section-title {
  color: #000000;
  font-size: 30px;
  font-weight: 700;
  padding-left: 15px;
  border-left: 10px solid #FC6F85;
  font-family: "hiragino-kaku-gothic-pron", sans-serif;
  align-self: flex-start;
}
@media screen and (max-width: 768px) {
  .companionanimal .option-section-title {
    font-size: 1.125rem;
  }
}
.companionanimal .option-section-title-note {
  color: #FC6F85;
  font-size: 1.125rem;
  font-weight: 700;
  margin-top: 0;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .companionanimal .option-section-title-note {
    font-size: 0.875rem;
  }
}
.companionanimal .option-section-content {
  margin-bottom: 30px;
}
.companionanimal .option-section-text {
  margin-top: 30px;
}
.companionanimal .option-section-subtitle {
  background-color: #FC6F85;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 10px 20px;
  border-radius: 30px;
  margin-top: 30px;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .companionanimal .option-section-subtitle {
    font-size: 1.125rem;
  }
}
.companionanimal .option-section-step {
  margin-top: 30px;
  margin-bottom: 60px;
}
.companionanimal .template-card-section {
  margin: 40px 0 60px;
}
.companionanimal .template-card-wrapper {
  background: #fff;
  border: 2px solid #FC6F85;
  border-radius: 20px;
  padding: 40px 32px 32px 32px;
  box-shadow: 0 2px 8px rgba(252, 111, 133, 0.05);
}
@media screen and (max-width: 768px) {
  .companionanimal .template-card-wrapper {
    padding: 20px 10px;
  }
}
.companionanimal .template-card-flex {
  display: flex;
  gap: 0;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .companionanimal .template-card-flex {
    flex-direction: column;
    gap: 20px;
  }
}
.companionanimal .template-card-item {
  flex: 1 1 0;
  min-width: 220px;
  max-width: 370px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.companionanimal .template-card-title {
  color: #FC6F85;
  font-size: 1.312rem;
  font-weight: 700;
  margin-bottom: 12px;
  margin-top: 0;
  text-align: left;
}
.companionanimal .template-card-title.sub {
  margin-top: 32px;
  font-size: 1.25rem;
}
.companionanimal .template-card-item ul {
  margin: 0 0 12px 0;
  padding: 0 0 0 1.2em;
  list-style: none;
}
.companionanimal .template-card-item ul li {
  font-size: 1.1rem;
  color: #333;
  margin-bottom: 4px;
  text-align: left;
}
@media screen and (max-width: 768px) {
  .companionanimal .template-card-item ul li {
    font-size: 0.875rem;
  }
}
.companionanimal .template-card-note {
  font-size: 0.8rem;
  color: #FC6F85;
  line-height: 1;
  font-weight: 500;
  margin-top: 8px;
  text-align: left;
}
@media screen and (max-width: 900px) {
  .companionanimal .template-card-flex {
    flex-direction: column;
    gap: 24px;
    align-items: stretch;
  }
  .companionanimal .template-card-item {
    max-width: 100%;
  }
}
.companionanimal .language-section {
  margin-top: 60px;
}
.companionanimal .language-section-title {
  background-color: #FC6F85;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 10px 20px;
  border-radius: 30px;
  margin-top: 30px;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .companionanimal .language-section-title {
    font-size: 1.125rem;
  }
}
.companionanimal .language-section-content p {
  text-align: left;
}
.companionanimal .multilingual-image {
  border: 2px solid #FC6F85;
  border-radius: 20px;
  padding: 38px 0 0 40px;
  margin-top: 30px;
  margin-bottom: 30px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .companionanimal .multilingual-image {
    padding: 20px 0 0 0;
  }
}
.companionanimal .language-grid-6 {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0;
  margin: 0 auto;
  max-width: 980px;
}
@media screen and (max-width: 768px) {
  .companionanimal .language-grid-6 {
    grid-template-columns: repeat(2, 1fr);
  }
}
.companionanimal .language-column ul {
  list-style-type: disc;
  padding-left: 0;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .companionanimal .language-column ul {
    padding-left: 40px;
  }
}
.companionanimal .language-column ul li {
  padding: 4px 0;
  font-size: 0.8rem;
  color: #333;
  line-height: 1;
  font-weight: 700;
}
.companionanimal .option-price-section-title {
  background-color: #FC6F85;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 10px 20px;
  border-radius: 30px;
  margin-top: 30px;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .companionanimal .option-price-section-title {
    font-size: 1.125rem;
  }
}
.companionanimal .option-price-wrapper {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 30px;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .companionanimal .option-price-wrapper {
    flex-direction: column;
    gap: 20px;
  }
}
.companionanimal .option-price-item-left {
  width: 29%;
}
@media screen and (max-width: 768px) {
  .companionanimal .option-price-item-left {
    width: 100%;
  }
}
.companionanimal .option-price-item-right {
  width: 71%;
}
@media screen and (max-width: 768px) {
  .companionanimal .option-price-item-right {
    width: 100%;
  }
}
.companionanimal .option-price-item-note li {
  font-size: 0.8rem;
  color: #333;
  line-height: 1;
  font-weight: 500;
  margin-bottom: 4px;
  text-align: left;
}
.companionanimal .option-price-item-note li.option-price-item-note-title {
  color: #FC6F85;
}
.companionanimal .application-section-title a {
  background-color: #FC6F85;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 19px 20px;
  border-radius: 10px;
  margin-top: 60px;
  margin-bottom: 30px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  text-decoration: none;
  border: 1px solid #FC6F85;
  transition: all 0.2s;
}
@media screen and (max-width: 768px) {
  .companionanimal .application-section-title a {
    font-size: 1.125rem;
  }
}
.companionanimal .application-section-title a span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  background: #fff;
  border-radius: 50%;
  margin-left: 24px;
}
.companionanimal .application-section-title a span img {
  width: 25px;
  height: 25px;
  object-fit: contain;
  border: 1px solid #fff;
  border-radius: 50%;
  transition: all 0.2s;
}
.companionanimal .application-section-title a:hover {
  background-color: #fff;
  color: #FC6F85;
}
.companionanimal .application-section-title a:hover span img {
  margin-left: -15px;
  border: 1px solid #FC6F85;
  border-radius: 50%;
}
.companionanimal .pamphlet {
  margin-top: 60px;
}
.companionanimal .application-section-title {
  margin-top: 60px;
}
.companionanimal .application-section-title a {
  width: 80%;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .companionanimal .application-section-title a {
    width: 100%;
  }
}
.companionanimal .application-section-title a {
  transition: all 0.3s ease-in-out;
}
.companionanimal .application-section-title a span {
  background: none;
}
.companionanimal .application-section-title a span img {
  transition: all 0.3s ease-in-out;
  border: none;
}
.companionanimal .application-section-title a:hover span img {
  transform: translateX(5px);
  margin-left: 0;
}

.page-sque-patient-video-tool .service-page-header {
  background: url("../../src/img/optimized/sque_patient_video_tool/sque_patient_video_tool-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
  margin: auto calc(50% - 50vw) 24px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .service-page-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/sque_patient_video_tool/sque_patient_video_tool-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
    height: 480px;
  }
}
.page-sque-patient-video-tool .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #FF6C02;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.page-sque-patient-video-tool .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.page-sque-patient-video-tool .left-block-title--companionanimal {
  border-left: 10px solid #FF6C02;
}
.page-sque-patient-video-tool .mv-section {
  background: #fffada;
  padding: 30px 0;
  color: #000;
  margin-top: 20px;
}
.page-sque-patient-video-tool .mv-section .mv-content {
  display: flex;
  align-items: center;
  gap: 60px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .mv-section .mv-content {
    flex-direction: column;
    gap: 40px;
    text-align: center;
  }
}
.page-sque-patient-video-tool .mv-section .mv-text {
  flex: 1;
}
.page-sque-patient-video-tool .mv-section .mv-title {
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 20px;
}
.page-sque-patient-video-tool .mv-section .mv-title .highlight {
  background: rgba(255, 255, 255, 0.2);
  padding: 5px 15px;
  border-radius: 25px;
  font-size: 1.2rem;
  display: inline-block;
  margin-bottom: 10px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .mv-section .mv-title {
    font-size: 2rem;
  }
}
.page-sque-patient-video-tool .mv-section .mv-description {
  font-size: 1.1rem;
  line-height: 1.6;
  opacity: 0.9;
}
.page-sque-patient-video-tool .mv-section .mv-image {
  flex: 1;
  text-align: center;
}
.page-sque-patient-video-tool .mv-section .mv-image img {
  max-width: 100%;
  height: auto;
}
.page-sque-patient-video-tool .section-title {
  font-size: 2rem;
  font-weight: bold;
  text-align: left;
  margin-bottom: 20px;
  color: #333;
  line-height: 1.4;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .section-title {
    font-size: 1.375rem;
    margin-bottom: 20px;
  }
}
.page-sque-patient-video-tool .service-intro {
  padding: 80px 0 20px;
  background: #fff;
}
.page-sque-patient-video-tool .service-intro .section-title {
  padding-left: 20px;
  border-left: 10px solid #02369a;
}
.page-sque-patient-video-tool .service-intro .intro-content {
  text-align: left;
}
.page-sque-patient-video-tool .service-intro .intro-content p {
  font-size: 1.1rem;
  line-height: 1.8;
  color: #000;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .service-intro .intro-content p {
    font-size: 0.875rem;
  }
}
.page-sque-patient-video-tool .features-section {
  padding: 0 0 20px;
}
.page-sque-patient-video-tool .features-section .section-title {
  color: #02369a;
  text-align: center;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .features-section .section-title {
    text-align: left;
  }
}
.page-sque-patient-video-tool .features-section .container {
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
  padding: 40px;
  border-radius: 10px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .features-section .container {
    padding: 20px;
  }
}
.page-sque-patient-video-tool .features-section .feature-text {
  margin-bottom: 20px;
}
.page-sque-patient-video-tool .features-section .feature-text p {
  font-size: 1.1rem;
  line-height: 1.8;
  color: #000;
  font-weight: 700;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .features-section .feature-text p {
    font-size: 0.875rem;
  }
}
.page-sque-patient-video-tool .features-section .feature-text small {
  font-size: 0.8rem;
  color: #000;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .features-section .feature-text small {
    font-size: 0.75rem;
  }
}
.page-sque-patient-video-tool .features-section .features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 40px;
  margin-top: 60px;
}
.page-sque-patient-video-tool .features-section .feature-item {
  text-align: center;
  padding: 40px 20px;
  background: white;
  border-radius: 15px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.page-sque-patient-video-tool .features-section .feature-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}
.page-sque-patient-video-tool .features-section .feature-item .feature-icon {
  margin-bottom: 20px;
}
.page-sque-patient-video-tool .features-section .feature-item .feature-icon img {
  width: 80px;
  height: 80px;
  object-fit: contain;
}
.page-sque-patient-video-tool .features-section .feature-item h4 {
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: 15px;
  color: #333;
}
.page-sque-patient-video-tool .features-section .feature-item p {
  color: #666;
  line-height: 1.6;
}
.page-sque-patient-video-tool .usage-scene {
  padding: 80px 0;
  background: #f8f9fa;
}
.page-sque-patient-video-tool .usage-scene .scene-content {
  display: flex;
  align-items: center;
  gap: 60px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .usage-scene .scene-content {
    flex-direction: column;
    gap: 40px;
  }
}
.page-sque-patient-video-tool .usage-scene .scene-image {
  flex: 1;
  text-align: center;
}
.page-sque-patient-video-tool .usage-scene .scene-image img {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
}
.page-sque-patient-video-tool .usage-scene .scene-text {
  flex: 1;
}
.page-sque-patient-video-tool .usage-scene .scene-text h3 {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 30px;
  color: #333;
}
.page-sque-patient-video-tool .usage-scene .scene-text ul {
  list-style: none;
  padding: 0;
}
.page-sque-patient-video-tool .usage-scene .scene-text ul li {
  padding: 12px 0;
  padding-left: 30px;
  position: relative;
  font-size: 1.1rem;
  color: #000;
}
.page-sque-patient-video-tool .usage-scene .scene-text ul li:before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #ff6b35;
  font-weight: bold;
  font-size: 1.2rem;
}
.page-sque-patient-video-tool .process-section {
  padding: 80px 0;
}
.page-sque-patient-video-tool .process-section .section-title {
  background: #ff9300;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  border-radius: 30px;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 20px;
}
.page-sque-patient-video-tool .process-section p {
  text-align: center;
}
.page-sque-patient-video-tool .process-section .process-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 40px;
  margin-top: 20px;
}
.page-sque-patient-video-tool .process-section .step {
  text-align: center;
  position: relative;
}
.page-sque-patient-video-tool .process-section .step .step-number {
  width: 60px;
  height: 60px;
  background: linear-gradient(135deg, #ff6b35, #f7931e);
  color: white;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  font-weight: bold;
  margin: 0 auto 20px;
}
.page-sque-patient-video-tool .process-section .step h4 {
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: 15px;
  color: #333;
}
.page-sque-patient-video-tool .process-section .step p {
  color: #666;
  line-height: 1.6;
}
.page-sque-patient-video-tool .pricing-section {
  padding: 80px 0;
}
.page-sque-patient-video-tool .pricing-section .pricing-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 30px;
  margin-top: 60px;
}
.page-sque-patient-video-tool .pricing-section .pricing-plan {
  background: white;
  border-radius: 15px;
  padding: 40px 30px;
  text-align: center;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease;
  position: relative;
}
.page-sque-patient-video-tool .pricing-section .pricing-plan.featured {
  transform: scale(1.05);
  border: 3px solid #ff6b35;
}
.page-sque-patient-video-tool .pricing-section .pricing-plan.featured:before {
  content: "おすすめ";
  position: absolute;
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  background: #ff6b35;
  color: white;
  padding: 8px 20px;
  border-radius: 20px;
  font-size: 0.9rem;
  font-weight: bold;
}
.page-sque-patient-video-tool .pricing-section .pricing-plan:hover {
  transform: translateY(-5px);
}
.page-sque-patient-video-tool .pricing-section .pricing-plan h4 {
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 20px;
  color: #333;
}
.page-sque-patient-video-tool .pricing-section .pricing-plan .price {
  font-size: 2rem;
  font-weight: bold;
  color: #ff6b35;
  margin-bottom: 30px;
}
.page-sque-patient-video-tool .pricing-section .pricing-plan ul {
  list-style: none;
  padding: 0;
  text-align: left;
}
.page-sque-patient-video-tool .pricing-section .pricing-plan ul li {
  padding: 10px 0;
  border-bottom: 1px solid #eee;
  color: #555;
}
.page-sque-patient-video-tool .pricing-section .pricing-plan ul li:last-child {
  border-bottom: none;
}
.page-sque-patient-video-tool .pricing-section .pricing-plan ul li:before {
  content: "✓";
  color: #ff6b35;
  font-weight: bold;
  margin-right: 10px;
}
.page-sque-patient-video-tool .multilingual-section {
  padding: 80px 0 100px;
}
.page-sque-patient-video-tool .multilingual-section .multilingual-description {
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.8;
  color: #555;
  margin-bottom: 50px;
  margin-left: auto;
  margin-right: auto;
  word-break: keep-all;
  overflow-wrap: anywhere;
}
.page-sque-patient-video-tool .multilingual-section .multilingual-image {
  background: url(../../src/img/optimized/sque_patient_video_tool/fukidasi.png) no-repeat center center;
  background-size: 100% 100%;
  padding: 0px 0px 30px 20px;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .multilingual-section .multilingual-image {
    padding: 0px 0px 30px 0px;
    background: none;
    border: 2px solid #ff9300;
    border-radius: 10px;
    padding: 20px 30px;
    position: relative;
  }
  .page-sque-patient-video-tool .multilingual-section .multilingual-image::after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #ff9300;
  }
  .page-sque-patient-video-tool .multilingual-section .multilingual-image::before {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 8px solid #fff;
    z-index: 1;
  }
}
.page-sque-patient-video-tool .multilingual-section .language-grid-6 {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0;
  margin: 0 auto;
  max-width: 1050px;
}
@media (max-width: 1024px) {
  .page-sque-patient-video-tool .multilingual-section .language-grid-6 {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .multilingual-section .language-grid-6 {
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
  }
}
@media (max-width: 480px) {
  .page-sque-patient-video-tool .multilingual-section .language-grid-6 {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 0;
    column-gap: 10px;
  }
}
.page-sque-patient-video-tool .multilingual-section .language-column {
  padding: 20px 0 30px 0;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .multilingual-section .language-column {
    padding: 0;
  }
}
.page-sque-patient-video-tool .multilingual-section .language-column ul {
  padding: 0;
  margin: 0;
}
.page-sque-patient-video-tool .multilingual-section .language-column ul li {
  padding: 4px 0;
  font-size: 0.8rem;
  color: #333;
  line-height: 1;
  font-weight: 700;
}
.page-sque-patient-video-tool .multilingual-section .language-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 20px;
  max-width: 800px;
  margin: 0 auto;
}
.page-sque-patient-video-tool .multilingual-section .language-item {
  text-align: center;
  padding: 20px;
  background: white;
  border-radius: 10px;
  box-shadow: 0 3px 15px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease;
  border: 2px solid #ff6b35;
}
.page-sque-patient-video-tool .multilingual-section .language-item:hover {
  transform: translateY(-3px);
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
}
.page-sque-patient-video-tool .multilingual-section .language-item .language-name {
  font-size: 1.1rem;
  color: #ff6b35;
  font-weight: bold;
  margin-bottom: 5px;
}
.page-sque-patient-video-tool .multilingual-section .language-item .language-native {
  font-size: 0.9rem;
  color: #666;
}
.page-sque-patient-video-tool .easy-edit-section {
  margin-bottom: 100px;
}
.page-sque-patient-video-tool .easy-edit-section .section-title {
  margin-bottom: 20px;
}
.page-sque-patient-video-tool .easy-edit-section p {
  text-align: center;
}
.page-sque-patient-video-tool .easy-edit-section .easy-edit-image {
  margin-top: 40px;
}
.page-sque-patient-video-tool .easy-edit-section .easy-edit-image img {
  width: 100%;
  height: auto;
}
.page-sque-patient-video-tool .option-section {
  margin-bottom: 100px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .option-section {
    margin-bottom: 30px;
  }
}
.page-sque-patient-video-tool .option-section .section-title {
  margin-bottom: 20px;
}
.page-sque-patient-video-tool .option-section h4 {
  font-size: 1.88rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 10px;
  color: #ff9300;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .option-section h4 {
    font-size: 0.98rem;
  }
}
.page-sque-patient-video-tool .option-section p {
  font-size: 0.8rem;
  text-align: left;
}
.page-sque-patient-video-tool .option-section .price-row {
  display: flex;
  gap: 40px;
  align-items: flex-start;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .option-section .price-row {
    flex-direction: column;
    gap: 20px;
  }
}
.page-sque-patient-video-tool .option-section .pricing-item {
  flex: 0 0 auto;
  width: 400px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .option-section .pricing-item {
    width: 100%;
  }
}
.page-sque-patient-video-tool .option-section .option-text {
  flex: 1;
}
.page-sque-patient-video-tool .option-section .option-text p {
  font-size: 1rem;
  line-height: 1.8;
  color: #333;
  margin: 0;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .option-section .option-text p {
    font-size: 0.875rem;
  }
}
.page-sque-patient-video-tool .option-section .pricing-table {
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .option-section .pricing-table {
    grid-template-columns: 1fr 1fr;
  }
}
.page-sque-patient-video-tool .option-section .pricing-row {
  display: contents;
}
.page-sque-patient-video-tool .option-section .pricing-row.pricing-header .pricing-cell {
  background: #ff9300;
  color: #fff;
  font-weight: 700;
  border: 2px solid #fff;
}
.page-sque-patient-video-tool .option-section .pricing-row:not(.pricing-header) .pricing-cell {
  background: #FFE3CE;
  border: 2px solid #fff;
}
.page-sque-patient-video-tool .option-section .pricing-row:not(.pricing-header) .pricing-cell:nth-child(even) {
  background: #FFE3CE;
}
.page-sque-patient-video-tool .option-section .pricing-cell {
  padding: 4px;
  text-align: center;
  font-size: 1.1rem;
  border-right: 1px solid rgba(255, 255, 255, 0.3);
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.page-sque-patient-video-tool .option-section .pricing-cell:nth-child(2n) {
  border-right: none;
}
.page-sque-patient-video-tool .option-section .pricing-cell.header-limit, .page-sque-patient-video-tool .option-section .pricing-cell.header-price {
  font-size: 1.2rem;
  font-weight: 700;
}
.page-sque-patient-video-tool .option-section .pricing-cell.limit-cell {
  font-size: 1.5rem;
  font-weight: 700;
  color: #333;
}
.page-sque-patient-video-tool .option-section .pricing-cell.price-cell {
  font-size: 1.3rem;
  font-weight: 700;
  color: #333;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .option-section .pricing-cell {
    border-right: none;
    border-bottom: 1px solid #eee;
    padding: 15px 10px;
    font-size: 1rem;
  }
  .page-sque-patient-video-tool .option-section .pricing-cell.header-limit, .page-sque-patient-video-tool .option-section .pricing-cell.header-price {
    font-size: 1.1rem;
  }
  .page-sque-patient-video-tool .option-section .pricing-cell.limit-cell {
    font-size: 1.3rem;
  }
  .page-sque-patient-video-tool .option-section .pricing-cell.price-cell {
    font-size: 1.2rem;
  }
}
@media (max-width: 480px) {
  .page-sque-patient-video-tool .option-section .pricing-cell {
    padding: 12px 8px;
    font-size: 0.9rem;
  }
  .page-sque-patient-video-tool .option-section .pricing-cell.header-limit, .page-sque-patient-video-tool .option-section .pricing-cell.header-price {
    font-size: 1rem;
  }
  .page-sque-patient-video-tool .option-section .pricing-cell.limit-cell {
    font-size: 1.2rem;
  }
  .page-sque-patient-video-tool .option-section .pricing-cell.price-cell {
    font-size: 1.1rem;
  }
}
.page-sque-patient-video-tool .application-section {
  padding: 20px 0;
}
.page-sque-patient-video-tool .application-section .application-content {
  text-align: center;
  max-width: 600px;
  margin: 0 auto;
}
.page-sque-patient-video-tool .application-section .application-text {
  margin-bottom: 40px;
}
.page-sque-patient-video-tool .application-section .application-text p {
  font-size: 1.1rem;
  line-height: 1.8;
  color: #555;
  margin-bottom: 15px;
}
.page-sque-patient-video-tool .application-section .application-buttons {
  display: flex;
  gap: 30px;
  justify-content: center;
  align-items: center;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .application-section .application-buttons {
    flex-direction: column;
    gap: 20px;
  }
}
.page-sque-patient-video-tool .application-section .btn {
  font-size: 1.13rem;
  align-items: center;
  appearance: none;
  background: #fff;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 21px 32px;
  position: relative;
  width: 90%;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (min-width: 768px) {
  .page-sque-patient-video-tool .application-section .btn {
    width: 35%;
    padding: 21px 32px;
  }
}
.page-sque-patient-video-tool .application-section .btn .btn-text {
  flex: 1;
  text-align: center !important;
}
.page-sque-patient-video-tool .application-section .btn::before {
  content: "";
  border-radius: 50%;
  height: 25px;
  position: absolute;
  right: 8.4%;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease;
  width: 25px;
}
@media (min-width: 768px) {
  .page-sque-patient-video-tool .application-section .btn::before {
    right: 6%;
  }
}
.page-sque-patient-video-tool .application-section .btn::after {
  content: "";
  height: 8px;
  position: absolute;
  right: calc(8.4% + 10.5px);
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  transition: all 0.3s ease;
  width: 8px;
}
@media (min-width: 768px) {
  .page-sque-patient-video-tool .application-section .btn::after {
    right: calc(6% + 10.5px);
  }
}
.page-sque-patient-video-tool .application-section .btn.btn-consultation {
  border: 1px solid #02369a;
  color: #02369a;
}
.page-sque-patient-video-tool .application-section .btn.btn-consultation::before {
  border: 1px solid #02369a;
}
.page-sque-patient-video-tool .application-section .btn.btn-consultation::after {
  border-right: 1px solid #02369a;
  border-top: 1px solid #02369a;
}
.page-sque-patient-video-tool .application-section .btn.btn-consultation:hover {
  background-color: #02369a;
  color: #fff;
  transition: all 0.3s ease;
}
.page-sque-patient-video-tool .application-section .btn.btn-consultation:hover::before {
  border: 1px solid #fff;
  right: calc(8.4% + 5px);
}
@media (min-width: 768px) {
  .page-sque-patient-video-tool .application-section .btn.btn-consultation:hover::before {
    right: calc(6% + 5px);
  }
}
.page-sque-patient-video-tool .application-section .btn.btn-consultation:hover::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: translateY(-50%) rotate(45deg) translate(5px, -5px);
  right: calc(8.4% + 23.5px);
}
@media (min-width: 768px) {
  .page-sque-patient-video-tool .application-section .btn.btn-consultation:hover::after {
    right: calc(6% + 23.5px);
  }
}
.page-sque-patient-video-tool .application-section .btn.btn-application {
  border: 1px solid #ff9300;
  color: #ff9300;
}
.page-sque-patient-video-tool .application-section .btn.btn-application::before {
  border: 1px solid #ff9300;
}
.page-sque-patient-video-tool .application-section .btn.btn-application::after {
  border-right: 1px solid #ff9300;
  border-top: 1px solid #ff9300;
}
.page-sque-patient-video-tool .application-section .btn.btn-application:hover {
  background-color: #ff9300;
  color: #fff;
  transition: all 0.3s ease;
}
.page-sque-patient-video-tool .application-section .btn.btn-application:hover::before {
  border: 1px solid #fff;
  right: calc(8.4% + 5px);
}
@media (min-width: 768px) {
  .page-sque-patient-video-tool .application-section .btn.btn-application:hover::before {
    right: calc(6% + 5px);
  }
}
.page-sque-patient-video-tool .application-section .btn.btn-application:hover::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: translateY(-50%) rotate(45deg) translate(5px, -5px);
  right: calc(8.4% + 22.5px);
}
@media (min-width: 768px) {
  .page-sque-patient-video-tool .application-section .btn.btn-application:hover::after {
    right: calc(6% + 22.5px);
  }
}
@media (max-width: 480px) {
  .page-sque-patient-video-tool .application-section .btn {
    font-size: 1.2rem;
    padding: 20px 40px;
  }
}
.page-sque-patient-video-tool .application-section-top .btn.btn-consultation {
  background: #02369a;
  color: #fff;
}
.page-sque-patient-video-tool .application-section-top .btn.btn-consultation::before {
  border: 1px solid #fff;
}
.page-sque-patient-video-tool .application-section-top .btn.btn-consultation::after {
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
}
.page-sque-patient-video-tool .application-section-top .btn.btn-consultation:hover {
  background: #fff;
  color: #02369a;
}
.page-sque-patient-video-tool .application-section-top .btn.btn-consultation:hover::before {
  border: 1px solid #02369a;
  right: calc(8.4% + 5px);
}
@media (min-width: 768px) {
  .page-sque-patient-video-tool .application-section-top .btn.btn-consultation:hover::before {
    right: calc(6% + 5px);
  }
}
.page-sque-patient-video-tool .application-section-top .btn.btn-consultation:hover::after {
  border-top: 1px solid #02369a;
  border-right: 1px solid #02369a;
  transform: translateY(-50%) rotate(45deg) translate(5px, -5px);
  right: calc(8.4% + 23.5px);
}
@media (min-width: 768px) {
  .page-sque-patient-video-tool .application-section-top .btn.btn-consultation:hover::after {
    right: calc(6% + 23.5px);
  }
}
.page-sque-patient-video-tool .application-section-top .btn.btn-application {
  background: #ff9300;
  color: #fff;
}
.page-sque-patient-video-tool .application-section-top .btn.btn-application::before {
  border: 1px solid #fff;
}
.page-sque-patient-video-tool .application-section-top .btn.btn-application::after {
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
}
.page-sque-patient-video-tool .application-section-top .btn.btn-application:hover {
  background: #fff;
  color: #ff9300;
}
.page-sque-patient-video-tool .application-section-top .btn.btn-application:hover::before {
  border: 1px solid #ff9300;
}
.page-sque-patient-video-tool .application-section-top .btn.btn-application:hover::after {
  border-right: 1px solid #ff9300;
  border-top: 1px solid #ff9300;
}
.page-sque-patient-video-tool .under-construction {
  padding: 80px 0;
  background: linear-gradient(135deg, #ff6b35 0%, #f7931e 100%);
  color: white;
}
.page-sque-patient-video-tool .under-construction .construction-message {
  text-align: center;
  max-width: 500px;
  margin: 0 auto;
}
.page-sque-patient-video-tool .under-construction .construction-message h3 {
  font-size: 2.5rem;
  font-weight: bold;
  margin-bottom: 30px;
  color: white;
}
.page-sque-patient-video-tool .under-construction .construction-message .message-box {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  padding: 40px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
}
.page-sque-patient-video-tool .under-construction .construction-message .message-box p {
  font-size: 1.3rem;
  line-height: 1.6;
  margin: 0;
  font-weight: 500;
}
.page-sque-patient-video-tool .orange-title {
  background: #ff9300;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  border-radius: 30px;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .orange-title {
    font-size: 1.1rem;
  }
}
.page-sque-patient-video-tool .template-section .container p {
  text-align: center;
}
.page-sque-patient-video-tool .template-section .template-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 40px;
  margin-top: 40px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .template-section .template-grid {
    gap: 10px;
  }
}
.page-sque-patient-video-tool .template-section .template-item {
  background: #fff;
  padding: 20px;
  border-radius: 10px;
  transition: transform 0.3s ease;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .template-section .template-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 0;
    border: none;
  }
}
.page-sque-patient-video-tool .template-section .item-title {
  background: #ff9300;
  color: #fff;
  padding: 10px 0;
  border-radius: 10px;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 74%;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .template-section .item-title {
    align-self: center;
  }
}
.page-sque-patient-video-tool .template-section .item-title h3 {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 10px;
  color: #fff;
  line-height: 1;
}
.page-sque-patient-video-tool .template-section .item-title p {
  background: #fff;
  color: #ff9300;
  padding: 6px 20px;
  border-radius: 10px;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1;
}
.page-sque-patient-video-tool .template-section .item-list h4 {
  font-size: 1.2rem;
  font-weight: 700;
  margin-bottom: 0;
  color: #ff9300;
}
.page-sque-patient-video-tool .template-section .item-list ul {
  margin-top: 0;
  padding-left: 1em;
}
.page-sque-patient-video-tool .template-section .item-list ul li {
  font-size: 0.9rem;
  color: #000;
  line-height: 1.4;
  margin-bottom: 0;
  padding-left: 0;
  position: relative;
}
.page-sque-patient-video-tool .template-section .template-text {
  font-size: 1.2rem;
  font-weight: 700;
  margin-bottom: 0;
  color: #ff9300;
}
.page-sque-patient-video-tool .multilingual-section .multilingual-description {
  text-align: center;
  font-size: 1.1rem;
  line-height: 1.8;
  color: #000;
  margin-bottom: 50px;
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .multilingual-section .multilingual-description {
    font-size: 0.875rem;
  }
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .features-section,
  .page-sque-patient-video-tool .usage-scene,
  .page-sque-patient-video-tool .process-section,
  .page-sque-patient-video-tool .pricing-section,
  .page-sque-patient-video-tool .multilingual-section,
  .page-sque-patient-video-tool .application-section,
  .page-sque-patient-video-tool .under-construction {
    padding: 30px 0;
  }
  .page-sque-patient-video-tool .service-intro {
    padding: 30px 0;
  }
}
.page-sque-patient-video-tool .service-content {
  max-width: 1000px;
  margin: 0 auto;
}
.page-sque-patient-video-tool .button-box {
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
  .page-sque-patient-video-tool .button-box {
    grid-template-columns: repeat(1, 1fr);
  }
}
.page-sque-patient-video-tool .button-box .button-box-item--session {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.page-sque-patient-video-tool .button-box .button-box-item--session span {
  font-size: 0.8rem;
  font-weight: 500;
  color: #000;
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1;
}

.page-psychiatric-nursing-clinical-ladder-training .service-page-header {
  background: url("../../src/img/optimized/psychiatric_nursing_clinical_ladder_training/psychiatric_nursing_clinical_ladder_training-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
  margin: auto calc(50% - 50vw) 24px;
}
@media (max-width: 768px) {
  .page-psychiatric-nursing-clinical-ladder-training .service-page-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/psychiatric_nursing_clinical_ladder_training/psychiatric_nursing_clinical_ladder_training-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
  }
}
.page-psychiatric-nursing-clinical-ladder-training .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #FF3985;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page-psychiatric-nursing-clinical-ladder-training .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.page-psychiatric-nursing-clinical-ladder-training .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.page-psychiatric-nursing-clinical-ladder-training .left-block-title--psychiatric_nursing_clinical_ladder_training {
  border-left: 10px solid #FF3985;
}
.page-psychiatric-nursing-clinical-ladder-training .option-box {
  background: #fff;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 20px;
  width: 70%;
}
@media screen and (max-width: 768px) {
  .page-psychiatric-nursing-clinical-ladder-training .option-box {
    width: 100%;
  }
}
.page-psychiatric-nursing-clinical-ladder-training .option-box p {
  font-size: 1.125rem;
  line-height: 1.5;
  margin-bottom: 0;
}
.page-psychiatric-nursing-clinical-ladder-training .pink-text {
  color: #FF3985;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.page-psychiatric-nursing-clinical-ladder-training .about-box {
  border: 2px solid #FF3985;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 20px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page-psychiatric-nursing-clinical-ladder-training .about-box {
    width: 100%;
  }
}
.page-psychiatric-nursing-clinical-ladder-training .about-box p {
  margin-bottom: 0;
}
.page-psychiatric-nursing-clinical-ladder-training .wish-box {
  background: #FFF7FA;
  border-radius: 10px;
  padding: 36px 28px;
  margin-bottom: 40px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page-psychiatric-nursing-clinical-ladder-training .wish-box {
    width: 100%;
  }
}
.page-psychiatric-nursing-clinical-ladder-training .wish-box h2 {
  text-align: center;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #FF3985;
  margin-bottom: 20px;
}
.page-psychiatric-nursing-clinical-ladder-training .wish-box p {
  margin-bottom: 0;
}
.page-psychiatric-nursing-clinical-ladder-training .wish-box .wish-signature {
  text-align: right;
}
.page-psychiatric-nursing-clinical-ladder-training .wish-box .wish-signature p {
  font-weight: 500;
  margin-top: 56px;
  font-size: 1;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.page-psychiatric-nursing-clinical-ladder-training .wish-box .bold {
  font-weight: 700;
}
.page-psychiatric-nursing-clinical-ladder-training .button-box-item-img {
  margin-bottom: 0;
}
.page-psychiatric-nursing-clinical-ladder-training .sample-video-box-wrap {
  margin: 0;
  background: none;
}
.page-psychiatric-nursing-clinical-ladder-training .set-plan-text {
  color: #FF3985;
}
.page-psychiatric-nursing-clinical-ladder-training .square-button .square-button-item {
  background: #FF3985;
  border: 1px solid #FF3985;
}
.page-psychiatric-nursing-clinical-ladder-training .square-button .square-button-item:hover {
  color: #FF3985;
}
.page-psychiatric-nursing-clinical-ladder-training .square-button .square-button-item::after {
  background-image: url("../../src/img/optimized/psychiatric_nursing_clinical_ladder_training/link-arrow.svg");
}
.page-psychiatric-nursing-clinical-ladder-training .red-text {
  color: #F20000;
  line-height: 1.4375;
}

.page-pediatric-nursing-clinical-ladder-training .service-page-header {
  background: url("../../src/img/optimized/pediatric_nursing_clinical_ladder_training/pediatric_nursing_clinical_ladder_training-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
  margin: auto calc(50% - 50vw) 24px;
}
@media (max-width: 768px) {
  .page-pediatric-nursing-clinical-ladder-training .service-page-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/pediatric_nursing_clinical_ladder_training/pediatric_nursing_clinical_ladder_training-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
  }
}
.page-pediatric-nursing-clinical-ladder-training .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #FF6C00;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page-pediatric-nursing-clinical-ladder-training .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.page-pediatric-nursing-clinical-ladder-training .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.page-pediatric-nursing-clinical-ladder-training .left-block-title--pediatric_nursing_clinical_ladder_training {
  border-left: 10px solid #FF6C00;
}
.page-pediatric-nursing-clinical-ladder-training .option-box {
  background: #fff;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 20px;
  width: 70%;
}
@media screen and (max-width: 768px) {
  .page-pediatric-nursing-clinical-ladder-training .option-box {
    width: 100%;
  }
}
.page-pediatric-nursing-clinical-ladder-training .option-box p {
  font-size: 1.125rem;
  line-height: 1.5;
  margin-bottom: 0;
}
.page-pediatric-nursing-clinical-ladder-training .pink-text {
  color: #FF6C00;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.page-pediatric-nursing-clinical-ladder-training .about-box {
  border: 2px solid #FF6C00;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 20px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page-pediatric-nursing-clinical-ladder-training .about-box {
    width: 100%;
  }
}
.page-pediatric-nursing-clinical-ladder-training .about-box p {
  margin-bottom: 0;
}
.page-pediatric-nursing-clinical-ladder-training .wish-box {
  background: #FFF2E6;
  border-radius: 10px;
  padding: 36px 28px;
  margin-bottom: 40px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page-pediatric-nursing-clinical-ladder-training .wish-box {
    width: 100%;
  }
}
.page-pediatric-nursing-clinical-ladder-training .wish-box h2 {
  text-align: center;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #FF6C00;
  margin-bottom: 20px;
}
.page-pediatric-nursing-clinical-ladder-training .wish-box p {
  margin-bottom: 0;
}
.page-pediatric-nursing-clinical-ladder-training .wish-box .wish-signature {
  text-align: right;
}
.page-pediatric-nursing-clinical-ladder-training .wish-box .wish-signature p {
  font-weight: 500;
  margin-top: 56px;
  font-size: 1;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.page-pediatric-nursing-clinical-ladder-training .wish-box .bold {
  font-weight: 700;
}
.page-pediatric-nursing-clinical-ladder-training .button-box-item-img {
  margin-bottom: 0;
}
.page-pediatric-nursing-clinical-ladder-training .sample-video-box-wrap {
  margin: 0;
  background: none;
}
.page-pediatric-nursing-clinical-ladder-training .set-plan-text {
  color: #FF6C00;
}
.page-pediatric-nursing-clinical-ladder-training .square-button .square-button-item {
  background: #FF6C00;
  border: 1px solid #FF6C00;
}
.page-pediatric-nursing-clinical-ladder-training .square-button .square-button-item:hover {
  color: #FF6C00;
}
.page-pediatric-nursing-clinical-ladder-training .square-button .square-button-item::after {
  background-image: url("../../src/img/optimized/pediatric_nursing_clinical_ladder_training/link-arrow.svg");
}
.page-pediatric-nursing-clinical-ladder-training .red-text {
  color: #F20000;
  line-height: 1.4375;
}

.page-brush-up-training .service-page-header {
  background: url("../../src/img/optimized/brush-up-training/brush-up-training-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
  margin: auto calc(50% - 50vw) 24px;
}
@media (max-width: 768px) {
  .page-brush-up-training .service-page-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/brush-up-training/brush-up-training-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
  }
}
.page-brush-up-training .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #02369A;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page-brush-up-training .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.page-brush-up-training .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.page-brush-up-training .left-block-title--brush-up-training {
  border-left: 10px solid #02369A;
}
.page-brush-up-training .option-box {
  background: #fff;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 20px;
  width: 70%;
}
@media screen and (max-width: 768px) {
  .page-brush-up-training .option-box {
    width: 100%;
  }
}
.page-brush-up-training .option-box p {
  font-size: 1.125rem;
  line-height: 1.5;
  margin-bottom: 0;
}
.page-brush-up-training .pink-text {
  color: #02369A;
  font-weight: 700;
  font-size: 1.125rem;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.page-brush-up-training .about-box {
  border: 2px solid #02369A;
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 20px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page-brush-up-training .about-box {
    width: 100%;
  }
}
.page-brush-up-training .about-box p {
  margin-bottom: 0;
}
.page-brush-up-training .wish-box {
  background: #DEF5FF;
  border-radius: 10px;
  padding: 36px 28px;
  margin-bottom: 40px;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page-brush-up-training .wish-box {
    width: 100%;
  }
}
.page-brush-up-training .wish-box h2 {
  text-align: center;
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #02369A;
  margin-bottom: 20px;
}
.page-brush-up-training .wish-box p {
  margin-bottom: 0;
}
.page-brush-up-training .wish-box .wish-signature {
  text-align: right;
}
.page-brush-up-training .wish-box .wish-signature p {
  font-weight: 500;
  margin-top: 56px;
  font-size: 1;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.page-brush-up-training .wish-box .bold {
  font-weight: 700;
}
.page-brush-up-training .button-box-item-img {
  margin-bottom: 0;
}
.page-brush-up-training .sample-video-box-wrap {
  margin: 0;
  background: none;
}
.page-brush-up-training .set-plan-text {
  color: #02369A;
}
.page-brush-up-training .square-button .square-button-item {
  background: #02369A;
  border: 1px solid #02369A;
}
.page-brush-up-training .square-button .square-button-item:hover {
  color: #02369A;
}
.page-brush-up-training .square-button .square-button-item::after {
  background-image: url("../../src/img/optimized/brush-up-training/link-arrow.svg");
}
.page-brush-up-training .red-text {
  color: #F20000;
  line-height: 1.4375;
}
.page-brush-up-training .streaming-program {
  margin-bottom: 60px;
}

.page-specified_medical_acts_of_nursing .service-page-header {
  background: url("../../src/img/optimized/specified_medical_acts_of_nursing/specified_medical_acts_of_nursing-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
  margin: auto calc(50% - 50vw) 24px;
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .service-page-header {
    padding: 10px 10px 390px;
    background: url("../../src/img/optimized/specified_medical_acts_of_nursing/specified_medical_acts_of_nursing-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
  }
}
.page-specified_medical_acts_of_nursing .service-page-header .breadcrumbs {
  color: #fff;
}
.page-specified_medical_acts_of_nursing .service-page-header .breadcrumbs a {
  color: #fff;
}
.page-specified_medical_acts_of_nursing .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 40px;
  color: #fff;
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.page-specified_medical_acts_of_nursing .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.page-specified_medical_acts_of_nursing .left-block-title--specified-medical-acts-of-nursing {
  border-left: 10px solid #02369A;
}
.page-specified_medical_acts_of_nursing .about-box {
  background-color: #fff;
  background-image: url("../../src/img/optimized/specified_medical_acts_of_nursing/aobut-box-img.png");
  background-size: 33%;
  background-position: right bottom;
  background-repeat: no-repeat;
  border-radius: 5px;
  padding: 18px 15px;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .about-box {
    display: none;
  }
}
.page-specified_medical_acts_of_nursing .about-box h2 {
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 10px;
  color: #02369A;
}
.page-specified_medical_acts_of_nursing .testmonial-box {
  max-width: 1000px;
  margin: 0 auto;
  background-color: #FFFDE0;
  border-radius: 5px;
  padding: 34px 40px;
  display: grid;
  grid-template-columns: 1fr 141px;
  margin-bottom: 38px;
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .testmonial-box {
    grid-template-columns: 1fr;
    padding: 15px 20px;
    justify-items: center;
  }
}
.page-specified_medical_acts_of_nursing .testmonial-box .testmonial-box-item {
  background-image: url("../../src/img/optimized/specified_medical_acts_of_nursing/fukidashi.png");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  padding: 18px 32px;
}
.page-specified_medical_acts_of_nursing .testmonial-box .testmonial-box-item .testmonial-box-item-text {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.625;
  letter-spacing: 0.04em;
  margin-bottom: 0;
}
.page-specified_medical_acts_of_nursing .testmonial-box .testmonial-box-item .testmonial-box-item-name {
  text-align: right;
  margin-right: 40px;
  margin-bottom: 0;
}
.page-specified_medical_acts_of_nursing .books-box {
  max-width: 1000px;
  margin: 0 auto;
  border: 1px solid #02369A;
  border-radius: 10px;
  padding: 30px 15px;
  position: relative;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  margin-bottom: 40px;
}
.page-specified_medical_acts_of_nursing .books-box .books-label {
  position: absolute;
  top: 0;
  left: 0;
  background-image: url("../../src/img/optimized/specified_medical_acts_of_nursing/latest-label.svg");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  width: 202px;
  height: 50px;
  padding-left: 30px;
  line-height: 1.7333333333;
  font-size: 1.875rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.05em;
  margin-bottom: 0;
}
.page-specified_medical_acts_of_nursing .books-box-item-box {
  display: grid;
  grid-template-columns: 233px 1fr;
  gap: 15px;
  padding-top: 30px;
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .books-box-item-box {
    grid-template-columns: 1fr;
    padding-top: 0;
  }
}
.page-specified_medical_acts_of_nursing .books-box-item-box .books-box-img img {
  width: 100%;
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .books-box-item-box .books-box-img img {
    width: 70%;
    margin: 0 auto;
  }
}
.page-specified_medical_acts_of_nursing .books-box-item-box-reverse {
  grid-template-columns: 1fr 233px;
  gap: 0;
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .books-box-item-box-reverse {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .books-box-item-box-reverse .books-box-img {
    order: 1;
  }
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .books-box-item-box-reverse .books-box-item {
    order: 2;
    padding-top: 30px;
  }
}
.page-specified_medical_acts_of_nursing .books-box-item h2 {
  color: #096763;
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
}
.page-specified_medical_acts_of_nursing .books-box-item h3 {
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
}
.page-specified_medical_acts_of_nursing .books-box-item .orange-mark {
  color: #FF6600;
}
.page-specified_medical_acts_of_nursing .books-box-item p {
  letter-spacing: 0.04em;
  line-height: 1.6875;
}
.page-specified_medical_acts_of_nursing .sample-download {
  display: flex;
  justify-content: flex-end;
}
.page-specified_medical_acts_of_nursing .sample-download a {
  background: #FF6600;
  color: #fff;
  font-size: 1.25rem;
  padding: 10px 8px;
  text-align: center;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  width: 320px;
  height: 52px;
  gap: 10px;
  border: 1px solid #FF6600;
  transition: all 0.3s ease;
}
.page-specified_medical_acts_of_nursing .sample-download a::after {
  content: "";
  display: block;
  width: 11%;
  height: 100%;
  background-image: url("../../src/img/optimized/specified_medical_acts_of_nursing/icon-download.svg");
  background-size: 70% 100%;
  background-repeat: no-repeat;
  transition: all 0.3s ease;
}
.page-specified_medical_acts_of_nursing .sample-download a:hover {
  background: #fff;
  color: #FF6600;
}
.page-specified_medical_acts_of_nursing .sample-download a:hover::after {
  background-image: url("../../src/img/optimized/specified_medical_acts_of_nursing/icon-download-hover.svg");
  transition: all 0.3s ease;
}
.page-specified_medical_acts_of_nursing .sample-download-reverse {
  justify-content: flex-start;
}
.page-specified_medical_acts_of_nursing .books-box-etc {
  margin-bottom: 74px;
}
.page-specified_medical_acts_of_nursing .books-box-etc h2 {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 40px;
  text-align: center;
  color: #02369A;
}
.page-specified_medical_acts_of_nursing .books-box-etc p {
  margin-bottom: 0;
}
.page-specified_medical_acts_of_nursing .books-box-etc p img {
  width: 80%;
  margin: 0 auto;
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .books-box-etc p img {
    width: 100%;
  }
}
.page-specified_medical_acts_of_nursing .link-button-box {
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 74px;
}
.page-specified_medical_acts_of_nursing .link-button-box .link-button-box-item {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 50px;
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .link-button-box .link-button-box-item {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.page-specified_medical_acts_of_nursing .link-button-box .link-button-box-item a {
  background-color: #096763;
  color: #fff;
  font-size: 1.6875rem;
  padding: 18.75px 32px;
  text-align: center;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  gap: 10px;
  border: 1px solid #096763;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .page-specified_medical_acts_of_nursing .link-button-box .link-button-box-item a {
    text-align: left;
  }
}
.page-specified_medical_acts_of_nursing .link-button-box .link-button-box-item a::after {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background-image: url("../../src/img/optimized/specified_medical_acts_of_nursing/link-arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  transition: all 0.3s ease;
}
.page-specified_medical_acts_of_nursing .link-button-box .link-button-box-item a:hover {
  background: #fff;
  color: #096763;
}
.page-specified_medical_acts_of_nursing .link-button-box .link-button-box-item a:hover::after {
  transform: translateX(10px);
  transition: all 0.3s ease;
}

.page-reasoning-q .service-page-header {
  margin: auto calc(50% - 50vw) 24px;
  background-color: #fff3c7;
  background-image: none;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .service-page-header {
    padding-bottom: 460px;
  }
}
.page-reasoning-q .service-page-header .entry-header {
  background: url("../../src/img/optimized/reasoning-q/reasoning-q-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
}
@media (max-width: 768px) {
  .page-reasoning-q .service-page-header .entry-header {
    padding: 10px 10px 460px;
    background: url("../../src/img/optimized/reasoning-q/reasoning-q-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
  }
}
.page-reasoning-q .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #004f8d;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page-reasoning-q .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.page-reasoning-q .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .page-reasoning-q .service-page-header .entry-title span {
    font-size: 16px;
  }
}

.page-reasoning-q img {
  max-width: 100%;
}
.page-reasoning-q.container {
  max-width: 1000px;
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .logo img {
    display: block;
    text-align: center;
    width: 50%;
    margin-inline: auto;
  }
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .logo .col-sm-10 {
    margin-top: 2em;
  }
}
.page-reasoning-q .explain {
  justify-content: center;
}
.page-reasoning-q .explain-img {
  position: relative;
  z-index: 1;
}
.page-reasoning-q .blue-text {
  color: #1b75bb;
}
.page-reasoning-q .main-box {
  background: #ffdfa0;
  position: relative;
  padding-top: 90px;
  padding-bottom: 100px;
  margin: -70px calc(50% - 50vw) 0;
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .main-box {
    padding: 50px 10px 100px;
    margin: 70px calc(50% - 50vw) 0;
  }
}
.page-reasoning-q .main-box::before {
  content: "";
  position: absolute;
  background: linear-gradient(22deg, #ffdfa0 50%, transparent 52%), linear-gradient(335deg, #ffdfa0 50%, transparent 52%);
  background-size: 30px 30px;
  height: 14px;
  width: 100%;
  top: -14px;
}
.page-reasoning-q .main-box .blk1 .title {
  text-align: center;
}
.page-reasoning-q .main-box .blk1 .title img {
  width: 20%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .main-box .blk1 .title img {
    width: 60%;
  }
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .main-box .blk2 {
    overflow-x: hidden;
  }
}
.page-reasoning-q .main-box .blk3 {
  border-top: 1px dotted #00518c;
  margin-top: 20px;
  padding-top: 30px;
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .main-box .blk3 {
    overflow-x: hidden;
  }
}
.page-reasoning-q .main-box .blk3 h3 {
  background: white;
  border-radius: 20px;
  color: #00518c;
  padding: 8px 12px;
  text-align: center;
}
.page-reasoning-q .main-box .blk3 p {
  margin-top: 1em;
}
.page-reasoning-q .main-box .blk3 .last {
  color: #ff6565;
  font-size: 20px;
  font-weight: bold;
  background: #ffefd1;
  display: block;
  border-radius: 20px;
  text-align: left;
  padding: 10px 20px;
  margin-left: auto;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .main-box .blk3 .last {
    font-size: 16px;
    font-size: calc(1 * 1rem);
    padding: 10px;
  }
}
.page-reasoning-q .main-box .blk4 {
  border-top: 1px dotted #00518c;
  margin-top: 20px;
  padding-top: 30px;
}
.page-reasoning-q .main-box .blk4 .title img {
  width: 60%;
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .main-box .blk4 .title img {
    width: 100%;
  }
}
.page-reasoning-q .main-box .blk4 .title .theme {
  width: 38%;
  float: right;
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .main-box .blk4 .title .theme {
    float: initial;
    width: 100%;
    margin-top: 1em;
  }
}
.page-reasoning-q .main-box .blk4 dl {
  margin-top: 1em;
}
.page-reasoning-q .main-box .blk4 dl div {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-top: 0.5em;
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .main-box .blk4 dl div {
    flex-direction: column;
  }
}
.page-reasoning-q .main-box .blk4 dl div dt {
  font-weight: bold;
  color: #fff;
  background-color: #00518b;
  border-radius: 20px;
  text-align: center;
  width: 100px;
  margin-right: 0.5em;
}
.page-reasoning-q .main-box .blk4 dl div dd {
  font-weight: bold;
}
.page-reasoning-q .main-box .blk4 dl div dd .date {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
}
.page-reasoning-q .main-box .blk4 dl div dd.datetext-line {
  margin-top: -5px;
}
.page-reasoning-q .main-box .blk4 dl div dd .last {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
  color: #ff6565;
}
.page-reasoning-q .main-box .blk4 dl div dd .free {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
}
.page-reasoning-q .main-box .blk4 dl div dd.freetext-line {
  margin-top: -11px;
}
.page-reasoning-q .main-box .blk4 dl div dd.zoom-line span {
  color: #ff6565;
  font-weight: bold;
  border-bottom: 1px dotted #f7921e;
}
.page-reasoning-q .main-box .blk5 {
  margin-top: 40px;
  padding-top: 20px;
}
.page-reasoning-q .main-box .blk5 .accordion {
  margin-top: 40px;
}
.page-reasoning-q .main-box .blk5 .accordion-title .title img {
  width: 20%;
}
@media screen and (max-width: 768px) {
  .page-reasoning-q .main-box .blk5 .accordion-title .title img {
    width: 50%;
  }
}
.page-reasoning-q .main-box .blk5 .blk4 {
  border-top: none;
}
.page-reasoning-q .main-box .blk5 .past-title h3 {
  background: #fff;
  border-radius: 20px;
  color: #00518c;
  padding: 8px 12px;
  text-align: center;
}
.page-reasoning-q .form {
  margin-top: 60px;
}
.page-reasoning-q .accordion-item .open + .accordion-content {
  margin-bottom: 2em;
  transition: all 0.3s ease;
}

.page-training_for_care_staff .service-page-header {
  margin: auto calc(50% - 50vw) 24px;
  background-color: #FBFFEF;
  background-image: none;
  padding: 0;
}
@media (max-width: 768px) {
  .page-training_for_care_staff .service-page-header {
    height: 530px;
  }
}
.page-training_for_care_staff .service-page-header .entry-header {
  background: url("../../src/img/optimized/training_for_care_staff/training_for_care_staff-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
}
@media (max-width: 768px) {
  .page-training_for_care_staff .service-page-header .entry-header {
    padding: 10px 10px 250px;
    background: url("../../src/img/optimized/training_for_care_staff/training_for_care_staff-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
    height: 530px;
  }
}
.page-training_for_care_staff .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #8DC33E;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page-training_for_care_staff .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.page-training_for_care_staff .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.page-training_for_care_staff .left-block-title--training_for_care_staff {
  border-left: 10px solid #8DC33E;
}
.page-training_for_care_staff .about-box {
  background-color: #fff;
  padding: 20px;
  border-radius: 10px;
  margin-bottom: 20px;
  width: 100%;
  max-width: 530px;
}
@media screen and (max-width: 768px) {
  .page-training_for_care_staff .about-box {
    width: 100%;
  }
}
.page-training_for_care_staff .about-box .about-box-item p {
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .page-training_for_care_staff .about-box .about-box-item p {
    font-size: 14px;
  }
}
.page-training_for_care_staff .about-box .about-box-target {
  font-size: 1.3125rem;
  font-weight: 700;
  line-height: 1.8095238095;
  letter-spacing: 0.02em;
  color: #fff;
  background-color: #8DC33E;
  padding: 5px 10px;
  border-radius: 10px;
  margin-top: 10px;
  text-align: center;
}
.page-training_for_care_staff .about-carestaff-content {
  margin-bottom: 78px;
}
.page-training_for_care_staff .about-carestaff-content p {
  line-height: 1.6875;
  letter-spacing: 0.04em;
}
.page-training_for_care_staff .left-block-title--about-carestaff {
  border-left: 10px solid #8DC33E;
}
.page-training_for_care_staff .price-block-training_for_care_staff .price-table th {
  background: #EBF4DD;
}
.page-training_for_care_staff .button-box-item-img {
  margin-bottom: 30px;
}
.page-training_for_care_staff .subjects-program-content {
  margin-bottom: 40px;
}
.page-training_for_care_staff .subjects-program-content:last-child {
  margin-bottom: 0;
}
.page-training_for_care_staff .apply-button {
  text-align: center;
}
.page-training_for_care_staff .square-button.square-button-training_for_care_staff {
  margin-top: 60px;
  margin-bottom: 60px;
}
.page-training_for_care_staff .square-button.square-button-training_for_care_staff .square-button-item {
  background-color: #f60;
  color: #fff;
  border: 1px solid #f60;
}
.page-training_for_care_staff .square-button.square-button-training_for_care_staff .square-button-item::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 30px;
  width: 25px;
  height: 25px;
  background-image: url("../../src/img/optimized/training_for_care_staff/link-arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  transition: all 0.3s ease;
}
.page-training_for_care_staff .square-button.square-button-training_for_care_staff .square-button-item:hover {
  background-color: #fff;
  color: #f60;
}
.page-training_for_care_staff .square-button.square-button-training_for_care_staff .square-button-item:hover::after {
  transform: translateY(-50%) translateX(10px);
}

.page-b-course h2 {
  display: block;
  font-size: 1.5em;
  margin-block-start: 0.83em;
  margin-block-end: 0.83em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  font-weight: bold;
  unicode-bidi: isolate;
}
.page-b-course h3 {
  display: block;
  font-size: 1.17em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  font-weight: bold;
  unicode-bidi: isolate;
}
.page-b-course h4 {
  display: block;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  font-weight: bold;
  unicode-bidi: isolate;
}
.page-b-course.entry-content {
  padding-inline: 0;
}
.page-b-course .header-area {
  align-items: center;
  background-size: cover;
  background: url(../../src/img/optimized/b-course/header-bg.jpg) no-repeat;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 40px 0;
}
.page-b-course .header-area h2 {
  font-size: 48px;
  font-size: calc(3 * 1rem);
  background: white;
  border-radius: 70px;
  color: #2856a7;
  display: inline-block;
  padding: 0 30px;
  text-align: center;
  font-weight: 700;
}
@media (max-width: 768px) {
  .page-b-course .header-area h2 {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
  }
}
.page-b-course .header-area h3 {
  margin-top: 20px;
  font-size: 90px;
  font-size: calc(5.625 * 1rem);
  color: white;
  filter: drop-shadow(0px 0px 8px rgba(0, 0, 0, 0.6));
  line-height: 1.2;
  text-align: center;
  font-weight: 700;
}
@media (max-width: 768px) {
  .page-b-course .header-area h3 {
    font-size: 32px;
    font-size: calc(2 * 1rem);
  }
}
.page-b-course .header-area h3 span {
  font-size: 126px;
  font-size: calc(7.875 * 1rem);
  line-height: 0.6;
}
@media (max-width: 768px) {
  .page-b-course .header-area h3 span {
    font-size: 32px;
    font-size: calc(2 * 1rem);
  }
}
.page-b-course .header-area .header-txt {
  background: #fff7df;
  border-radius: 20px;
  margin-top: 30px;
  padding: 30px 30px;
  position: relative;
  width: 77%;
}
@media (max-width: 768px) {
  .page-b-course .header-area .header-txt {
    margin-top: 50px;
    width: 90%;
  }
}
.page-b-course .header-area .header-txt img {
  left: -120px;
  position: absolute;
  top: -100px;
  width: 244px;
}
@media (max-width: 768px) {
  .page-b-course .header-area .header-txt img {
    left: 0;
    top: -40px;
    width: 122px;
  }
}
.page-b-course .header-area .header-txt p {
  font-size: 22px;
  font-size: calc(1.375 * 1rem);
}
@media (max-width: 768px) {
  .page-b-course .header-area .header-txt p {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.page-b-course .header-area .header-txt p span {
  color: #2856a7;
}
.page-b-course .three-resons {
  background: #fff7df;
  padding: 40px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.page-b-course .three-resons .point-item {
  max-width: 74.9%;
  margin-top: 40px;
}
@media (max-width: 768px) {
  .page-b-course .three-resons .point-item {
    min-width: 100%;
  }
}
.page-b-course .three-resons .point-item.top-title {
  position: relative;
  margin-top: 0;
}
.page-b-course .three-resons .point-item.top-title img {
  position: absolute;
  right: -120px;
  top: -110px;
  width: 180px;
}
@media (max-width: 768px) {
  .page-b-course .three-resons .point-item.top-title img {
    right: 0;
    top: -110px;
    width: 90px;
  }
}
.page-b-course .three-resons h2 {
  font-size: 48px;
  font-size: calc(3 * 1rem);
  color: #2856a7;
  text-align: center;
}
@media (max-width: 768px) {
  .page-b-course .three-resons h2 {
    font-size: 24px;
    font-size: calc(1.5 * 1rem);
  }
}
.page-b-course .three-resons h3 {
  font-size: 26px;
  font-size: calc(1.625 * 1rem);
  color: #2856a7;
  position: relative;
}
@media (max-width: 768px) {
  .page-b-course .three-resons h3 {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
    padding-top: 70px;
  }
}
.page-b-course .three-resons h3 span {
  font-size: 52px;
  font-size: calc(3.25 * 1rem);
  color: #ffd137;
  left: -52px;
  position: absolute;
  top: -31px;
}
@media (max-width: 768px) {
  .page-b-course .three-resons h3 span {
    left: 50%;
    top: -10px;
    transform: translateX(-50%);
  }
}
.page-b-course .three-resons p {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
}
@media (max-width: 768px) {
  .page-b-course .three-resons p {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.page-b-course .three-resons .point {
  align-items: center;
  display: flex;
  flex-direction: column;
  margin-top: 20px;
}
.page-b-course .three-resons .point h4 {
  background: #2856a7;
  border-radius: 30px;
  color: white;
  display: inline-block;
  margin-bottom: -24px;
  padding: 10px 20px;
  text-align: center;
  z-index: 1;
}
.page-b-course .three-resons .point ul {
  margin: 0;
  padding: 30px 0 20px;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  max-width: 80%;
  background: white;
  border-radius: 20px;
  border-image: url(../../src/img/optimized/b-course/point-border.svg) 12 31 11 round;
  border-width: 8px 23px 8px 23px;
  border-style: solid;
}
@media (max-width: 768px) {
  .page-b-course .three-resons .point ul {
    max-width: 100%;
    padding: 30px 0 10px;
    border-image: url(../../src/img/optimized/b-course/point-border.svg) 12 22 11 round;
    border-width: 14px 23px 14px 23px;
  }
}
.page-b-course .three-resons .point ul li {
  width: 50%;
}
.page-b-course .three-resons .point ul li span {
  color: #55bcb8;
}
.page-b-course .three-resons .follow {
  margin-top: 40px;
}
.page-b-course .three-resons .follow p {
  font-size: 26px;
  font-size: calc(1.625 * 1rem);
  color: #2856a7;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
}
@media (max-width: 768px) {
  .page-b-course .three-resons .follow p {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
  }
}
.page-b-course .three-resons .follow p span {
  display: inline-block;
}
.page-b-course .sample-videos {
  background: #2856a7;
  color: white;
  padding: 30px;
  display: block;
}
.page-b-course .sample-videos h2 {
  font-size: 32px;
  font-size: calc(2 * 1rem);
}
@media (max-width: 768px) {
  .page-b-course .sample-videos h2 {
    text-align: center;
    line-height: 1;
    margin-bottom: 20px;
  }
}
.page-b-course .sample-videos h2 span {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  display: inline-block;
}
@media (max-width: 768px) {
  .page-b-course .sample-videos h2 span {
    text-align: center;
  }
}
@media (max-width: 768px) {
  .page-b-course .sample-videos .row .col-xs-6:nth-child(n+2) {
    margin-top: 40px;
  }
}
@media (max-width: 768px) and (max-width: 768px) {
  .page-b-course .sample-videos .row .col-xs-6:nth-child(n+2) {
    margin-top: 0;
  }
}
.page-b-course .sample-videos .row .col-xs-6:nth-child(n+3) {
  margin-top: 40px;
}
.page-b-course .sample-videos .row .col-xs-6:nth-last-of-type(2) .name {
  margin-top: 1em;
}
.page-b-course .sample-videos .row .col-xs-6 .youtube img {
  width: 100%;
}
.page-b-course .sample-videos h3 {
  margin-top: 20px;
}
.page-b-course .sample-videos p.name {
  font-size: 22px;
  font-size: calc(1.375 * 1rem);
  text-align: right;
}
.page-b-course .sample-videos p.name span {
  font-size: 16px;
  font-size: calc(1 * 1rem);
}
.page-b-course .sample-videos .big-button {
  text-align: center;
  margin-top: 1em;
}
.page-b-course .sample-videos .big-button a {
  text-decoration: none;
  background: #ffd137;
  border: 1px solid #ffd137;
  padding: 10px 30px;
  color: white;
  border-radius: 20px;
  transition: all 0.3s ease;
}
.page-b-course .sample-videos .big-button a:hover {
  color: #ffd137;
  background: white;
}
.page-b-course .schedule {
  background: #fff7df;
  padding: 30px 0 90px;
  border-bottom: 3px dotted #ffd137;
}
.page-b-course .schedule .title {
  background: #2856a7;
  border-radius: 10px;
  color: white;
  margin-inline: auto;
  max-width: 50%;
  padding: 20px 0;
  text-align: center;
}
@media (max-width: 768px) {
  .page-b-course .schedule .title {
    max-width: 90%;
  }
}
.page-b-course .schedule .title h2 {
  display: inline-block;
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  background: #ffd137;
  border-radius: 10px;
  color: #2856a7;
  padding: 0px 22px;
}
.page-b-course .schedule .title h3 {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  margin-top: 0.2em;
  color: white;
}
.page-b-course .schedule .title h3 span {
  display: inline-block;
}
.page-b-course .schedule .title h3 span.big {
  font-size: 32px;
  font-size: calc(2 * 1rem);
  line-height: 1;
}
.page-b-course .schedule .timeline {
  margin-top: 40px;
}
.page-b-course .schedule .timeline dl .month {
  font-size: 32px;
  font-size: calc(2 * 1rem);
  background: #ffd137;
  color: white;
  margin-inline: auto;
  max-width: 8%;
  position: relative;
}
.page-b-course .schedule .timeline dl .month-jun .text {
  left: 160%;
  top: -90%;
}
.page-b-course .schedule .timeline dl .month-jun .text-right::before, .page-b-course .schedule .timeline dl .month-jun .text-right::after {
  top: 109%;
}
.page-b-course .schedule .timeline dl .month-jul .text {
  left: 160%;
  top: 20%;
}
.page-b-course .schedule .timeline dl .month-jul .text-right::before, .page-b-course .schedule .timeline dl .month-jul .text-right::after {
  top: 33%;
}
.page-b-course .schedule .timeline dl .month-oct .text {
  left: 160%;
  top: 40%;
}
.page-b-course .schedule .timeline dl .month-nov .text {
  top: 40%;
}
.page-b-course .schedule .timeline dl dt {
  font-size: 42px;
  font-size: calc(2.625 * 1rem);
  text-align: center;
  line-height: 1.8;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl dt {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
    padding: 50px 0;
  }
}
.page-b-course .schedule .timeline dl dd {
  position: absolute;
}
.page-b-course .schedule .timeline dl dd.start {
  color: #2856a7;
  left: 160%;
  top: 10%;
  font-weight: bold;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl dd.start {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.page-b-course .schedule .timeline dl .text {
  background: white;
  border-radius: 20px;
  color: #707070;
  padding: 10px 20px;
  position: absolute;
  right: 160%;
  top: -10%;
  width: 440px;
  z-index: 1;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text {
    width: 37vw;
  }
}
.page-b-course .schedule .timeline dl .text h4 {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  border-left: 8px solid #2856a7;
  border-bottom: 1px dotted #2856a7;
  color: #2856a7;
  line-height: 1.2;
  padding-left: 0.3em;
  padding-bottom: 0.3em;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text h4 {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.page-b-course .schedule .timeline dl .text h5 {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  margin-top: 0.5em;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text h5 {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.page-b-course .schedule .timeline dl .text p {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text p {
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
  }
}
.page-b-course .schedule .timeline dl .text-left {
  position: relative;
}
.page-b-course .schedule .timeline dl .text-left::before {
  background-color: #2856a7;
  border-radius: 50%;
  content: "";
  display: block;
  height: 10px;
  position: absolute;
  right: -20.1%;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  z-index: 1;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text-left::before {
    content: none;
  }
}
.page-b-course .schedule .timeline dl .text-left::after {
  background-color: #2856a7;
  content: "";
  display: block;
  height: 3px;
  position: absolute;
  right: -18.7%;
  top: 50%;
  transform: translateY(-50%);
  width: 14%;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text-left::after {
    content: none;
  }
}
.page-b-course .schedule .timeline dl .text-right {
  position: relative;
}
.page-b-course .schedule .timeline dl .text-right::before {
  background-color: #2856a7;
  border-radius: 50%;
  content: "";
  display: block;
  height: 10px;
  position: absolute;
  left: -20.1%;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
  z-index: 1;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text-right::before {
    content: none;
  }
}
.page-b-course .schedule .timeline dl .text-right::after {
  background-color: #2856a7;
  content: "";
  display: block;
  height: 3px;
  position: absolute;
  left: -18.7%;
  top: 50%;
  transform: translateY(-50%);
  width: 55px;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text-right::after {
    content: none;
  }
}
.page-b-course .schedule .timeline dl .text2 {
  background: #2856a7;
  border-radius: 20px;
  color: #fff;
  padding: 20px;
  position: absolute;
  right: 160%;
  top: -88%;
  width: 440px;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text2 {
    width: 37vw;
  }
}
.page-b-course .schedule .timeline dl .text2 h4 {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  border-left: 8px solid #fff;
  border-bottom: 1px dotted #fff;
  color: #fff;
  line-height: 1.2;
  padding-left: 0.3em;
  padding-bottom: 0.3em;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text2 h4 {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.page-b-course .schedule .timeline dl .text2 h5 {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  margin-top: 0.5em;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text2 h5 {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.page-b-course .schedule .timeline dl .text2 p {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text2 p {
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
  }
}
.page-b-course .schedule .timeline dl .text3 {
  background: #2856a7;
  border-radius: 20px;
  color: #fff;
  padding: 20px;
  position: absolute;
  right: 160%;
  top: 25%;
  width: 440px;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text3 {
    width: 37vw;
  }
}
.page-b-course .schedule .timeline dl .text3 h4 {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  border-left: 8px solid #fff;
  border-bottom: 1px dotted #fff;
  color: #fff;
  line-height: 1.2;
  padding-left: 0.3em;
  padding-bottom: 0.3em;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text3 h4 {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.page-b-course .schedule .timeline dl .text3 h5 {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  margin-top: 0.5em;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text3 h5 {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.page-b-course .schedule .timeline dl .text3 p {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .text3 p {
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
  }
}
.page-b-course .schedule .timeline dl .jun,
.page-b-course .schedule .timeline dl .jul {
  background: #2856a7;
}
.page-b-course .schedule .timeline dl .jun {
  left: 160%;
}
.page-b-course .schedule .timeline dl .aug, .page-b-course .schedule .timeline dl .sep {
  background: #2856a7;
}
.page-b-course .schedule .timeline dl .dec {
  position: relative;
}
.page-b-course .schedule .timeline dl .dec::after {
  border-bottom: 0;
  border-left: 48.5px solid transparent;
  border-right: 48.5px solid transparent;
  border-style: solid;
  border-top: 50px solid #ffd137;
  bottom: -66.2%;
  content: "";
  height: 0;
  left: -9px;
  position: absolute;
  width: 0;
}
@media (max-width: 768px) {
  .page-b-course .schedule .timeline dl .dec::after {
    border-left: 15.8px solid transparent;
    border-right: 15.8px solid transparent;
    border-top: 15px solid #ffd137;
    bottom: -11%;
  }
}
.page-b-course .schedule .result {
  align-items: center;
  display: flex;
  flex-direction: column;
  margin-top: 70px;
}
.page-b-course .schedule .result h4 {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  background: #2856a7;
  border-radius: 25px;
  color: white;
  padding: 2px 20px;
  text-align: center;
}
.page-b-course .schedule .result .flow {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  background: white;
  border-radius: 20px;
  margin-top: 12px;
  max-width: 30%;
  padding: 20px;
}
@media (max-width: 768px) {
  .page-b-course .schedule .result .flow {
    max-width: 90%;
  }
}
.page-b-course .schedule .result .flow ul {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
}
.page-b-course .schedule .result .flow ul li {
  line-height: 1.2;
}
.page-b-course .schedule .result .flow ul li + li {
  margin-top: 1.5em;
}
.page-b-course .schedule .result .flow .arrow {
  background-color: #2856a7;
  height: 16px;
  margin-inline: auto;
  margin-top: 1em;
  position: relative;
  width: 8px;
}
.page-b-course .schedule .result .flow .arrow::before {
  border: solid 12px rgba(0, 0, 0, 0);
  border-top: solid 14px #2856a7;
  content: "";
  left: -7.8px;
  position: absolute;
  top: 14px;
}
.page-b-course .schedule .result .flow p {
  margin-top: 1em;
}
.page-b-course .schedule .result .flow p small {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  display: inline-block;
  line-height: 1.2;
}
.page-b-course .support {
  background: #fff7df;
  padding: 60px 0 20px;
}
.page-b-course .support-bg {
  margin-inline: auto;
  max-width: 80%;
  text-align: center;
}
@media (max-width: 768px) {
  .page-b-course .support-bg {
    max-width: 90%;
  }
}
.page-b-course .support h2 {
  font-size: 28px;
  font-size: calc(1.75 * 1rem);
  color: #2856a7;
  text-align: center;
  line-height: 1.4;
}
.page-b-course .support h2 span {
  display: inline-block;
  background: white;
  padding: 10px 10px;
  margin-bottom: 0.4em;
}
.page-b-course .support p {
  font-size: 16px;
  font-size: calc(1 * 1rem);
}
.page-b-course .price {
  background: #fff7df;
  padding: 20px 0 60px;
}
.page-b-course .price-bg {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.page-b-course .price-bg h2 {
  font-size: 32px;
  font-size: calc(2 * 1rem);
  color: #2856a7;
}
.page-b-course .price .price-table {
  align-items: center;
  background: white;
  border-radius: 10px;
  display: flex;
  justify-content: stretch;
  width: 80%;
  margin-top: 8px;
}
@media (max-width: 768px) {
  .page-b-course .price .price-table {
    width: 90%;
    flex-direction: column;
  }
}
.page-b-course .price .price-table .left {
  background: #ffd137;
  border-bottom-left-radius: 10px;
  border-top-left-radius: 10px;
  padding: 20px 0;
  text-align: center;
  width: 50%;
}
@media (max-width: 768px) {
  .page-b-course .price .price-table .left {
    width: 100%;
    border-bottom-left-radius: 0;
    border-top-right-radius: 10px;
    padding: 20px 10px;
  }
}
.page-b-course .price .price-table .left h3 {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  line-height: 1.2;
}
@media (max-width: 768px) {
  .page-b-course .price .price-table .left h3 {
    font-size: 22px;
    font-size: calc(1.375 * 1rem);
  }
}
.page-b-course .price .price-table .left p {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .page-b-course .price .price-table .left p {
    font-size: 12px;
    font-size: calc(0.75 * 1rem);
  }
}
.page-b-course .price .price-table .right {
  background: white;
  text-align: center;
  width: 50%;
}
@media (max-width: 768px) {
  .page-b-course .price .price-table .right {
    padding: 20px 0;
  }
}
.page-b-course .price .price-table .right p {
  font-size: 42px;
  font-size: calc(2.625 * 1rem);
  font-weight: bold;
  line-height: 1;
  margin-bottom: 0;
}
.page-b-course .price .price-table .right p span {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  display: inline-block;
}
.page-b-course .price .entry {
  text-align: center;
  margin-top: 40px;
}
.page-b-course .price .entry a {
  font-size: 48px;
  font-size: calc(3 * 1rem);
  background: #ffd137;
  border-radius: 10px;
  border: 1px solid #ffd137;
  color: white;
  display: inline-block;
  font-weight: bold;
  padding: 32px 40px;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .page-b-course .price .entry a {
    font-size: 32px;
    font-size: calc(2 * 1rem);
    display: inline-block;
    padding: 32px 10px;
    width: 100%;
  }
}
.page-b-course .price .entry a:hover {
  background: white;
  color: #ffd137;
}

.page-search .entry-header {
  height: auto;
}
.page-search .left-block-title--search {
  border-left: 10px solid #5B94F0;
}
.page-search .search-result-list {
  list-style-type: disc;
  padding-left: 20px;
  margin-bottom: 20px;
}
.page-search .search-result-list li a {
  font-size: 1.125rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  position: relative;
}
.page-search .search-result-list li a::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 2px;
  background: #f60;
  transition: width 0.3s ease;
}
.page-search .search-result-list li a:hover::after {
  width: 100%;
}
.page-search .search-result-list li a:hover {
  color: #f60;
}

.page-faq {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}
.page-faq .left-block-title--faq {
  border-left: 10px solid #5B94F0;
  padding-left: 1rem;
  font-size: 1.875rem;
  font-weight: 700;
  color: #1f2937;
  margin-bottom: 2rem;
}
@media (max-width: 768px) {
  .page-faq .left-block-title--faq {
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
  }
}
.page-faq .type-page {
  padding: 0;
}

.faq-list {
  margin: 0;
  padding: 0;
  max-width: 900px;
  margin: 0 auto;
}

.faq-list-item {
  margin-bottom: 1rem;
  border-radius: 0.5rem;
  overflow: hidden;
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.16);
  transition: box-shadow 0.3s ease;
}
.faq-list-item:hover {
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
.faq-list-item:last-child {
  margin-bottom: 0;
}

.faq-question {
  position: relative;
  background-color: #f8f9fa;
  padding: 1.25rem 3.5rem 1.25rem 3.5rem;
  margin: 0;
  font-weight: 600;
  font-size: 1.0625rem;
  color: #1f2937;
  cursor: pointer;
  transition: background-color 0.3s ease;
  -webkit-user-select: none;
  user-select: none;
}
@media (max-width: 768px) {
  .faq-question {
    padding: 1rem 3rem 1rem 3rem;
    font-size: 1rem;
  }
}
.faq-question::before {
  content: "Q";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 2.5rem;
  height: 2.5rem;
  background-color: #5B94F0;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.125rem;
  border-radius: 0 0.25rem 0.25rem 0;
}
@media (max-width: 768px) {
  .faq-question::before {
    width: 2rem;
    height: 2rem;
    font-size: 1rem;
  }
}
.faq-question::after {
  content: "";
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  width: 0.625rem;
  height: 0.625rem;
  border-right: 2px solid #5B94F0;
  border-bottom: 2px solid #5B94F0;
  transition: transform 0.3s ease;
}
@media (max-width: 768px) {
  .faq-question::after {
    right: 1rem;
  }
}
.faq-question:hover {
  background-color: #e5e7eb;
}
.faq-question.is-active {
  background-color: #5B94F0;
  color: #fff;
}
.faq-question.is-active::after {
  transform: translateY(-50%) rotate(-135deg);
  border-color: #fff;
}

.faq-answer {
  margin: 0;
  padding: 0;
  background-color: #fff;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}
.faq-answer .answer-content {
  padding: 1.5rem 1.5rem 1.5rem 3.5rem;
  font-size: 0.9375rem;
  line-height: 1.8;
  color: #4b5563;
  position: relative;
}
@media (max-width: 768px) {
  .faq-answer .answer-content {
    padding: 1.25rem 1rem 1.25rem 1rem;
    font-size: 0.875rem;
    line-height: 1.7;
  }
}
.faq-answer .answer-content::before {
  content: "A";
  position: absolute;
  left: 0;
  top: 1rem;
  width: 2.5rem;
  height: 2.5rem;
  background-color: #e5e7eb;
  color: #6b7280;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1.125rem;
  border-radius: 0 0.25rem 0.25rem 0;
}
@media (max-width: 768px) {
  .faq-answer .answer-content::before {
    display: none;
  }
}
.faq-answer .answer-content p {
  margin: 0;
}
.faq-answer .answer-content p + p {
  margin-top: 1rem;
}
.faq-answer .answer-content ul, .faq-answer .answer-content ol {
  margin: 0.75rem 0;
  padding-left: 1.5rem;
}
.faq-answer .answer-content li {
  margin-bottom: 0.5rem;
}
.faq-answer.is-open {
  max-height: 500px;
}
.faq-answer.is-open .answer-content {
  position: relative;
}

.page-nursing-assistants .header-point-box {
  padding: 15px 17px;
  background-color: #fff;
  border-radius: 10px;
  margin-bottom: 20px;
  display: inline-block;
}
@media (max-width: 768px) {
  .page-nursing-assistants .header-point-box {
    display: none;
  }
}
.page-nursing-assistants .header-point-box-item {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.page-nursing-assistants .header-point-box-item p {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.024em;
  margin-bottom: 0;
}
.page-nursing-assistants .point-box {
  margin-bottom: 10px;
}
.page-nursing-assistants .service-page-header {
  margin: auto calc(50% - 50vw) 24px;
  background-color: #CCE0FF;
  background-image: none;
}
@media (max-width: 768px) {
  .page-nursing-assistants .service-page-header {
    height: 490px;
  }
}
.page-nursing-assistants .service-page-header .entry-header {
  background: url("../../src/img/optimized/nursing_assistants/nursing_assistants-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0 0;
}
@media (max-width: 768px) {
  .page-nursing-assistants .service-page-header .entry-header {
    padding: 10px 10px 330px;
    background: url("../../src/img/optimized/nursing_assistants/nursing_assistants-header-bg-sp.png") no-repeat bottom center;
    background-size: cover;
    height: auto;
  }
}
.page-nursing-assistants .service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #222;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page-nursing-assistants .service-page-header .entry-title {
    font-size: 20px;
    margin-bottom: 20px;
  }
}
.page-nursing-assistants .service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.page-nursing-assistants .left-block-title--nursing-assistants {
  border-left: 10px solid #02369A;
  padding-left: 10px;
  margin-bottom: 20px;
}
.page-nursing-assistants .about-box {
  border: 1px solid #02369A;
  padding: 20px;
  margin-bottom: 60px;
}
.page-nursing-assistants .about-box p {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.024em;
  color: #02369A;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .page-nursing-assistants .about-box p {
    font-size: 17px;
  }
}
.page-nursing-assistants .tab-box-header {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-bottom: 80px;
}
@media (max-width: 768px) {
  .page-nursing-assistants .tab-box-header {
    flex-direction: column;
    gap: 10px;
    margin-bottom: 20px;
  }
}
.page-nursing-assistants .tab-box-header .tab-box-item {
  width: 50%;
  cursor: pointer;
}
@media (max-width: 768px) {
  .page-nursing-assistants .tab-box-header .tab-box-item {
    width: 100%;
  }
}
.page-nursing-assistants .tab-box-header .tab-box-item.tab-current .h2-title {
  background-color: #02369A;
  color: #fff;
  position: relative;
}
.page-nursing-assistants .tab-box-header .tab-box-item.tab-current .h2-title::after {
  content: "";
  position: absolute;
  bottom: -32px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 31px solid transparent;
  border-right: 31px solid transparent;
  border-top: 32px solid #02369A;
}
@media (max-width: 768px) {
  .page-nursing-assistants .tab-box-header .tab-box-item.tab-current .h2-title::after {
    display: none;
  }
}
.page-nursing-assistants .tab-box-header .tab-box-item .h2-title {
  background-color: #ECF1F7;
  padding: 30px;
  border-radius: 10px;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.024em;
  color: #02369A;
  margin-bottom: 0;
}
.page-nursing-assistants .tab-box-content {
  display: none;
  opacity: 0;
  transform: translateY(20px);
  transition: all 0.4s ease-in-out;
}
.page-nursing-assistants .tab-box-content.tab-current {
  display: block;
  opacity: 1;
  transform: translateY(0);
}
.page-nursing-assistants .tab-box-content.tab-fade-out {
  opacity: 0;
  transform: translateY(-20px);
}
.page-nursing-assistants .tab-box-content-item .point-title {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.024em;
  margin-bottom: 40px;
  text-align: center;
}
.page-nursing-assistants .nursing-table {
  width: 100%;
  border-collapse: collapse;
  border: 4px solid #3a62ad;
  margin-inline: auto;
  margin-bottom: 80px;
}
.page-nursing-assistants .nursing-table th, .page-nursing-assistants .nursing-table td {
  border: 1px solid #3a62ad;
  padding: 10px;
  text-align: left;
}
.page-nursing-assistants .nursing-table th {
  background-color: #f0f0f0;
  font-weight: bold;
  text-align: center;
}
.page-nursing-assistants .nursing-table td:has(.content-list) {
  padding: 0;
}
.page-nursing-assistants .nursing-table .main-header {
  background-color: #dbddef;
  color: #231815;
  font-size: 1.2em;
  width: 20%;
}
@media (max-width: 768px) {
  .page-nursing-assistants .nursing-table .main-header {
    width: auto;
    font-size: 1rem;
    padding: 8px 5px;
  }
}
.page-nursing-assistants .nursing-table .sub-header {
  background-color: #fff;
  width: 10%;
}
@media (max-width: 768px) {
  .page-nursing-assistants .nursing-table .sub-header {
    width: auto;
    font-size: 0.9rem;
    padding: 8px 5px;
  }
}
.page-nursing-assistants .nursing-table .content-list {
  padding-left: 0;
  list-style: none;
}
.page-nursing-assistants .nursing-table .content-list li {
  margin-bottom: 5px;
  border-bottom: 1px dotted #3a62ad;
  padding-left: 10px;
  padding-top: 10px;
  padding-bottom: 10px;
}
.page-nursing-assistants .nursing-table .content-list li:last-of-type {
  border-bottom: none;
}
@media (max-width: 768px) {
  .page-nursing-assistants .nursing-table .content-list li {
    font-size: 0.9rem;
    padding: 8px 5px;
    line-height: 1.4;
  }
}
@media (max-width: 768px) {
  .page-nursing-assistants .nursing-table {
    margin-bottom: 40px;
    font-size: 0.85rem;
  }
  .page-nursing-assistants .nursing-table th, .page-nursing-assistants .nursing-table td {
    padding: 8px 5px;
  }
}
.page-nursing-assistants .workflow-box {
  margin-bottom: 80px;
}
.page-nursing-assistants .workflow-box img {
  width: 70%;
  height: auto;
}
@media (max-width: 768px) {
  .page-nursing-assistants .workflow-box img {
    width: 100%;
  }
}
.page-nursing-assistants .blue-text {
  color: #02369A;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6875;
  letter-spacing: 0.04em;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .page-nursing-assistants .blue-text {
    font-size: 0.9rem;
    line-height: 1.5;
    margin-bottom: 15px;
  }
}
.page-nursing-assistants .lecture-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 84px;
}
@media (max-width: 768px) {
  .page-nursing-assistants .lecture-box {
    grid-template-columns: 1fr;
    gap: 15px;
    margin-bottom: 40px;
  }
}
.page-nursing-assistants .lecture-box .lecture-box-item {
  border-radius: 10px;
  padding: 20px;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
@media (max-width: 768px) {
  .page-nursing-assistants .lecture-box .lecture-box-item {
    padding: 15px;
  }
}
.page-nursing-assistants .lecture-box .lecture-box-item-header {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 768px) {
  .page-nursing-assistants .lecture-box .lecture-box-item-header {
    gap: 15px;
  }
}
.page-nursing-assistants .lecture-box .lecture-box-item-header img {
  width: 100%;
  height: auto;
}
.page-nursing-assistants .lecture-box .lecture-box-item-header p {
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.6875;
  letter-spacing: 0.04em;
}
@media (max-width: 768px) {
  .page-nursing-assistants .lecture-box .lecture-box-item-header p {
    font-size: 0.9rem;
    line-height: 1.5;
    text-align: center;
  }
}
.page-nursing-assistants .lecture-test-box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 40px;
  margin-bottom: 80px;
}
@media (max-width: 768px) {
  .page-nursing-assistants .lecture-test-box {
    grid-template-columns: 1fr;
    gap: 15px;
    margin-top: 20px;
    margin-bottom: 40px;
  }
}
.page-nursing-assistants .lecture-test-box .lecture-test-box-item img {
  width: 100%;
  height: auto;
}
.page-nursing-assistants .price-note p {
  color: #E31111;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6875;
  letter-spacing: 0.04em;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .page-nursing-assistants .price-note p {
    font-size: 0.9rem;
    line-height: 1.4;
    margin-bottom: 10px;
  }
}
@media (max-width: 768px) {
  .page-nursing-assistants .price-note {
    margin-bottom: 20px;
  }
}
.page-nursing-assistants .price-table {
  width: 100%;
  border-collapse: collapse;
  border: 2px solid #3a62ad;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .page-nursing-assistants .price-table {
    font-size: 0.85rem;
    margin-bottom: 15px;
  }
}
.page-nursing-assistants .price-table th, .page-nursing-assistants .price-table td {
  border: 1px solid #3a62ad;
  padding: 10px;
  text-align: center;
}
@media (max-width: 768px) {
  .page-nursing-assistants .price-table th, .page-nursing-assistants .price-table td {
    padding: 8px 5px;
  }
}
.page-nursing-assistants .price-table th {
  background-color: #ECF1F7;
  font-weight: bold;
}
.page-nursing-assistants .price-list {
  list-style: none;
  padding-left: 0;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .page-nursing-assistants .price-list {
    margin-bottom: 20px;
  }
}
.page-nursing-assistants .price-list li {
  margin-bottom: 10px;
  font-size: 1rem;
  line-height: 1.5;
}
@media (max-width: 768px) {
  .page-nursing-assistants .price-list li {
    font-size: 0.9rem;
    margin-bottom: 8px;
  }
}
.page-nursing-assistants .download-button-box {
  margin-top: 80px;
  margin-bottom: 100px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  max-width: 70%;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .page-nursing-assistants .download-button-box {
    grid-template-columns: 1fr;
    gap: 15px;
    margin-top: 40px;
    margin-bottom: 50px;
    max-width: 100%;
  }
}
.page-nursing-assistants .download-button-box .download-button-item .download-button {
  display: block;
  font-size: 22px;
  font-weight: 500;
  line-height: 0.9090909091;
  letter-spacing: 0.05em;
  color: #222;
  text-align: center;
  position: relative;
  border-radius: 10px;
  padding: 24px 32px;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .page-nursing-assistants .download-button-box .download-button-item .download-button {
    font-size: 18px;
    padding: 20px 24px;
    border-radius: 8px;
  }
}
.page-nursing-assistants .download-button-box .download-button-item .download-button--pdf {
  background-color: #fff;
  border: 1px solid #6FA6FF;
}
.page-nursing-assistants .download-button-box .download-button-item .download-button--pdf:hover {
  background-color: #6FA6FF;
  color: #fff;
}
.page-nursing-assistants .download-button-box .download-button-item .download-button--pdf:hover::after {
  transform: translateX(5px) translateY(-50%);
  transition: all 0.3s ease;
}
.page-nursing-assistants .download-button-box .download-button-item .download-button--pdf::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  background-image: url("../../src/img/optimized/nursing_assistants/link-arrow-pdf.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .page-nursing-assistants .download-button-box .download-button-item .download-button--pdf::after {
    width: 20px;
    height: 20px;
    right: 16px;
  }
}
.page-nursing-assistants .download-button-box .download-button-item .download-button--apply {
  background-color: #fff;
  border: 1px solid #FF6C02;
}
.page-nursing-assistants .download-button-box .download-button-item .download-button--apply:hover {
  background-color: #FF6C02;
  color: #fff;
}
.page-nursing-assistants .download-button-box .download-button-item .download-button--apply:hover::after {
  transform: translateX(5px) translateY(-50%);
  transition: all 0.3s ease;
}
.page-nursing-assistants .download-button-box .download-button-item .download-button--apply::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  background-image: url("../../src/img/optimized/nursing_assistants/link-arrow-apply.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .page-nursing-assistants .download-button-box .download-button-item .download-button--apply::after {
    width: 20px;
    height: 20px;
    right: 16px;
  }
}

/* 575px以下の画面サイズに適用 */
/* 767px以下の画面サイズに適用 */
/* 768px以上1023px以下の画面サイズに適用 */
/* 1024px以上1199px以下の画面サイズに適用 */
/* 1200px以上1280px以下の画面サイズに適用 */
/* 1281px以上1441px以下の画面サイズに適用 */
.red {
  color: #ff6565;
}

.blue {
  color: #65abff;
}

.hidden-sm {
  display: block;
}
@media screen and (max-width: 767px) {
  .hidden-sm {
    display: none;
  }
}

.hidden-sm-important {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .hidden-sm-important {
    display: none !important;
  }
}

.visible-sm {
  display: none;
}
@media screen and (max-width: 767px) {
  .visible-sm {
    display: block;
  }
}

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

.mb-30 {
  margin-bottom: 30px;
}

.mt-10 {
  margin-top: 10px;
}

.form_table {
  width: 100%;
  max-width: 100%;
}
.form_table tr {
  height: 70px;
}
.form_table th {
  padding: 10px 0 10px 0;
  vertical-align: middle;
  width: 31%;
}
.form_table th .attention {
  color: #ff6565;
  font-size: 12px;
  text-align: left;
  text-indent: 61px;
}
.form_table td {
  padding: 10px 0;
  vertical-align: middle;
}
.form_table td:has(.open-area .error) {
  padding-bottom: 40px;
}
@media (max-width: 768px) {
  .form_table {
    display: block;
  }
  .form_table tbody,
  .form_table tr,
  .form_table th,
  .form_table td {
    display: block;
  }
  .form_table tr {
    height: auto;
  }
  .form_table th {
    width: 100%;
    padding: 20px 10px 0 10px;
    text-align: left;
  }
  .form_table td {
    padding: 10px 10px 20px 10px;
  }
}
.form_table textarea {
  height: 10rem;
}

input[type=text],
input[type=email],
input[type=tel],
input[type=url],
input[type=search],
textarea,
select {
  -webkit-appearance: none;
  appearance: none;
  /*ブラウザ標準スタイルを無効にする*/
  width: 100%;
  padding: 5px 15px;
  background: #fff;
  border: 1px solid #707070;
  border-radius: 10px;
  font-family: inherit;
}

input[type=number],
input[type=password] {
  width: 100%;
  padding: 10px 20px;
  background: #fff;
  border: 1px solid #707070;
  border-radius: 4px;
}

/*フォーカス時*/
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=url]:focus,
input[type=search]:focus,
textarea:focus,
select:focus,
input[type=number],
input[type=password] {
  outline: none;
  box-shadow: 0 0 5px rgba(55, 149, 47, 0.7);
}

/*エラー時*/
.is-error input[type=text],
.is-error input[type=email],
.is-error input[type=tel],
.is-error input[type=url],
.is-error input[type=number],
.is-error input[type=password],
.is-error textarea,
.is-error select,
.is-error .selectWrap {
  color: #df5656;
  border-color: #df5656;
}

/*select
--------------------------*/
.selectWrap {
  position: relative;
}

.selectWrap::after {
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-right: 2px solid;
  border-bottom: 2px solid;
  transform: rotate(45deg);
}

/*radio, checkbox
------------------------------------*/
input[type=radio],
input[type=checkbox] {
  opacity: 0;
  /*透明にして見えなくする*/
  position: absolute;
  /*本来の配置から切り離す*/
}

/*クリック範囲*/
input[type=radio] + span,
input[type=checkbox] + span {
  display: inline-block;
  position: relative;
  margin: 0 1.1em 0 0;
  padding: 0.3em 0.3em 0.3em 2em;
  line-height: 1;
  vertical-align: middle;
  cursor: pointer;
  font-size: 14px;
}

/*フォーカス時*/
input[type=radio]:focus + span,
input[type=checkbox]:focus + span {
  outline: none;
  box-shadow: 0 0 5px rgba(55, 149, 47, 0.7);
}

/*ラジオボタンスタイル*/
input[type=radio] + span:before {
  content: "";
  position: absolute;
  top: 0.25em;
  left: 0;
  width: 1.375em;
  height: 1.375em;
  border: 1px solid #ccc;
  border-radius: 50%;
  line-height: 1;
  background: #fff;
}

/*ラジオボタンチェック印（未選択）*/
input[type=radio] + span:after {
  content: "";
  display: none;
}

/*ラジオボタンチェック印（選択）*/
input[type=radio]:checked + span:after {
  display: block;
  position: absolute;
  top: 0.43em;
  left: 0.2em;
  width: 1em;
  height: 1em;
  margin: 0;
  padding: 0;
  border-radius: 50%;
  background: #65abff;
  line-height: 1;
}

/*チェックボックススタイル*/
input[type=checkbox] + span:before {
  position: absolute;
  top: 0.3em;
  left: 0;
  content: "";
  width: 1.25em;
  height: 1.25em;
  border: 1px solid #ccc;
  background: #fff;
  line-height: 1;
  vertical-align: middle;
}

/*チェックボックス未チェック時*/
input[type=checkbox] + span:after {
  content: "";
  display: none;
}

/*チェックボックスチェック時*/
input[type=checkbox]:checked + span:after {
  display: block;
  position: absolute;
  top: 0.3em;
  left: 0.4em;
  width: 0.5em;
  height: 1em;
  content: "";
  border-bottom: 3px solid #37952f;
  border-right: 3px solid #37952f;
  transform: rotate(45deg);
}

/*ラベル*/
.inputLabel {
  font-weight: 500;
  font-size: 16px;
}

@media screen and (min-width: 768px), print {
  .inputLabel {
    display: flex;
    justify-content: flex-start;
    align-items: center;
  }
}
/*サブラベル*/
.inputSubLabel {
  display: block;
  margin-bottom: 5px;
  font-weight: 500;
}

/*必須ラベル*/
.require {
  display: inline-block;
  margin-right: 6px;
  padding: 0 10px;
  background: #df5656;
  color: #fff;
  font-weight: normal;
  font-size: 18px;
  vertical-align: middle;
}

.any {
  display: inline-block;
  margin-right: 10px;
  padding: 0 10px;
  background: #000;
  color: #fff;
  font-weight: normal;
  font-size: 18px;
  vertical-align: middle;
}

/*注意書き*/
.inputNote {
  margin-top: 10px;
  color: #707070;
  font-size: 12px;
}

/*名前・フリガナ*/
.nameLayout > * + * {
  margin-top: 10px;
}

@media screen and (min-width: 768px), print {
  .nameLayout {
    display: flex;
    justify-content: space-between;
  }
  .nameLayout > * {
    width: 48.68%;
  }
  .nameLayout > * + * {
    margin-top: 0;
  }
}
/*法人・個人*/
.radioList_hr {
  display: flex;
}
@media (max-width: 768px) {
  .radioList_hr {
    flex-direction: column;
  }
}
.radioList_hr li {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
}
.radioList_hr li + li {
  margin-left: 0;
}
@media (min-width: 768px) {
  .radioList_hr li + li {
    margin-left: 14px;
  }
}

/*エラーメッセージ*/
.errorText {
  display: none;
  align-items: center;
  margin-top: 16px;
  color: #df5656;
  font-weight: bold;
}

.inputField.is-error .errorText {
  display: block;
}

.errorText::before {
  content: "";
  display: inline-block;
  width: 1.25em;
  height: 1.25em;
  margin-right: 0.2em;
  vertical-align: middle;
}

.inputField + .open .inputLabel {
  margin: 1em 0 0.5em;
}

.preferred_dates {
  position: relative;
}
.preferred_dates .select_wrap {
  position: relative;
}
.preferred_dates .select_wrap::after {
  position: absolute;
  right: 20px;
  top: -6px;
  bottom: 0;
  margin: auto;
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-right: 2px solid;
  border-bottom: 2px solid;
  transform: rotate(45deg);
}
.preferred_dates .select_wrap + .select_wrap {
  margin-left: 20px;
}
.preferred_dates .select_size1 {
  width: 5rem;
}
.preferred_dates .select_size2 {
  width: 7rem;
}

.form_privacy {
  text-align: center;
}
.form_privacy a {
  color: #65abff;
}

.submit-btn {
  text-align: center;
}
@media (max-width: 768px) {
  .submit-btn {
    padding-inline: 10px;
  }
}

.confirm-btn {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  align-items: center;
  appearance: none;
  background: #fff;
  border: 1px solid #ef7c1e;
  color: #ef7c1e;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  margin: 65px auto 0;
  padding: 24.103px 52px;
  position: relative;
  width: 90%;
}
@media (min-width: 768px) {
  .confirm-btn {
    width: 322px;
  }
}
.confirm-btn::before {
  content: "";
  border-radius: 50%;
  border: 1px solid #ef7c1e;
  height: 25px;
  position: absolute;
  right: 8.4%;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease;
  width: 25px;
}
@media (min-width: 768px) {
  .confirm-btn::before {
    right: 17.9%;
  }
}
.confirm-btn::after {
  content: "";
  border-right: 1px solid #ef7c1e;
  border-top: 1px solid #ef7c1e;
  height: 8px;
  position: absolute;
  right: 12%;
  transform: rotate(45deg) translateX(0);
  transition: all 0.3s ease;
  width: 8px;
}
@media (min-width: 768px) {
  .confirm-btn::after {
    right: 16px;
    position: inherit;
  }
}
.confirm-btn:hover {
  background-color: #ef7c1e;
  color: #fff;
  transition: all 0.3s ease;
}
.confirm-btn:hover::before {
  border: 1px solid #fff;
  right: 15.5%;
}
.confirm-btn:hover::after {
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg) translate(5px, -5px);
  right: 20.3%;
}
@media (min-width: 768px) {
  .confirm-btn:hover::after {
    right: 7%;
  }
}

.form-btngroup {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-bottom: 20px;
  margin-top: 20px;
}
@media (min-width: 768px) {
  .form-btngroup {
    flex-direction: row;
  }
}

.back-btn {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  align-items: center;
  appearance: none;
  background: #fff;
  border: 1px solid #9cb6c7;
  color: #9cb6c7;
  display: flex;
  justify-content: center;
  padding: 24.103px 52px;
  margin: 65px auto 0;
  position: relative;
  width: 90%;
  cursor: pointer;
}
@media (min-width: 768px) {
  .back-btn {
    width: 322px;
  }
}
.back-btn:hover {
  background-color: #9cb6c7;
  color: #fff;
  transition: all 0.3s ease;
}

.radioList_hr li span {
  margin: 0;
}

.page-id-4812 label[for=free-radio-2], .page-id-4812 label[for=free-radio-3], .page-id-4713 label[for=free-radio-2], .page-id-4713 label[for=free-radio-3] {
  padding-left: 1em;
}

.preferred_dates {
  display: flex;
}

.preferred_dates {
  position: relative;
}

.preferred_dates .select_wrap {
  position: relative;
}

.preferred_dates .select_size2 {
  width: 7rem;
}

.preferred_dates .select_wrap + .select_wrap {
  margin-left: 20px;
}

.preferred_dates .select_wrap {
  position: relative;
}

.mw_wp_form_input .open-area {
  display: none;
}

.mw_wp_form_confirm {
  width: 100%;
  margin-inline: auto;
}
@media screen and (min-width: 767px) {
  .mw_wp_form_confirm {
    width: 850px;
    max-width: 100%;
  }
}

.mw_wp_form_preview .preferred_dates .select_wrap::after {
  content: none;
}
.mw_wp_form_preview .form_privacy {
  display: none;
}

.inputField {
  position: relative;
}

.open-area {
  margin-top: 20px;
  position: absolute;
  top: 84%;
  left: 15%;
}
.home .open-area {
  position: relative;
  left: 0;
}
.type-page .open-area {
  position: relative;
  left: 0;
}
.page-id-5894 .open-area {
  position: relative;
  left: 0;
}
@media screen and (max-width: 767px) {
  .open-area {
    top: 87%;
    left: 25%;
  }
}

@media screen and (max-width: 767px) {
  .mw_wp_form .horizontal-item + .horizontal-item {
    margin-left: 0 !important;
  }
}
.side-nav {
  display: none;
  position: fixed;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1111;
}
@media screen and (min-width: 767px) {
  .side-nav {
    display: block;
  }
}
.side-nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.side-nav ul li {
  padding: 0;
  display: inherit;
}
.side-nav ul li a {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  padding: 40px 15.7px;
  font-weight: bold;
  background: #ef7c1e;
  color: #fff;
  letter-spacing: 6px;
  text-align: center;
  transition: all 0.3s ease;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .side-nav ul li a {
    padding: 40px 0;
  }
}
@media screen and (min-width: 1199px) and (max-width: 1441px) {
  .side-nav ul li a {
    padding: 20px 0;
  }
}
.side-nav ul li a:hover {
  background: rgb(242.3858921162, 151.7219917012, 77.6141078838);
}
.side-nav ul li a span {
  transform: rotate(270deg);
  margin-bottom: 2px;
}
.side-nav ul li a.registration {
  background: #ff6565;
}
.side-nav ul li a.briefing {
  background: #53b78f;
}
.side-nav ul li a.freetrial {
  background: #20c4f4;
}
.page-id-11 .side-nav ul li a {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  padding: 40px 15.7px;
  font-weight: bold;
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .page-id-11 .side-nav ul li a {
    padding: 40px 0;
  }
}
@media screen and (min-width: 1199px) and (max-width: 1441px) {
  .page-id-11 .side-nav ul li a {
    padding: 20px 0;
  }
}
.inputField {
  position: relative;
}

.tabmenu_apply {
  margin-top: 40px;
}
.tabmenu_apply .tabmenu_apply__list {
  display: flex;
  justify-content: center;
  list-style-type: none;
  padding: 0;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .tabmenu_apply .tabmenu_apply__list {
    display: none;
  }
}
.tabmenu_apply .tabmenu_apply__list .tabmenu_apply__item {
  margin-right: 10px;
}
.tabmenu_apply .tabmenu_apply__list .tabmenu_apply__item a {
  display: inline-block;
  padding: 10px;
  text-decoration: none;
  background-color: #fefefe;
  border-bottom: none;
  color: #333;
  transition: background-color 0.3s;
  border-radius: 4px 4px 0 0;
}
.tabmenu_apply .tabmenu_apply__list .tabmenu_apply__item a:hover, .tabmenu_apply .tabmenu_apply__list .tabmenu_apply__item a.active {
  border-bottom: solid 4px #65abff;
}
.tabmenu_apply .tabmenu_apply__content {
  display: none;
  padding: 10px;
}
.tabmenu_apply .tabmenu_apply__content.active {
  display: block;
}
@media screen and (max-width: 767px) {
  .tabmenu_apply .mediaPC {
    display: inline-block;
  }
}

.price-img2 {
  text-align: center;
}
.price-img2 + .noticeList {
  padding-left: 70px;
}
@media screen and (max-width: 767px) {
  .price-img2 + .noticeList {
    padding-left: 20px;
  }
}

@media screen and (max-width: 767px) {
  #footer #footerNav {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .carestaff-form.boxFlowList li .boxImgArea img, .specifictraining-form.boxFlowList li .boxImgArea img {
    width: 40%;
  }
}
@media screen and (max-width: 767px) {
  .carestaff-form.boxFlowList li .boxImgArea:first-of-type, .specifictraining-form.boxFlowList li .boxImgArea:first-of-type {
    padding-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .carestaff-form.boxFlowList > ul > li:before, .specifictraining-form.boxFlowList > ul > li:before {
    top: 0;
    left: 47%;
    border-bottom: 20px solid transparent;
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-top: 20px solid #008f73;
  }
}

.accent {
  color: #ff6565;
}

.tdbg {
  background: #faf7f2;
}

@media screen and (max-width: 767px) {
  .sp-holizon-scroll {
    overflow-x: scroll;
    overflow-y: hidden;
  }
}

.contract_status {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 50px auto 0px;
  max-width: 40%;
}
.mw_wp_form_confirm .contract_status {
  display: none;
}
.contract_status a {
  border-radius: 4px;
  border: 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 1.1em;
  font-weight: bold;
  padding: 15px 50px;
  text-align: center;
  transition: all 0.3s ease;
  transform: translate3d(0, 0, 0);
}
.contract_status a:hover {
  opacity: 0.6;
}
.contract_status .txt {
  color: #ff6565;
  display: block;
  font-weight: bold;
  margin-bottom: 0.5em;
  text-align: center;
  width: 100%;
}
.contract_status .yes {
  background-color: #ffa833;
}
.contract_status .no {
  background-color: #ccc;
}

.page-reasoning-q img {
  max-width: 100%;
}
.page-reasoning-q.container {
  max-width: 1000px;
}
@media screen and (max-width: 767px) {
  .page-reasoning-q .logo img {
    display: block;
    text-align: center;
    width: 50%;
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  .page-reasoning-q .logo .col-sm-10 {
    margin-top: 2em;
  }
}
.page-reasoning-q .explain {
  justify-content: center;
}
.page-reasoning-q .explain-img {
  position: relative;
  z-index: 1;
}
.page-reasoning-q .blue-text {
  color: #1b75bb;
}
.page-reasoning-q .main-box {
  background: #ffdfa0;
  position: relative;
  padding-top: 90px;
  padding-bottom: 100px;
  margin: -70px calc(50% - 50vw) 0;
}
@media screen and (max-width: 767px) {
  .page-reasoning-q .main-box {
    padding: 50px 10px 100px;
    margin: 70px calc(50% - 50vw) 0;
  }
}
.page-reasoning-q .main-box::before {
  content: "";
  position: absolute;
  background: linear-gradient(22deg, #ffdfa0 50%, transparent 52%), linear-gradient(335deg, #ffdfa0 50%, transparent 52%);
  background-size: 30px 30px;
  height: 14px;
  width: 100%;
  top: -14px;
}
.page-reasoning-q .main-box .blk1 .title {
  text-align: center;
}
.page-reasoning-q .main-box .blk1 .title img {
  width: 20%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .page-reasoning-q .main-box .blk1 .title img {
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  .page-reasoning-q .main-box .blk2 {
    overflow-x: hidden;
  }
}
.page-reasoning-q .main-box .blk3 {
  border-top: 1px dotted #00518c;
  margin-top: 20px;
  padding-top: 30px;
}
@media screen and (max-width: 767px) {
  .page-reasoning-q .main-box .blk3 {
    overflow-x: hidden;
  }
}
.page-reasoning-q .main-box .blk3 h3 {
  background: white;
  border-radius: 20px;
  color: #00518c;
  padding: 8px 12px;
  text-align: center;
}
.page-reasoning-q .main-box .blk3 p {
  margin-top: 1em;
}
.page-reasoning-q .main-box .blk3 .last {
  color: #ff6565;
  font-size: 20px;
  font-weight: bold;
  background: #ffefd1;
  display: block;
  border-radius: 20px;
  text-align: left;
  padding: 10px 20px;
  margin-left: auto;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .page-reasoning-q .main-box .blk3 .last {
    font-size: 16px;
    font-size: calc(1 * 1rem);
    padding: 10px;
  }
}
.page-reasoning-q .main-box .blk4 {
  border-top: 1px dotted #00518c;
  margin-top: 20px;
  padding-top: 30px;
}
.page-reasoning-q .main-box .blk4 .title img {
  width: 60%;
}
@media screen and (max-width: 767px) {
  .page-reasoning-q .main-box .blk4 .title img {
    width: 100%;
  }
}
.page-reasoning-q .main-box .blk4 .title .theme {
  width: 38%;
  float: right;
}
@media screen and (max-width: 767px) {
  .page-reasoning-q .main-box .blk4 .title .theme {
    float: initial;
    width: 100%;
    margin-top: 1em;
  }
}
.page-reasoning-q .main-box .blk4 dl {
  margin-top: 1em;
}
.page-reasoning-q .main-box .blk4 dl div {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-top: 0.5em;
}
@media screen and (max-width: 767px) {
  .page-reasoning-q .main-box .blk4 dl div {
    flex-direction: column;
  }
}
.page-reasoning-q .main-box .blk4 dl div dt {
  font-weight: bold;
  color: #fff;
  background-color: #00518b;
  border-radius: 20px;
  text-align: center;
  width: 100px;
  margin-right: 0.5em;
}
.page-reasoning-q .main-box .blk4 dl div dd {
  font-weight: bold;
}
.page-reasoning-q .main-box .blk4 dl div dd .date {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
}
.page-reasoning-q .main-box .blk4 dl div dd.datetext-line {
  margin-top: -5px;
}
.page-reasoning-q .main-box .blk4 dl div dd .last {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
  color: #ff6565;
}
.page-reasoning-q .main-box .blk4 dl div dd .free {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
}
.page-reasoning-q .main-box .blk4 dl div dd.freetext-line {
  margin-top: -11px;
}
.page-reasoning-q .main-box .blk4 dl div dd.zoom-line span {
  color: #ff6565;
  font-weight: bold;
  border-bottom: 1px dotted #f7921e;
}
.page-reasoning-q .main-box .blk5 {
  margin-top: 40px;
  padding-top: 20px;
}
.page-reasoning-q .main-box .blk5 .accordion {
  margin-top: 40px;
}
.page-reasoning-q .main-box .blk5 .accordion-title .title img {
  width: 20%;
}
@media screen and (max-width: 767px) {
  .page-reasoning-q .main-box .blk5 .accordion-title .title img {
    width: 50%;
  }
}
.page-reasoning-q .main-box .blk5 .blk4 {
  border-top: none;
}
.page-reasoning-q .main-box .blk5 .past-title h3 {
  background: #fff;
  border-radius: 20px;
  color: #00518c;
  padding: 8px 12px;
  text-align: center;
}
.page-reasoning-q .form {
  margin-top: 60px;
}
.page-reasoning-q .accordion-item .open + .accordion-content {
  margin-bottom: 2em;
  transition: all 0.3s ease;
}

.page-iv-nurse .boxSection {
  max-width: 1000px;
  margin-inline: auto;
}
.page-iv-nurse .ttl-prog {
  margin-top: 1em;
}
.page-iv-nurse .h-title04 span {
  font-weight: normal;
  font-size: 16px;
  font-size: calc(1 * 1rem);
}
.page-iv-nurse .h-title04 span::before {
  content: none;
}
.page-iv-nurse .box-doctor {
  margin-top: 1em;
  padding: 1em 1.5em !important;
  background-color: #efefef;
}
.page-iv-nurse table {
  width: 100%;
  margin: 40px 0;
  border-collapse: separate;
  border-spacing: 1px;
  background: #ccc;
  font-size: 0.95em;
  line-height: 1.5em;
}
.page-iv-nurse table caption {
  padding: 0 3px 10px;
  font-weight: bold;
  font-size: 1.05em;
}
.page-iv-nurse table tr {
  border-top: 1px solid #ccc;
}
.page-iv-nurse table th, .page-iv-nurse table td {
  padding: 10px 15px;
  background: #fff;
  vertical-align: top;
}
.page-iv-nurse table.txtC th, .page-iv-nurse table.txtC td {
  text-align: center;
}
.page-iv-nurse table th {
  width: 260px;
  background: #f7f9ff;
  font-weight: bold;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .page-iv-nurse table th {
    width: 100%;
  }
}
.page-iv-nurse table td {
  padding-right: 10px;
  padding-left: 10px;
}
.page-iv-nurse table td h4 {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .page-iv-nurse table td h4 {
    flex-direction: column;
  }
}
.page-iv-nurse table td h4 .pdf-btn {
  margin-left: 0.5em;
  display: inline-flex;
  align-items: center;
  padding: 10px 20px;
  background-color: #f7f9ff;
  border-radius: 4px;
  border: 1px solid #6389c6;
  color: #6389c6;
  text-decoration: none;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  .page-iv-nurse table td h4 .pdf-btn {
    margin-left: 0;
    margin-top: 0.5em;
  }
}
.page-iv-nurse table td h4 .pdf-btn:hover {
  background-color: #6389c6;
  color: white;
}
.page-iv-nurse table td h4 .pdf-btn span {
  margin-right: 0.1em;
}
.page-iv-nurse table td p {
  margin: 0;
  padding-top: 20px;
}
.page-iv-nurse table td p:first-child {
  padding-top: 0;
}
.page-iv-nurse table td h4 + p {
  padding-top: 0;
}
.page-iv-nurse table td .inputField__year {
  display: flex;
  align-items: center;
}
.page-iv-nurse table td .inputField__year .input_year {
  width: 11%;
  margin-right: 0.5em;
}
.page-iv-nurse table ul {
  padding: 5px 0;
}
.page-iv-nurse table li {
  padding-top: 15px;
}
.page-iv-nurse table li:first-child {
  padding-top: 0;
}
.page-iv-nurse table dl dd {
  font-size: 0.88em;
}
.page-iv-nurse table a {
  text-decoration: underline;
}
.page-iv-nurse table a:hover {
  text-decoration: none;
}
.page-iv-nurse table td small {
  color: red;
}
.page-iv-nurse .tbl-ivnurse th strong {
  display: inline-block;
  margin-left: 1em;
  padding: 0 8px;
  font-size: 0.85em;
  color: #fff;
  background-color: #6389c6;
  border-radius: 4px;
}
.page-iv-nurse .ivwrap {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .page-iv-nurse .ivwrap {
    flex-direction: column-reverse;
  }
}
.page-iv-nurse .ivwrap img {
  width: 200px;
  height: auto;
}
@media screen and (max-width: 767px) {
  .page-iv-nurse .ivwrap img {
    float: none;
  }
}
.page-iv-nurse .ivwrap .iv-img {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .page-iv-nurse .ivwrap .iv-img {
    margin-bottom: 20px;
  }
}
.page-iv-nurse .ivwrap .pdf-btn {
  margin-top: 20px;
  display: flex;
  align-items: center;
  padding: 10px 20px;
  background-color: #f7f9ff;
  border-radius: 4px;
  border: 1px solid #6389c6;
  color: #6389c6;
  text-decoration: none;
  transition: all 0.3s ease;
}
.page-iv-nurse .ivwrap .pdf-btn:hover {
  background-color: #6389c6;
  color: white;
}
.page-iv-nurse .ivwrap .pdf-btn span {
  margin-right: 0.1em;
}
.page-iv-nurse .ivwrap small {
  display: inline-block;
  margin-bottom: 0.5em;
  font-size: 0.7em;
  line-height: 1.5em;
}
.page-iv-nurse .ivwrap ul {
  list-style: none;
  padding-left: 0;
}
.page-iv-nurse .ivwrap ul li {
  position: relative;
  margin-bottom: 0.5em;
  padding-left: 8.5em;
  line-height: 1.5em;
}
.page-iv-nurse .ivwrap ul li span {
  position: absolute;
  left: 0;
  top: 0;
  display: inline-block;
  width: 8em;
}
.page-iv-nurse .pdf-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .page-iv-nurse .pdf-links {
    justify-content: flex-start;
  }
}
.page-iv-nurse .pdf-links a {
  align-items: center;
  background-color: #f7f9ff;
  border-radius: 4px;
  border: 1px solid #6389c6;
  color: #6389c6;
  display: flex;
  margin: 0 10px 10px 0;
  padding: 10px 20px;
  text-decoration: none;
  transition: all 0.3s ease;
  margin-top: 1em;
}
.page-iv-nurse .pdf-links a:hover {
  background-color: #6389c6;
  color: white;
}
.page-iv-nurse .pdf-links a span {
  margin-right: 0.2em;
}
.page-iv-nurse .entry-start {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  font-weight: bold;
  background: #65abff;
  color: #fff;
  margin-top: 1em;
  padding: 1em;
  text-align: center;
}

.common_subject {
  text-align: center;
  background: #9dd6c4;
}
@media screen and (max-width: 767px) {
  .common_subject {
    margin: auto calc(50% - 50vw);
  }
}
.common_subject h2 {
  font-size: 40px;
  font-size: calc(2.5 * 1rem);
  background: white;
  color: #ed1c24;
  line-height: 1.2;
  padding: 40px 0;
  border-top: 40px solid #9dd6c4;
}
@media screen and (max-width: 767px) {
  .common_subject h2 {
    font-size: 20px;
    font-size: calc(1.25 * 1rem);
  }
}
.common_subject h2 span {
  font-size: 50px;
  font-size: calc(3.125 * 1rem);
}
@media screen and (max-width: 767px) {
  .common_subject h2 span {
    font-size: 22px;
    font-size: calc(1.375 * 1rem);
  }
}
.common_subject .green-bg {
  background: #9dd6c4;
}
.common_subject .green-bg figure + figure {
  margin-top: 20px;
  padding-bottom: 60px;
}
.common_subject .green-bg .common_subject-img2 {
  width: 90%;
}

.page-common_subject .back-btn {
  border: 1px solid #ef7c1f;
}
.page-common_subject .back-btn:hover {
  background: #ef7c1f;
  color: white;
}
.page-common_subject .back-btn a {
  color: #ef7c1f;
}
.page-common_subject .back-btn a:hover {
  text-decoration: none;
  color: white;
}

/* モーダルCSS */
.modalArea {
  display: none;
  position: fixed;
  z-index: 10;
  /*サイトによってここの数値は調整 */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modalBg {
  width: 100%;
  height: 100%;
  background-color: rgba(30, 30, 30, 0.9);
}

.modalWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 70%;
  max-width: 500px;
  padding: 10px 30px;
  background-color: #fff;
}

.closeModal {
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  cursor: pointer;
}

/* 以下ボタンスタイル */
button {
  padding: 10px;
  background-color: #fff;
  border: 1px solid #282828;
  border-radius: 2px;
  cursor: pointer;
}

#openModal, .openModal {
  background: #53b78f;
  border-radius: 30px;
  border: 1px solid #53b78f;
  color: #fff;
  cursor: pointer;
  padding: 20px 14px;
  position: absolute;
  right: 0%;
  top: -77%;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  #openModal, .openModal {
    left: 0;
    margin: auto;
    right: 0%;
    text-align: center;
    top: -20vw;
    width: 80%;
  }
}
#openModal:hover, .openModal:hover {
  background: white;
  color: #53b78f;
}

.blk-leftside {
  display: flex;
  flex-direction: column;
  left: 0;
  position: fixed;
  top: 16.4%;
}
.blk-leftside .c-link-freetrial {
  background: #ffb965;
  color: #fff;
  padding: 22px 12px;
  text-orientation: upright;
  writing-mode: vertical-rl;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  .blk-leftside .c-link-freetrial {
    padding: 12px 4px;
    font-size: 12px;
  }
}
.blk-leftside .c-link-freetrial:hover {
  background: #fff;
  color: #ffb965;
}
.blk-leftside .c-link-pdf {
  background: #4bbac8;
  color: #fff;
  padding: 22px 12px;
  text-orientation: upright;
  writing-mode: vertical-rl;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  .blk-leftside .c-link-pdf {
    padding: 12px 4px;
    font-size: 12px;
  }
}
.blk-leftside .c-link-pdf:hover {
  background: #fff;
  color: #4bbac8;
}

@media screen and (max-width: 767px) {
  .newnursingstaff-training .breadcrumbs {
    margin-top: 0.1rem;
  }
}

.page-newnursingstaff-training {
  position: relative;
}

.nnst {
  max-width: 768px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .nnst {
    padding: 0 10px;
    max-width: 100vw;
  }
}
.nnst .container {
  max-width: 768px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .nnst .container {
    max-width: 100vw;
  }
}
.nnst img {
  width: 70%;
}
@media screen and (max-width: 767px) {
  .nnst img {
    width: 100%;
  }
}
.nnst-blk1 .demo-btn-top {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: absolute;
  top: -1%;
  right: 39%;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .demo-btn-top {
    top: -1.5%;
    right: 1%;
  }
}
.nnst-blk1 .demo-btn-top a {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  align-items: center;
  background-color: #65abff;
  border: 1px solid #65abff;
  color: #fff;
  display: flex;
  font-weight: bold;
  justify-content: center;
  padding: 20px 12px;
  text-align: center;
  width: 100%;
  border-radius: 10vh;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .demo-btn-top a {
    width: 100%;
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 12px;
  }
}
.nnst-blk1 .demo-btn-top a:hover {
  background: #fff;
  color: #65abff;
}
.nnst-blk1 .program-all-btn-top {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  position: absolute;
  top: -1%;
  right: 0;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .program-all-btn-top {
    top: -1%;
    right: 1%;
  }
}
.nnst-blk1 .program-all-btn-top a {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  align-items: center;
  background-color: #fa5dbd;
  border: 1px solid #fa5dbd;
  color: #fff;
  display: flex;
  font-weight: bold;
  justify-content: center;
  padding: 20px 12px;
  text-align: center;
  width: 100%;
  border-radius: 10vh;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .program-all-btn-top a {
    width: 100%;
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 12px;
  }
}
.nnst-blk1 .program-all-btn-top a:hover {
  background: #fff;
  color: #ff6565;
}
.nnst-blk1 .row2 {
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row2 img {
    width: 70%;
  }
}
.nnst-blk1 .row3 {
  position: relative;
}
.nnst-blk1 .row3 .start-date {
  font-size: 47px;
  font-size: calc(2.9375 * 1rem);
  border-bottom: 4px dotted #f37357;
  bottom: 6%;
  color: #f37357;
  display: inline-block;
  font-weight: bold;
  left: 50%;
  position: absolute;
  text-align: center;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row3 .start-date {
    width: 47%;
    bottom: -6%;
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
  }
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .nnst-blk1 .row3 .start-date {
    font-size: 36px;
    font-size: calc(2.25 * 1rem);
  }
}
.nnst-blk1 .row3 img {
  width: 768px;
}
.nnst-blk1 .row4 {
  margin-top: 20px;
  position: relative;
}
.nnst-blk1 .row4::before {
  background: url(./img/nnst/nnst-img4-2.png) no-repeat center center;
  background-size: contain;
  content: "";
  height: 120px;
  left: 9px;
  position: absolute;
  top: 20px;
  width: 130px;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row4::before {
    height: 60px;
    left: -2%;
    top: 22%;
    width: 53px;
  }
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .nnst-blk1 .row4::before {
    top: -24%;
  }
}
.nnst-blk1 .row4 img {
  width: 550px;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row4 img {
    width: 87%;
  }
}
.nnst-blk1 .row5 {
  margin-inline: auto;
  margin-top: 40px;
  position: relative;
}
.nnst-blk1 .row5::before {
  content: none;
  background: #5e4a44;
  height: 4px;
  width: 100%;
  margin-bottom: 20px;
}
.nnst-blk1 .row5 .col {
  text-align: left;
  max-width: 760px;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row5 .col2 {
    margin-top: 20px;
  }
}
.nnst-blk1 .row5 .col2 h4 {
  background: #6aa247;
  border-radius: 20px;
  color: #fff;
  padding: 4px 20px;
}
.nnst-blk1 .row5 .col2 ul {
  list-style: none;
  padding-left: 10px;
  text-align: left;
}
.nnst-blk1 .row6 {
  margin-top: 40px;
}
.nnst-blk1 .row6 img {
  width: 95%;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row6 img {
    width: 100%;
  }
}
.nnst-blk1 .row7 {
  margin-top: 20px;
}
.nnst-blk1 .row7 img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row7 img {
    width: 100%;
  }
}
.nnst-blk1 .row7 .col2 {
  margin-top: 40px;
}
.nnst-blk1 .row7 .col3 {
  margin-top: 40px;
}
.nnst-blk1 .row7 .planning-production {
  margin-top: 60px;
}
.nnst-blk1 .row8 {
  margin-inline: auto;
  margin-top: 60px;
  position: relative;
}
.nnst-blk1 .row8::before {
  content: none;
  background: #5e4a44;
  height: 4px;
  width: 100%;
  margin-bottom: 20px;
}
.nnst-blk1 .row8 p {
  font-size: 38px;
  font-size: calc(2.375 * 1rem);
  border-radius: 50px;
  border: 10px solid #20c4f4;
  color: #303030;
  font-weight: bold;
  margin-top: 40px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row8 p {
    font-size: 15px;
    font-size: calc(0.9375 * 1rem);
  }
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .nnst-blk1 .row8 p {
    font-size: 32px;
    font-size: calc(2 * 1rem);
  }
}
.nnst-blk1 .row8 .number {
  font-family: "Oswald", sans-serif;
  font-size: 50px;
  font-size: calc(3.125 * 1rem);
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row8 .number {
    font-size: 34px;
    font-size: calc(2.125 * 1rem);
  }
}
.nnst-blk1 .row8 .step {
  font-size: 44px;
  font-size: calc(2.75 * 1rem);
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row8 .step {
    font-size: 20px;
    font-size: calc(1.25 * 1rem);
  }
}
.nnst-blk1 .row9 {
  margin-inline: auto;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .step-row {
    padding: 0;
  }
}
.nnst-blk1 .row9 .step-item {
  align-items: flex-start;
  display: flex;
  margin-bottom: 2em;
  position: relative;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .step-item {
    flex-direction: column;
  }
}
.nnst-blk1 .row9 .step-item::after {
  content: none;
  position: absolute;
  border-bottom: 4px dotted #20c4f4;
  width: 100%;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .step-item::after {
    width: 100%;
  }
}
.nnst-blk1 .row9 .step-item img {
  width: 15%;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .step-item img {
    width: 20%;
  }
}
.nnst-blk1 .row9 .step-item3 .step-img img {
  width: 80%;
}
.nnst-blk1 .row9 .step-item4 {
  position: relative;
  padding-top: 40px;
}
.nnst-blk1 .row9 .step-item4::before {
  content: "";
  position: absolute;
  border-bottom: 4px dotted #20c4f4;
  width: 100%;
  right: 0;
  top: 0;
}
.nnst-blk1 .row9 .step-item4 .step-img img {
  width: 80%;
}
.nnst-blk1 .row9 .step-text {
  flex: 1;
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .step-text {
    margin-left: 0;
    margin-top: 1em;
  }
}
.nnst-blk1 .row9 .step-text h4 {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .step-text h4 {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
    line-height: 1.2;
  }
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .nnst-blk1 .row9 .step-text h4 br {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .step-text h4 span {
    margin-left: 0.3em;
  }
}
.nnst-blk1 .row9 .step-text h4 span.blue {
  color: #20c4f4;
  font-size: 30px;
  font-size: calc(1.875 * 1rem);
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .step-text h4 span.blue {
    font-size: 24px;
    font-size: calc(1.5 * 1rem);
    margin-left: 0.3em;
  }
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .step-text h4 span.blue2 {
    margin-left: 0;
  }
}
.nnst-blk1 .row9 .step-text ul {
  padding-left: 1em;
}
.nnst-blk1 .row9 .step-text ul li {
  font-size: 16px;
  font-size: calc(1 * 1rem);
}
.nnst-blk1 .row9 .step-text .list-img {
  display: flex;
  flex-direction: column;
}
.nnst-blk1 .row9 .step-text .list-img ul {
  flex: 1;
  margin-right: 0.5em;
}
.nnst-blk1 .row9 .step-text .list-img img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .step-icon {
    display: flex;
    align-items: center;
  }
}
.nnst-blk1 .row9 .step-img {
  flex: 1;
  text-align: center;
}
.nnst-blk1 .row9 .step-img img {
  width: 100%;
}
.nnst-blk1 .row9 .program-sample {
  margin-top: 60px;
}
.nnst-blk1 .row9 .program-sample-title {
  margin-bottom: 40px;
}
.nnst-blk1 .row9 .program-sample-title h2 {
  font-size: 30px;
  font-size: calc(1.875 * 1rem);
  border-radius: 60px;
  border: 10px solid #20c4f4;
  color: #303030;
  line-height: 1.2;
  padding: 0.7em 1em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .program-sample-title h2 {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
    border-radius: 40px;
  }
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .nnst-blk1 .row9 .program-sample-title h2 {
    font-size: 26px;
    font-size: calc(1.625 * 1rem);
  }
}
.nnst-blk1 .row9 .program-sample-title h2 span {
  color: #20c4f4;
  font-size: 34px;
  font-size: calc(2.125 * 1rem);
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .program-sample-title h2 span {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.nnst-blk1 .row9 .program-sample-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .program-sample-row {
    flex-direction: column;
  }
}
.nnst-blk1 .row9 .program-sample-text {
  flex: 1;
}
.nnst-blk1 .row9 .program-sample-text h3 {
  color: #6aa247;
  font-size: 26px;
  font-size: calc(1.625 * 1rem);
  text-align: left;
  line-height: 1;
}
.nnst-blk1 .row9 .program-sample-text h3 .number {
  color: #5e4a44;
  font-size: 26px;
  font-size: calc(1.625 * 1rem);
}
.nnst-blk1 .row9 .program-sample-text h3 span {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  color: #5e4a44;
}
.nnst-blk1 .row9 .program-sample-text .img-text {
  text-align: right;
}
.nnst-blk1 .row9 .program-sample-text .img-text p {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  line-height: 1;
  margin: 6px 0.5em 0 0;
}
.nnst-blk1 .row9 .program-sample-text .img-text p.title {
  margin-top: 1em;
}
.nnst-blk1 .row9 .program-sample-img {
  flex-basis: 35%;
  width: 35%;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .program-sample-img {
    flex-basis: 100%;
    margin-top: 1em;
    width: 100%;
  }
}
.nnst-blk1 .row9 .program-sample-img img {
  width: 100%;
}
.nnst-blk1 .row9 .program-point {
  margin-top: 40px;
}
.nnst-blk1 .row9 .program-point h2 {
  color: #5e4a44;
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  text-align: center;
  border: 4px solid #5e4a44;
  padding: 0.7em 1em;
  border-radius: 60px;
  margin-bottom: 1em;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .program-point h2 {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
  }
}
.nnst-blk1 .row9 .program-point h2 span {
  color: #6aa247;
  font-size: 28px;
  font-size: calc(1.75 * 1rem);
}
.nnst-blk1 .row9 .program-point ul {
  margin-top: 0;
  padding-left: 6em;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row9 .program-point ul {
    padding-left: 1em;
  }
}
.nnst-blk1 .row10 {
  margin-top: 40px;
}
.nnst-blk1 .row10 img {
  width: 100%;
}
.nnst-blk1 .row11 h4 {
  color: #5e4a44;
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row11 h4 .form a {
    font-size: 30px;
    font-size: calc(1.875 * 1rem);
    background: #ffb965;
    border-radius: 4px;
    border: 1px solid #ffb965;
    color: #fff;
    display: block;
    margin-inline: auto;
    margin-top: 30px;
    padding: 20px 10px;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease;
    width: 40%;
  }
}
.nnst-blk1 .row11 h4 span {
  font-size: 32px;
  font-size: calc(2 * 1rem);
  align-items: center;
  color: #6aa247;
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row11 h4 span {
    font-size: 28px;
    font-size: calc(1.75 * 1rem);
  }
}
.nnst-blk1 .row11 h4 span::after {
  border-bottom: 2px dotted #6aa247;
  content: "";
  margin-top: 8px;
  width: 80%;
}
.nnst-blk1 .row12 {
  display: none;
  margin-inline: auto;
  margin-top: 60px;
  position: relative;
}
.nnst-blk1 .row12::before {
  content: "";
  background: #5e4a44;
  height: 4px;
  width: 100%;
  margin-bottom: 20px;
}
.nnst-blk1 .row12 .col p {
  text-align: left;
}
.nnst-blk1 .row12 img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row12 img {
    width: 100%;
  }
}
.nnst-blk1 .row12 ul {
  text-align: left;
}
.nnst-blk1 .row12 .img1 {
  margin-top: 20px;
  width: 80%;
  margin-inline: auto;
}
.nnst-blk1 .row12 .img2 {
  margin-top: 40px;
  width: 80%;
  margin-inline: auto;
}
.nnst-blk1 .row12 .nurse-position {
  text-align: left;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row12 .nurse-position {
    padding: 0;
  }
}
.nnst-blk1 .row12 .position-title {
  align-items: center;
  border-radius: 50px;
  border: 10px solid #20c4f4;
  color: #303030;
  display: flex;
  font-weight: bold;
  justify-content: center;
  margin-top: 40px;
  padding: 1em 0.2em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row12 .position-title {
    flex-direction: column;
  }
}
.nnst-blk1 .row12 .position-title h2 {
  font-size: 32px;
  font-size: calc(2 * 1rem);
  color: #20c4f4;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row12 .position-title h2 {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
  }
}
.nnst-blk1 .row12 .position-title p {
  font-size: 22px;
  font-size: calc(1.375 * 1rem);
  line-height: 1;
  margin-top: 0;
  margin-left: 0.5em;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row12 .position-title p {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
  }
}
.nnst-blk1 .row12 .position-row-header {
  margin-top: 2em;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row12 .position-row-header {
    flex-direction: column;
  }
}
.nnst-blk1 .row12 .position-row-header h3 {
  text-align: left;
}
.nnst-blk1 .row12 .position-row-header p {
  margin-top: 0;
  line-height: 1;
  font-size: 25px;
  font-size: calc(1.5625 * 1rem);
  margin-left: 1em;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row12 .position-row-header p {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
    margin-left: 0;
  }
}
.nnst-blk1 .row12 .position-row .position-img {
  margin-top: 1em;
}
.nnst-blk1 .row12 .position-row .position-img img {
  width: 100%;
}
.nnst-blk1 .row13 {
  margin-top: 40px;
}
.nnst-blk1 .row13 img {
  width: 90%;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row13 img {
    width: 100%;
  }
}
.nnst-blk1 .row13 .img2 {
  margin-top: 40px;
}
.nnst-blk1 .row13 .list_of_lecturers-flex {
  display: flex;
  justify-content: space-between;
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row13 .list_of_lecturers-flex {
    flex-direction: column;
  }
}
.nnst-blk1 .row13 .list_of_lecturers-table {
  table-layout: fixed;
  text-align: left;
  width: 50%;
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row13 .list_of_lecturers-table {
    width: 100%;
  }
}
.nnst-blk1 .row13 .list_of_lecturers-table tr th, .nnst-blk1 .row13 .list_of_lecturers-table tr td {
  padding: 1em;
}
.nnst-blk1 .row13 .list_of_lecturers-table tr th {
  background: #dbebbe;
  width: 34%;
  border-bottom: 1px solid #dbebbe;
}
.nnst-blk1 .row13 .list_of_lecturers-table tr td {
  font-size: 12px;
  font-size: calc(0.75 * 1rem);
  width: auto;
  text-align: left;
  border-bottom: 1px solid #ccc;
}
.nnst-blk1 .row13 .program-all-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.nnst-blk1 .row13 .program-all-btn a {
  font-size: 30px;
  font-size: calc(1.875 * 1rem);
  background: #fa5dbd;
  border-radius: 20px;
  border: 1px solid #fa5dbd;
  color: #fff;
  display: block;
  font-weight: bold;
  margin-inline: auto;
  margin-top: 30px;
  padding: 20px 10px;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s ease;
  width: 60%;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row13 .program-all-btn a {
    width: 90%;
    font-size: 20px;
    font-size: calc(1.25 * 1rem);
    display: flex;
    justify-content: center;
    align-items: center;
  }
}
.nnst-blk1 .row13 .program-all-btn a:hover {
  background: #fff;
  color: #ff6565;
}
.nnst-blk1 .row14 {
  margin-top: 40px;
}
.nnst-blk1 .row14 .form a {
  font-size: 30px;
  font-size: calc(1.875 * 1rem);
  background: #ef7c1e;
  border-radius: 4px;
  border: 1px solid #ef7c1e;
  color: #fff;
  display: block;
  margin-inline: auto;
  margin-top: 30px;
  padding: 20px 10px;
  text-align: center;
  text-decoration: none;
  width: 40%;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row14 .form a {
    width: 90%;
  }
}
.nnst-blk1 .row14 .form a:hover {
  background: #fff;
  color: #ef7c1e;
}
.nnst-blk1 .row-videos {
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row-videos .col-xs-12 + .col-xs-12 {
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .row-videos .col-xs-12:last-of-type {
    margin-bottom: 0;
  }
}
.nnst-blk1 .row-videos h4 {
  margin-bottom: 0;
}
.nnst-blk1 .samplevideo-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  margin-bottom: 30px;
}
.nnst-blk1 .samplevideo-wrap h4 {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  background: #dd6a47;
  border-radius: 20px;
  color: #fff;
  margin-bottom: 20px;
  margin-top: 20px;
  padding: 10px 20px;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .samplevideo-wrap h4 {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
    width: 100%;
    text-align: center;
  }
}
.nnst-blk1 .samplevideo-wrap p.point {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  background: #dd6a47;
  border-radius: 50%;
  color: white;
  font-weight: bold;
  text-align: center;
  text-align: center;
  padding: 10px 20px;
  position: absolute;
  top: -9%;
  left: -10%;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .nnst-blk1 .samplevideo-wrap p.point {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
    border-radius: 30px;
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    margin-bottom: 20px;
  }
  .nnst-blk1 .samplevideo-wrap p.point br {
    display: none;
  }
}
.nnst-blk1.samplevideo-wrap2 {
  margin-bottom: 0;
}
.nnst h3 {
  color: #6aa247;
  font-size: 32px;
  font-size: calc(2 * 1rem);
  text-align: left;
}
@media screen and (max-width: 767px) {
  .nnst h3 {
    font-size: 22px;
    font-size: calc(1.375 * 1rem);
    text-align: left;
  }
}
.nnst p {
  margin-top: 0.5em;
}
.nnst .row-videos p {
  margin-top: 0;
}
.nnst .h-title01 {
  font-size: 36px;
  font-size: calc(2.25 * 1rem);
}
@media screen and (max-width: 767px) {
  .nnst .h-title01 {
    font-size: 22px;
    font-size: calc(1.375 * 1rem);
  }
}
.nnst .h-title01::before {
  color: #bee8b2;
}
@media screen and (max-width: 767px) {
  .nnst .h-title01::before {
    top: 37px;
  }
}
.nnst .box_support_title {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .nnst .box_support_title {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
  }
}
.nnst .box_support_point {
  text-align: center;
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  color: #5e4a44;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .nnst .box_support_point {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
    line-height: 1.2;
  }
}
.nnst .form-buttons {
  margin-top: 20px;
}
.nnst .pocket-mannual {
  margin-top: 80px;
  margin-bottom: 100px;
}

.accordion-content {
  display: none;
}

.accordion-title {
  position: relative;
  cursor: pointer;
}

.accordion-title::after {
  border-right: solid 2px #00518b;
  border-top: solid 2px #00518b;
  content: "";
  display: block;
  height: 18px;
  position: absolute;
  right: 25px;
  top: 30%;
  transform: rotate(135deg);
  transition: transform 0.3s ease-in-out, top 0.3s ease-in-out;
  width: 18px;
}

.accordion-title.open::after {
  top: 45%;
  transform: rotate(-45deg);
}

.squekaigo-link a {
  position: relative;
  display: inline-block;
  text-decoration: underline;
  padding-left: 34px;
}
.squekaigo-link a::before, .squekaigo-link a::after {
  position: absolute;
  top: 50%;
  left: 5px;
  width: 0;
  height: 0;
  margin-top: -7px;
  border-width: 7px 10px;
  border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #000;
  border-style: solid;
  border-left-color: #53b78f;
  content: "";
}
.squekaigo-link a::after {
  left: 17px;
}

.mw_wp_form_input .open-area {
  display: none;
}
.mw_wp_form_input .open-area:has(.error) {
  display: block;
}

.term-check-wrap {
  text-align: center;
  margin-top: 2em;
  font-size: 22px;
  font-size: calc(1.375 * 1rem);
  font-weight: bold;
  color: #fa5dbd;
}
.term-check-wrap .mwform-checkbox-field-text {
  font-size: 22px;
  font-size: calc(1.375 * 1rem);
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .term-check-wrap .mwform-checkbox-field-text {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
  }
}

.mw_wp_form_confirm .term-check-wrap {
  opacity: 0;
}

.newnursingstaff-training-opning-banner {
  margin-bottom: 60px;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .newnursingstaff-training-opning-banner .col-xs-12:first-of-type {
    margin-bottom: 1em;
  }
}
.newnursingstaff-training-opning-banner a img {
  transition: all 0.3s ease;
  width: 100%;
}
.newnursingstaff-training-opning-banner a img:hover {
  opacity: 0.8;
}
.newnursingstaff-training-opning-banner-button {
  text-align: center;
}
.newnursingstaff-training-opning-banner-button a {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  align-items: center;
  background-color: #ff6565;
  border-radius: 10vh;
  border: 1px solid #ff6565;
  color: #fff;
  display: flex;
  font-weight: bold;
  justify-content: center;
  margin-inline: auto;
  padding: 20px 12px;
  text-align: center;
  transition: all 0.3s ease;
  width: 80%;
}
@media screen and (max-width: 767px) {
  .newnursingstaff-training-opning-banner-button a {
    width: 80%;
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px 12px;
  }
}
.newnursingstaff-training-opning-banner-button a:hover {
  background: #fff;
  color: #ff6565;
}
.newnursingstaff-training-opning-banner-button a.books {
  background-color: #1e2b5b;
  border: 1px solid #1e2b5b;
}
.newnursingstaff-training-opning-banner-button a.books:hover {
  background: #fff;
  color: #1e2b5b;
}

.footer-contact-box {
  margin-top: 2em;
}
.footer-contact-box .boxInner {
  width: 80vw;
}
@media screen and (max-width: 767px) {
  .footer-contact-box .boxInner {
    width: 95%;
  }
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .footer-contact-box .boxInner {
    width: auto;
  }
}
@media screen and (max-width: 767px) {
  .footer-contact-box .boxContactInfo .boxContacMail .btn.arw > * {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}

.hr-eval .container {
  max-width: 1000px;
  margin-inline: auto;
  padding: 0 10px;
}
.hr-eval .container.u-position-relative .breadcrumbs {
  margin: 42px 0 0;
}
.hr-eval .header img {
  vertical-align: middle;
}
.hr-eval .header-txt {
  background: #fff5fa;
  padding: 20px;
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .hr-eval .header-txt {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.hr-eval .header .pink {
  color: #e4007f;
}
.hr-eval .blk1 {
  text-align: center;
}
.hr-eval .entry-content {
  max-width: 900px;
  margin-inline: auto;
}
.hr-eval .entry-content p:not(:first-child) {
  margin-top: 1em;
}
.hr-eval .entry-content .pink {
  color: #fa5dbd;
}
.hr-eval .login-contact-button {
  max-width: 900px;
  margin-inline: auto;
  margin-top: 3em;
}
.hr-eval .login-contact-button .btn {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  align-items: center;
  color: #fff;
  display: flex;
  font-weight: bold;
  justify-content: center;
  padding: 20px 12px;
  text-align: center;
  width: 50% !important;
  margin-inline: auto;
  border-radius: 10vh;
  transition: all 0.3s ease;
}
@media screen and (min-width: 767px) {
  .hr-eval .login-contact-button .btn {
    width: auto;
  }
}
.hr-eval .login-contact-button .btn-entry {
  background-color: #ff6565;
}
.hr-eval .login-contact-button .btn-entry:hover {
  background-color: #ff9898;
}
.hr-eval .login-contact-button .btn-entry-apply {
  padding: 20px 20px;
  width: 50%;
}
@media screen and (max-width: 767px) {
  .hr-eval .login-contact-button .btn-entry-apply {
    width: 90%;
  }
}
.hr-eval .login-contact-button .btn-contact {
  background-color: #4bbac8;
}
.hr-eval .login-contact-button .btn-contact:hover {
  background-color: rgb(114.0638297872, 200.9744680851, 211.9361702128);
}
.hr-eval .login-contact-button .btn-freetrial {
  background-color: #65abff;
}
.hr-eval .login-contact-button .btn-freetrial:hover {
  background-color: rgb(152, 198.8181818182, 255);
}
.hr-eval .login-contact-button .btn span {
  margin-right: 4px;
}
.hr-eval .login-contact-button .btn-login {
  background: #ffb965;
}
.hr-eval .login-contact-button .btn-login:hover {
  background-color: rgb(255, 208.1818181818, 152);
}
.hr-eval .login-contact-button .btn-contact {
  background: #65abff;
}
.hr-eval .login-contact-button .btn-contact:hover {
  background-color: rgb(152, 198.8181818182, 255);
}
.hr-eval .pdf-download {
  margin-top: 2em;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .hr-eval .pdf-download {
    flex-direction: column;
  }
}
.hr-eval .pdf-download a {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  align-items: center;
  border-radius: 30px;
  color: #fff;
  display: flex;
  font-weight: bold;
  justify-content: center;
  padding: 20px 20px;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s ease;
  width: 50%;
}
@media screen and (max-width: 767px) {
  .hr-eval .pdf-download a {
    width: 100%;
  }
}
.hr-eval .pdf-download a span {
  margin-right: 4px;
}
.hr-eval .pdf-download a.pdf {
  background-color: #2b5eab;
}
.hr-eval .pdf-download a.pdf:hover {
  background-color: rgb(99.9813084112, 146.214953271, 216.0186915888);
}
.hr-eval .pdf-download a.apply {
  background-color: #ff6565;
}
.hr-eval .pdf-download a.apply:hover {
  background-color: #ffcbcb;
}
.hr-eval .distress {
  position: relative;
  width: 100%;
  margin-top: 80px;
  background: url(./img/hr-eval/distress.png) no-repeat top center/cover;
}
.hr-eval .distress::before {
  content: "";
  display: block;
  padding-top: 111.11%;
}
@media screen and (max-width: 767px) {
  .hr-eval .distress::before {
    padding-top: 121.11%;
  }
}
.hr-eval .distress-header {
  position: relative;
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.hr-eval .distress .title {
  bottom: -45px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .hr-eval .distress .title {
    bottom: -5%;
  }
}
.hr-eval .distress-img1 {
  position: absolute;
  top: 17%;
  top: 17%;
  left: -5%;
  left: -5%;
  width: 50%;
  width: 50%;
}
.hr-eval .distress-img2 {
  position: absolute;
  top: 27%;
  top: 27%;
  left: 1%;
  left: 0%;
  width: 40%;
  width: 40%;
}
.hr-eval .distress-img3 {
  position: absolute;
  top: 20%;
  top: 20%;
  left: 27%;
  left: 27%;
  width: 40%;
  width: 40%;
}
.hr-eval .distress-img4 {
  position: absolute;
  top: 17%;
  top: 17%;
  right: -5%;
  right: -5%;
  width: 50%;
  width: 50%;
}
.hr-eval .distress-img6 {
  position: absolute;
  top: 28%;
  top: 28%;
  right: 5%;
  right: 5%;
  width: 40%;
  width: 40%;
}
.hr-eval-contents {
  margin-top: 20px;
}
.hr-eval-contents .paragraph h2.h-title07 {
  padding: 1em 0;
  width: 100%;
  left: 0;
}
.hr-eval-contents .paragraph h2.h-title07::after {
  background: #e9596f;
  left: 0;
  width: 100%;
}
.hr-eval-contents .paragraph h2 span {
  background: #e9596f;
  border-radius: 10px;
  color: #fff;
  display: inline-block;
  margin-right: 0.5em;
  padding: 0.3em 1em;
  position: absolute;
  left: -82px;
}
@media screen and (max-width: 767px) {
  .hr-eval-contents .paragraph h2 span {
    margin-right: 0;
    left: 50%;
    top: -30px;
    margin-top: 0;
  }
}
.hr-eval-contents .paragraph .description {
  margin-top: -20px;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .hr-eval-contents .paragraph .description {
    margin-left: 0;
  }
}
.hr-eval .fee {
  margin-top: 40px;
  max-width: 100%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .hr-eval .fee {
    max-width: 90%;
  }
}
.hr-eval .fee .h-title01::before {
  color: rgba(243, 149, 177, 0.2);
}
@media screen and (max-width: 767px) {
  .hr-eval .fee .h-title01::before {
    top: 30%;
  }
}
.hr-eval .fee figure {
  position: relative;
  margin-top: 40px;
}
.hr-eval .info-img {
  margin-top: 80px;
  text-align: center;
}
.hr-eval .info-img img {
  width: 80%;
}
@media screen and (max-width: 767px) {
  .hr-eval .info-img img {
    width: 100%;
  }
}
.hr-eval .form-buttons a {
  width: 30%;
}
@media screen and (max-width: 767px) {
  .hr-eval .form-buttons a {
    width: 80%;
  }
}

.hr-eval-login .login-title {
  margin-top: 4em;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767px) {
  .hr-eval-login .login-title {
    padding: 0 10px;
  }
}
@media screen and (max-width: 767px) {
  .hr-eval-login .login-title h2 {
    text-align: left;
  }
}
.hr-eval-login .loginbox {
  background-color: #f7f9ff;
  margin: 0 auto;
  max-width: 900px;
  padding: 2em;
  width: 100%;
}
.hr-eval-login .loginbox #subdomainForm {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .hr-eval-login .loginbox #subdomainForm {
    align-items: flex-start;
    flex-direction: column;
  }
}
.hr-eval-login .loginbox #subdomainForm span {
  margin: 0 5px;
  white-space: nowrap;
}
.hr-eval-login .loginbox #subdomainForm #subdomainInput {
  flex: 2;
  margin: 0 10px;
}
@media screen and (max-width: 767px) {
  .hr-eval-login .loginbox #subdomainForm #subdomainInput {
    flex: 1;
    margin: 0;
  }
}
.hr-eval-login .loginbox #subdomainForm button[type=submit] {
  align-items: center;
  background-color: #65abff;
  border-radius: 5px;
  border: 1px solid #65abff;
  color: white;
  display: flex;
  flex: 1;
  justify-content: center;
  padding: 0.5em 1em;
  transition: all 0.3s;
}
.hr-eval-login .loginbox #subdomainForm button[type=submit]:hover {
  background-color: white;
  color: #65abff;
}
.hr-eval-login .login-notice {
  margin-top: 0.5em;
}
@media screen and (max-width: 767px) {
  .hr-eval-login .login-notice {
    padding: 0 10px;
  }
}
@media screen and (max-width: 767px) {
  .hr-eval-login .login-notice p {
    text-align: left;
  }
}
.hr-eval-login .login-notice p a {
  color: #ff6565;
  text-decoration: underline;
  transition: all 0.3s;
}
.hr-eval-login .login-notice p a:hover {
  text-decoration: none;
}

.notice-link a {
  color: #ff6565;
  font-weight: bold;
  text-decoration: underline;
  transition: all 0.3s;
}
@media screen and (max-width: 767px) {
  .notice-link a {
    margin-top: 0.5em;
  }
}
.notice-link a:hover {
  text-decoration: none;
}

.notice-header {
  text-align: center;
  margin-top: 2em;
}
.notice-header a {
  color: #bb2c28;
  display: inline-block;
  font-weight: bold;
  padding: 0.5em;
  text-decoration: underline;
  transition: all 0.3s ease;
}
.notice-header a:hover {
  text-decoration: none;
}

.page-rootnurse section {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.page-rootnurse .link-btn {
  text-align: center;
  margin-top: 1em;
}
.page-rootnurse .link-btn a {
  align-items: center;
  background: #4bbac8;
  border-radius: 10px;
  border: 1px solid #4bbac8;
  color: #fff;
  display: flex;
  justify-content: center;
  padding: 1em 2em;
  transition: all 0.3s ease;
}
.page-rootnurse .link-btn a:hover {
  background: #fff;
  color: #4bbac8;
  text-decoration: none;
}
.page-rootnurse .link-btn a:hover .material-icons.md-white {
  color: #4bbac8 !important;
}
.page-rootnurse .link-btn a span {
  margin-left: 0.5em;
}

.page-printservice section {
  max-width: 850px;
  margin-inline: auto;
}
.page-printservice section .text-block p {
  margin-top: 1em;
}
.page-printservice section .text-block p .big {
  font-size: 22px;
  font-size: calc(1.375 * 1rem);
  font-weight: bold;
}
.page-printservice section .text-block ul {
  margin-top: 1em;
  list-style: none;
  padding-left: 0;
}
.page-printservice section .text-block ul li {
  color: #ff4d4f;
}
.page-printservice section .form-wrap input[type=text],
.page-printservice section .form-wrap input[type=email],
.page-printservice section .form-wrap input[type=tel],
.page-printservice section .form-wrap input[type=url],
.page-printservice section .form-wrap input[type=search],
.page-printservice section .form-wrap textarea,
.page-printservice section .form-wrap select {
  -webkit-appearance: none;
  appearance: none;
  /*ブラウザ標準スタイルを無効にする*/
  width: 95%;
  padding: 5px 15px;
  background: #fff;
  border: 1px solid #707070;
  border-radius: 10px;
  font-family: inherit;
}

.printservice-img {
  text-align: center;
  margin-bottom: 10px;
}
.printservice-img img {
  max-width: 60%;
}
@media screen and (max-width: 767px) {
  .printservice-img img {
    width: 80%;
  }
}

.specifictraining-banner .banner-btn {
  background: #f5d753;
  border-radius: 30px;
  border: 1px solid #f5d753;
  color: #333;
  cursor: pointer;
  font-weight: bold;
  padding: 20px 14px;
  position: absolute;
  right: 0%;
  top: -77%;
  transition: all 0.3s ease;
}
.specifictraining-banner .banner-btn:hover {
  background: #fff;
  color: #f5d753;
  text-decoration: none;
}

.page-download .boxAdobe {
  background-color: #f9f5ef;
  border-radius: 10px;
  display: flex;
  justify-content: space-between;
  margin-top: 1em;
  padding: 1.5em;
}
.page-download .boxAdobe p {
  flex-basis: 77%;
}
@media screen and (max-width: 767px) {
  .page-download .boxAdobe p {
    flex-basis: 100%;
  }
}
.page-download .boxAdobe span {
  display: inline-block;
}
.page-download .boxDownload {
  margin-inline: auto;
  max-width: 800px;
}
.page-download .boxLineList h3 {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  color: #4bbac8;
  margin-top: 2em;
  position: relative;
}
.page-download .boxLineList h3::after {
  background: #4bbac8;
  bottom: 0;
  content: "";
  height: 4px;
  left: 0;
  position: absolute;
  width: 5%;
}
.page-download .boxLineList ul {
  list-style-image: url(./img/download/icn-download.png);
  padding-left: 2em;
  margin-top: 2em;
}
.page-download .boxLineList ul li {
  padding-left: 0.5em;
}
.page-download .boxLineList ul li + li {
  margin-top: 1.5em;
}

.relative {
  position: relative;
}

.required-banner .banner-btn {
  align-items: center;
  background: #ff6565;
  border-radius: 30px;
  border: 1px solid #ff6565;
  color: #fff;
  cursor: pointer;
  display: flex;
  font-weight: bold;
  padding: 20px 14px;
  position: absolute;
  right: 0%;
  top: 0%;
  transition: all 0.3s ease;
}
.required-banner .banner-btn span {
  margin-right: 0.3em;
}
.required-banner .banner-btn:hover {
  background: #fff;
  color: #ff6565;
  text-decoration: none;
}
.required-banner .banner-btn:hover span {
  color: #ff6565 !important;
}

.mamge-g-box {
  background-color: #c5d5ee;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-inline: auto;
  margin-top: 1em;
  max-width: 900px;
  padding: 1.5em;
}

.mame-g-container {
  margin-top: 2em;
}
.mame-g-container .col-xs-6 {
  margin-bottom: 2em;
}
@media screen and (max-width: 767px) {
  .mame-g-container .col-xs-6:nth-of-type(n+3) {
    margin-top: 2em;
  }
}
.mame-g-container .mame-g-item .title {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  font-weight: bold;
  text-align: center;
}
.mame-g-container .download-btn {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  margin-top: 1em;
  height: 120px;
}
@media screen and (max-width: 767px) {
  .mame-g-container .download-btn {
    height: 27vw;
  }
}
.mame-g-container .download-btn a {
  background: #ff6565;
  border-radius: 30px;
  border: 1px solid #ff6565;
  color: #fff;
  cursor: pointer;
  font-weight: bold;
  padding: 10px 14px;
  text-align: center;
  transition: all 0.3s ease;
  width: 100%;
}
.mame-g-container .download-btn a:hover {
  background: #fff;
  color: #ff6565;
  text-decoration: none;
}
.mame-g-container .download-btn a.nomarl {
  margin-top: 1em;
  background: #0085b2;
  border: 1px solid #0085b2;
}
.mame-g-container .download-btn a.nomarl:hover {
  background: #fff;
  color: #0085b2;
}

.sponsors-table table {
  table-layout: fixed;
  text-align: left;
  width: 80%;
}
@media screen and (max-width: 767px) {
  .sponsors-table table {
    width: 100%;
  }
}
.sponsors-table table tr th, .sponsors-table table tr td {
  padding: 1em;
}
.sponsors-table table tr th {
  background: #dbebbe;
  width: 20%;
  border-bottom: 1px solid #dbebbe;
}
.sponsors-table table tr td {
  font-size: 12px;
  font-size: calc(0.75 * 1rem);
  width: auto;
  text-align: left;
  border-bottom: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
.sponsors-table table tr:first-child td {
  border-top: 1px solid #ccc;
}

#checkopen {
  display: none;
}

.mw_wp_form_confirm #checkopen {
  display: table-row;
}
.mw_wp_form_confirm .form_table {
  margin-top: 4em;
}

.mw_wp_form_preview #checkopen {
  display: table-row;
}
.mw_wp_form_preview .form_table {
  margin-top: 4em;
}

.contents-navi {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .contents-navi {
    flex-direction: column;
  }
}
.contents-navi .navi-btn {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
  align-items: center;
  background: #ff6565;
  border-radius: 30px;
  border: 1px solid #ff6565;
  color: #fff;
  cursor: pointer;
  display: flex;
  font-weight: bold;
  justify-content: center;
  padding: 20px 0;
  transition: all 0.3s ease;
  width: 32%;
  height: 60px;
}
@media screen and (max-width: 767px) {
  .contents-navi .navi-btn {
    width: 100%;
  }
  .contents-navi .navi-btn + .navi-btn {
    margin-top: 1em;
  }
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .contents-navi .navi-btn {
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
  }
}
.contents-navi .navi-btn:hover {
  background: #fff;
  text-decoration: none;
}
.contents-navi .navi-btn.navi-btn1 {
  background: #ff6565;
  border: 1px solid #ff6565;
  line-height: 1.3;
  padding: 12px 0;
  text-align: left;
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .contents-navi .navi-btn.navi-btn1 {
    padding: 14.4px 0;
  }
}
.contents-navi .navi-btn.navi-btn1:hover {
  background: #fff;
  color: #ff6565;
  text-decoration: none;
}
.contents-navi .navi-btn.navi-btn1:hover span {
  color: #ff6565 !important;
}
.contents-navi .navi-btn.navi-btn2 {
  background: #53b78f;
  border: 1px solid #53b78f;
  padding: 1.3px 0;
  line-height: 1.2;
  text-align: left;
}
.contents-navi .navi-btn.navi-btn2:hover {
  background: #fff;
  color: #53b78f;
  text-decoration: none;
}
.contents-navi .navi-btn.navi-btn2:hover span {
  color: #53b78f !important;
}
.contents-navi .navi-btn.navi-btn3 {
  background: #ffc95c;
  border: 1px solid #ffc95c;
  padding: 14px 0;
}
.contents-navi .navi-btn.navi-btn3:hover {
  background: #fff;
  color: #ffc95c;
  text-decoration: none;
}
.contents-navi .navi-btn.navi-btn3:hover span {
  color: #ffc95c !important;
}

.new_magazine-banner {
  margin-left: auto;
  margin-bottom: 20px;
  text-align: right;
  transition: all 0.3s;
  width: 55%;
}
@media screen and (max-width: 767px) {
  .new_magazine-banner {
    width: 100%;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  .new_magazine-banner {
    z-index: 10;
    top: initial;
  }
}
.new_magazine-banner a {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .new_magazine-banner a {
    width: 100%;
    padding: 0 10px;
  }
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .new_magazine-banner a {
    font-size: 20px;
    font-size: calc(1.25 * 1rem);
  }
}
.new_magazine-banner a:hover img {
  opacity: 0.8;
}
.new_magazine-banner a span {
  filter: drop-shadow(0px 0px 8px rgba(0, 0, 0, 0.6));
}
.new_magazine-banner a img {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .pojiko-banner {
    padding-top: 50px;
  }
}
.pojiko-banner .openModal {
  align-items: center;
  background: #ff6565;
  border-radius: 30px;
  border: 1px solid #ff6565;
  color: #fff;
  cursor: pointer;
  display: flex;
  font-weight: bold;
  padding: 20px 14px;
  position: absolute;
  right: 0;
  top: 29%;
  transition: all 0.3s ease;
  z-index: 1;
}
.pojiko-banner .openModal:hover {
  background: #fff;
  color: #ff6565;
}
.pojiko-banner .openModal:hover span {
  color: #ff6565 !important;
}
@media screen and (max-width: 767px) {
  .pojiko-banner .openModal {
    bottom: 0%;
    left: 0;
    right: 0;
    top: initial;
    z-index: 10;
    width: 52%;
  }
}
.pojiko-banner .openModal span {
  margin-right: 0.15em;
}

.page-nursing-training {
  margin-inline: auto;
}
.page-nursing-training .blk1 h2 {
  font-size: 36px;
  font-size: calc(2.25 * 1rem);
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk1 h2 {
    font-size: 20px;
    font-size: calc(1.25 * 1rem);
    word-break: auto-phrase;
  }
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .page-nursing-training .blk1 h2 {
    font-size: 20px;
    font-size: calc(1.25 * 1rem);
    word-break: auto-phrase;
  }
}
.page-nursing-training .blk1 p {
  margin-top: 1em;
}
.page-nursing-training .blk1 figure {
  text-align: center;
  margin-top: 2em;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk1 figure img {
    width: 50%;
  }
}
.page-nursing-training .blk2 {
  margin-top: 4em;
}
.page-nursing-training .blk2-title {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  background: #0f2844;
  color: #fff;
  font-weight: bold;
  padding: 10px 25px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk2-title {
    word-break: auto-phrase;
  }
}
.page-nursing-training .blk2-table {
  background: #ccc;
  border-collapse: separate;
  border-spacing: 1px;
  margin: 40px 0;
  table-layout: fixed;
  width: 100%;
}
.page-nursing-training .blk2-table tr {
  border-top: 1px solid #ccc;
}
.page-nursing-training .blk2-table th {
  background: #666;
  color: #fff;
  padding: 8px 15px;
  text-align: center;
}
.page-nursing-training .blk2-table th.firstCol {
  width: 10em;
}
.page-nursing-training .blk2-table td {
  background: #fff;
  padding: 10px 13px 15px;
  text-align: center;
  vertical-align: middle;
}
.page-nursing-training .blk2-table td.secCol {
  text-align: left;
}
.page-nursing-training .blk2-table td dl {
  display: flex;
}
.page-nursing-training .blk2 .boxAtt {
  display: flex;
  justify-content: space-between;
}
.page-nursing-training .blk2 .boxAtt dl {
  width: 49%;
  display: flex;
  margin-bottom: 20px;
  font-size: 0.95em;
  text-align: left;
  line-height: 1.9;
}
.page-nursing-training .blk2 .boxAtt dl.dlKatakana {
  width: 100%;
  display: flex;
  margin-bottom: 0;
}
.page-nursing-training .blk2 .boxAtt dt {
  width: 2em;
}
.page-nursing-training .blk2 .boxAtt ul {
  margin-left: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.page-nursing-training .blk2 .boxAtt ul li.listIndent {
  line-height: 1.83;
  margin-left: 0.1em;
  text-indent: -0.1em;
}
.page-nursing-training .blk2 .boxAtt ol {
  margin-left: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.page-nursing-training .blk3 .boxDetail {
  max-width: 980px;
  margin: 36px auto 10px auto;
}
.page-nursing-training .blk3 .tabBox {
  width: 100%;
}
.page-nursing-training .blk3 .tabArea {
  height: 78px;
  display: flex;
  justify-content: space-between;
  overflow: hidden;
}
.page-nursing-training .blk3 .tabArea h3 {
  width: 48.97%;
  font-size: 1.17em;
  font-weight: bold;
  background: #fff;
  text-align: center;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-nursing-training .blk3 .tabArea h3.tabBlue {
  color: #036EB8;
  border: 1px solid #036EB8;
}
.page-nursing-training .blk3 .tabArea h3.tabBlue.isActive {
  color: #fff;
  background: #036EB8;
}
.page-nursing-training .blk3 .tabArea h3.tabBlue.isActive::after {
  content: "";
  border-bottom: 1px solid #036EB8;
  width: 100%;
  position: absolute;
  bottom: -1px;
}
.page-nursing-training .blk3 .tabArea h3.tabGreen {
  color: #298666;
  border: 1px solid #298666;
}
.page-nursing-training .blk3 .tabArea h3.tabGreen.isActive {
  color: #fff;
  background: #298666;
}
.page-nursing-training .blk3 .tabContArea {
  padding: 32px 36px 0 31px;
  display: none;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk3 .tabContArea {
    padding: 32px 10px 0 10px;
  }
}
.page-nursing-training .blk3 .tabContArea.contBlue.isActive {
  display: block;
  border: 2px solid #036EB8;
}
.page-nursing-training .blk3 .tabContArea.contGreen.isActive {
  display: block;
  border: 2px solid #298666;
}
.page-nursing-training .blk3 .tabContArea.contGreen.isActive .row {
  justify-content: center;
}
.page-nursing-training .blk3 .topCont {
  display: flex;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk3 .topCont {
    align-items: center;
    flex-direction: column;
  }
}
.page-nursing-training .blk3 .topContImg {
  flex: 0 0 188px;
  max-width: 100%;
  margin-top: 5px;
  margin-left: 9px;
}
.page-nursing-training .blk3 .topContImg img {
  width: 100%;
  object-fit: cover;
}
.page-nursing-training .blk3 .topContText {
  margin-left: 28px;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk3 .topContText {
    margin-left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.page-nursing-training .blk3 .topContText .roundLabel {
  display: inline-block;
  margin-top: 17px;
  font-size: 0.94em;
  padding-top: 11px;
  padding-right: 29px;
  padding-bottom: 14px;
  padding-left: 29px;
  border: 1px solid #036EB8;
  border-radius: 50px;
  text-align: center;
}
.page-nursing-training .blk3 .topContText .roundLabel .txtFlex {
  display: initial;
  font-size: 12px;
  font-size: calc(0.75 * 1rem);
}
.page-nursing-training .blk3 .topContText .roundLabel.labelGreen {
  border: 1px solid #298666;
}
.page-nursing-training .blk3 .topContText .brackets {
  margin-top: 14px;
  margin-left: -9px;
  font-size: 1.02em;
}
.page-nursing-training .blk3 .topContText .txtMid {
  margin-top: 3px;
  font-weight: bold;
  font-size: 1.33em;
}
.page-nursing-training .blk3 .contBlue .topContText .txtMain {
  margin-top: -5px;
}
.page-nursing-training .blk3 .topContText .txtLarge {
  font-size: 2.5em;
  font-weight: bold;
  color: #036EB8;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk3 .topContText .txtLarge {
    font-size: 1.5em;
  }
}
.page-nursing-training .blk3 .topContText .txtSmall {
  font-size: 0.89em;
}
.page-nursing-training .blk3 .topContText .mt8 {
  margin-top: 8px;
}
.page-nursing-training .blk3 .topContText .txtFlex {
  margin-top: -11px;
  margin-left: -2px;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk3 .topContText .txtFlex {
    flex-direction: column;
  }
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .page-nursing-training .blk3 .topContText .txtFlex {
    align-items: flex-start;
    flex-direction: column;
  }
}
.page-nursing-training .blk3 .contGreen .topContText .roundLabel {
  margin-top: 21px;
  font-size: 0.99em;
  padding-left: 27px;
  padding-right: 27px;
  padding-bottom: 11px;
}
.page-nursing-training .blk3 .tabContArea .tabTable {
  margin: 0 auto;
  width: 900px;
  max-width: 100%;
  display: flex;
  margin-top: 21px;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk3 .tabContArea .tabTable {
    flex-direction: column;
  }
}
.page-nursing-training .blk3 .tabContArea .tabTable .tableTitle {
  display: block;
  width: 23%;
  height: auto;
  font-size: 1.2em;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk3 .tabContArea .tabTable .tableTitle {
    flex-direction: column;
    width: 100%;
    padding: 20px 0;
  }
}
.page-nursing-training .blk3 .tabContArea .tabTable table {
  margin: 0;
  width: 100%;
  border-collapse: collapse;
  vertical-align: middle;
  border-left: 8px solid #fff;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk3 .tabContArea .tabTable table {
    border-left: none;
  }
}
.page-nursing-training .blk3 .tabContArea .tabTable table th {
  width: 27%;
  padding: 8px 14px;
  text-align: center;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk3 .tabContArea .tabTable table th {
    width: 100%;
    display: block;
  }
}
.page-nursing-training .blk3 .tabContArea .tabTable table tr td {
  border-left: 8px solid #fff;
  padding: 17px 30px;
  background: #EEEEEE;
  line-height: 2.06;
  font-size: 1.05em;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .blk3 .tabContArea .tabTable table tr td {
    border-left: none;
    display: block;
    padding: 17px 10px;
    width: 100%;
  }
}
.page-nursing-training .blk3 .tabContArea .tabTable table tr td.tdShort {
  padding: 17px 30px 1px 30px;
}
.page-nursing-training .blk3 .tabContArea .tabTable table tr td.tdLong {
  padding: 24px 30px 25px 30px;
}
.page-nursing-training .blk3 .tabContArea .tabTable table tr td ul {
  list-style: none;
  padding: 9px 0 5px;
}
.page-nursing-training .blk3 .tabContArea .tabTable table tr td ul li {
  line-height: 1;
}
.page-nursing-training .blk3 .tabContArea .tabTable table tr td ul li + li {
  padding-top: 15px;
}
.page-nursing-training .blk3 .tabContArea .tabTable table tr.borderBottom {
  border-bottom: 8px solid #fff;
}
.page-nursing-training .blk3 .tabContArea .tabTable table tr:last-child {
  border-top: 8px solid #fff;
}
.page-nursing-training .blk3 .tabContArea .tabTable table tr.topBorder {
  border-top: 8px solid #fff;
}
.page-nursing-training .blk3 .tabContArea .tabTable table dl {
  display: flex;
  line-height: 2;
}
.page-nursing-training .blk3 .tabContArea .tabTable table dl dt {
  width: 40px;
  white-space: nowrap;
}
.page-nursing-training .blk3 .tabContArea .tabTable table dl dd {
  margin-left: 5px;
  font-size: 1em;
}
.page-nursing-training .blk3 .tabContArea .txtRed {
  color: #BC2F38;
  font-weight: Bold;
}
.page-nursing-training .blk3 .tabContArea table .txtMid {
  font-size: 1.25em;
  line-height: 1.6;
  font-weight: bold;
}
.page-nursing-training .blk3 .tabContArea table .txtMid td.tdPrice {
  padding: 10px 30px 10px 30px;
  letter-spacing: 0.0025em;
}
.page-nursing-training .blk3 .tabContArea table .txtMid td.tdPrice.tdLong {
  padding: 23px 30px 18px 30px;
  letter-spacing: 0.0025em;
}
.page-nursing-training .blk3 .contGreen .tabTable table dl dt {
  width: 3%;
}
.page-nursing-training .blk3 .contGreen .tabTable table tr.isSP {
  display: none;
}
.page-nursing-training .blk3 .bgGreen1 {
  background: #297686;
  color: #fff;
}
.page-nursing-training .blk3 .bgYellow {
  background: #DDA612;
  color: #fff;
}
.page-nursing-training .blk3 .bgGreen2 {
  background: #007868;
  color: #fff;
}
.page-nursing-training .blk3 .bgGray {
  background: #ccc;
}
.page-nursing-training .blk3 .bgEee {
  background: #eee;
}
.page-nursing-training .blk3 .plusPadding {
  padding-bottom: 6px;
}
.page-nursing-training .blk3 .txtPriceLarge {
  margin-left: 1px;
  font-size: 1.54em;
}
.page-nursing-training .blk3 .smallTxt {
  font-size: 1.05em;
  font-weight: 500;
}
.page-nursing-training .blk3 .btn.large {
  margin: 36px 0 35px;
}
.page-nursing-training .blk3 .btn.large > a {
  font-weight: bold;
  padding: 26px 20px 27px 28px;
}
.page-nursing-training .blk3 .footNote {
  margin-top: 5px;
  text-align: right;
}
.page-nursing-training .application-button {
  margin-top: 1em;
}
.page-nursing-training .application-button p {
  font-weight: bold;
  margin: 0;
  padding: 0;
  position: relative;
}
.page-nursing-training .application-button p.btn1 {
  color: #e4027f;
}
.page-nursing-training .application-button p.btn1::after {
  background: #e4027f;
}
.page-nursing-training .application-button p.btn2 {
  color: #3a62ad;
}
.page-nursing-training .application-button p.btn2::after {
  background: #3a62ad;
}
.page-nursing-training .application-button p.btn3 {
  color: #008882;
}
.page-nursing-training .application-button p.btn3::after {
  background: #008882;
}
.page-nursing-training .application-button p::after {
  bottom: -4px;
  content: "";
  height: 3px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 80px;
}
.page-nursing-training .application-button img {
  height: auto;
  margin-top: 0.3em;
  transition: opacity 0.3s;
  width: 100%;
}
.page-nursing-training .application-button img:hover {
  opacity: 0.7;
}
.page-nursing-training .notice {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
  color: #ff4d4f;
  margin-top: 0;
  padding: 0;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .page-nursing-training .notice {
    font-size: 12px;
    font-size: calc(0.75 * 1rem);
  }
}
.page-nursing-training .point-box {
  background: #fffde7;
}
.page-nursing-training .point-box ul {
  padding: 0;
  margin: 0;
  list-style: none;
}
.page-nursing-training .point-box ul li {
  font-size: 17px;
  font-size: calc(1.0625 * 1rem);
  font-weight: 500;
}
.page-nursing-training .point-box ul li + li {
  margin-top: 0.3em;
}

.newnursingstaff-training-pocketmannual-videos {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 10px;
}
@media screen and (max-width: 767px) {
  .newnursingstaff-training-pocketmannual-videos {
    word-break: auto-phrase;
    text-align: center;
  }
}
.newnursingstaff-training-pocketmannual-videos .section-title {
  position: relative;
}
.newnursingstaff-training-pocketmannual-videos .section-title::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  height: 2px;
  background: #ff6565;
}
.newnursingstaff-training-pocketmannual-videos .lecture-profile {
  margin-top: 1em;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.newnursingstaff-training-pocketmannual-videos .video-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 3em;
  gap: 20px;
}
.newnursingstaff-training-pocketmannual-videos .video-box .video-box-inner {
  width: calc(33.3333333333% - 20px);
  margin: 0;
}
@media screen and (max-width: 991px) {
  .newnursingstaff-training-pocketmannual-videos .video-box .video-box-inner {
    width: calc(50% - 10px);
    margin: 0 0 20px;
  }
}
.newnursingstaff-training-pocketmannual-videos .video-box .video-text h3 {
  font-size: 16px;
  font-size: calc(1 * 1rem);
}
@media screen and (max-width: 767px) {
  .newnursingstaff-training-pocketmannual-videos .video-box .video-text h3 {
    font-size: 10px;
    font-size: calc(0.625 * 1rem);
    text-align: left;
  }
}

@media screen and (max-width: 767px) {
  .box_books {
    padding: 0 10px;
  }
}

.books_area {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-top: 1em;
}
@media screen and (max-width: 767px) {
  .books_area {
    flex-wrap: wrap;
  }
}
.books_area .books_box {
  width: 22%;
}
@media screen and (max-width: 767px) {
  .books_area .books_box {
    width: calc(50% - 10px);
  }
}
.books_area .books_box.pocket-mannual {
  width: 30.4%;
}
@media screen and (max-width: 767px) {
  .books_area .books_box.pocket-mannual {
    width: calc(50% - 10px);
  }
}

.tabArea {
  display: flex;
  overflow: hidden;
}

.tabArea h3 {
  flex: 1;
  text-align: center;
  padding: 10px;
  cursor: pointer;
  border: 1px solid;
  border-bottom: none;
}

.tabArea h3.tabBlue {
  background-color: #f0fbfd;
  border-color: #00b7d7;
  color: #231815;
  position: relative;
}
.tabArea h3.tabBlue.isActive::after {
  content: "";
  border-bottom: 1px solid #00b7d7;
  width: 102%;
  position: absolute;
  bottom: 0px;
  left: 100%;
  z-index: 1;
}

.tabArea h3.tabGreen {
  background-color: #f8fcf4;
  border-color: #3dd360;
  color: #231815;
  margin-left: 10px;
  position: relative;
}
.tabArea h3.tabGreen.isActive::after {
  content: "";
  border-bottom: 1px solid #3dd360;
  width: 102%;
  position: absolute;
  bottom: 0px;
  left: -102%;
  z-index: 1;
}

.tabArea .tabBlue.isActive {
  background-color: #00b7d7;
}
.tabArea .tabGreen.isActive {
  background-color: #3dd360;
}

.tabArea h3.isActive {
  font-weight: bold;
}

.tabContArea {
  display: none;
}

.tabContArea.isActive {
  display: block;
  border: 1px solid #00b7d7;
  border-top: none;
  padding: 10px;
}

.tabContArea.contGreen.isActive {
  border: 1px solid #3dd360;
  border-top: none;
}
.tabContArea.contGreen.isActive .row {
  justify-content: center;
}

.point-box2 {
  background: #e8f8fd;
  display: flex;
  margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .point-box2 {
    flex-direction: column;
    align-items: center;
  }
}
.point-box2-left {
  width: 60%;
  padding-left: 10px;
  padding-top: 10px;
}
.point-box2-left img {
  margin-bottom: -7px;
}
.point-box2-right {
  padding: 10px;
}
@media screen and (max-width: 767px) {
  .point-box2-right ol {
    padding-left: 20px;
  }
}
.point-box2-right .blk {
  margin-left: -14%;
}
@media screen and (max-width: 767px) {
  .point-box2-right .blk {
    margin-left: 0;
  }
}
.point-box2-right .double-line {
  font-size: 32px;
  font-size: calc(2 * 1rem);
  color: #e46f27;
  position: relative;
  display: inline-block;
  padding: 0 65px;
  text-align: center;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  .point-box2-right .double-line {
    font-size: 16px;
    font-size: calc(1 * 1rem);
    margin-bottom: 1em;
  }
}
.point-box2-right .double-line::before, .point-box2-right .double-line::after {
  content: "";
  position: absolute;
  top: calc(50% - 3px);
  width: 50px;
  height: 6px;
  border-top: solid 2px #e46f27;
  border-bottom: solid 2px #e46f27;
}
.point-box2-right .double-line::before {
  left: 0;
}
.point-box2-right .double-line::after {
  right: 0;
}

.some-buttons {
  margin-top: 10px;
  margin-bottom: 20px;
}
.some-buttons .col-xs {
  padding-right: 3%;
}
@media screen and (max-width: 767px) {
  .some-buttons .col-xs {
    padding-right: 0;
  }
}
.some-buttons .col-xs img {
  height: 55px;
}
@media screen and (max-width: 767px) {
  .some-buttons .col-xs img {
    height: auto;
    width: 60%;
    margin-inline: auto;
  }
}
.some-buttons .col-xs a img {
  transition: all 0.3s ease;
}
.some-buttons .col-xs a img:hover {
  opacity: 0.6;
}

.tab-blk {
  margin-bottom: 3em;
}
.tab-blk-title {
  background: url(./img/nursing-training/2407/bg-title.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  color: #3a62ad;
  font-size: 1.5em;
  font-weight: bold;
  padding-left: 1em;
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  .tab-blk-title {
    background-position: left;
    background-size: cover;
  }
}

.nursing-table {
  width: 96%;
  border-collapse: collapse;
  border: 4px solid #3a62ad;
  margin-inline: auto;
}
.nursing-table th, .nursing-table td {
  border: 1px solid #3a62ad;
  padding: 10px;
  text-align: left;
}
.nursing-table th {
  background-color: #f0f0f0;
  font-weight: bold;
  text-align: center;
}
.nursing-table td:has(.content-list) {
  padding: 0;
}
.nursing-table .main-header {
  background-color: #dbddef;
  color: #231815;
  font-size: 1.2em;
  width: 20%;
}
@media screen and (max-width: 767px) {
  .nursing-table .main-header {
    width: auto;
  }
}
.nursing-table .sub-header {
  background-color: #fff;
  width: 10%;
}
@media screen and (max-width: 767px) {
  .nursing-table .sub-header {
    width: auto;
  }
}
.nursing-table .content-list {
  padding-left: 0;
  list-style: none;
}
.nursing-table .content-list li {
  margin-bottom: 5px;
  border-bottom: 1px dotted #3a62ad;
  padding-left: 10px;
  padding-top: 10px;
  padding-bottom: 10px;
}
.nursing-table .content-list li:last-of-type {
  border-bottom: none;
}

.workflow-blk {
  margin-bottom: 3em;
}
.workflow-blk-title {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  color: #3a62ad;
  border-bottom: 2px solid #3a62ad;
  margin-bottom: 1em;
  padding-left: 0.5em;
}
.workflow-blk-img {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .workflow-blk-img {
    width: 100%;
  }
}
.workflow-blk-txt {
  margin-bottom: 1em;
}
.workflow-blk-txt h6 {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  font-weight: bold;
  margin: 0;
}
.workflow-blk-img2 {
  align-items: flex-end;
  display: flex;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .workflow-blk-img2 {
    flex-direction: column;
    align-items: flex-start;
  }
}
.workflow-blk-img2 img {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .workflow-blk-img2 img {
    width: 100%;
  }
}
.workflow-blk-img2 p {
  flex: 1;
}
.workflow-blk-img3 {
  display: flex;
  gap: 20px;
  padding: 10px;
}
@media screen and (max-width: 767px) {
  .workflow-blk-img3 {
    gap: 10px;
    padding: 0;
    padding-right: 10px;
    align-items: flex-start;
  }
}
.workflow-blk-img3 img {
  width: 30%;
}
@media screen and (max-width: 767px) {
  .workflow-blk-img3 img {
    width: 50%;
  }
}
.workflow-blk-img3 p {
  flex: 1;
}

.page-top {
  text-align: right;
}
.page-top a {
  font-size: 10px;
  font-size: calc(0.625 * 1rem);
  color: #939191;
  text-decoration: underline;
  transition: all 0.3s ease;
}
.page-top a:hover {
  text-decoration: none;
}
.page-required_training_withpojiko .page-top {
  margin: 40px 0;
}
.page-required_training_withpojiko .page-top a {
  color: #1F1715;
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
}

.box_allinone-text {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .box_allinone-text {
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
    padding: 0 10px;
  }
}
.box_allinone_row {
  display: flex;
}
.box_allinone .accordion-section {
  width: 100%;
}
.box_allinone .accordion-section .accordion_area {
  max-width: 1200px;
  margin: 0 auto;
  height: 936px;
  overflow: hidden;
  display: flex;
}
@media screen and (max-width: 767px) {
  .box_allinone .accordion-section .accordion_area {
    height: auto;
  }
}
.box_allinone .accordion-section .accordion_one {
  display: flex;
  flex-direction: row;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .box_allinone .accordion-section .accordion_one {
    flex-direction: column;
    align-items: center;
    height: auto;
    margin-bottom: 0;
  }
}
.box_allinone .accordion-section .accordion_one .accordion_header {
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  height: 100%;
  float: left;
  background-color: #59B224;
  position: relative;
  z-index: 1;
  cursor: pointer;
  transition: all 0.1s ease;
}
.box_allinone .accordion-section .accordion_one .accordion_header:hover {
  opacity: 0.8;
}
.box_allinone .accordion-section .accordion_one .accordion_header .header_inner {
  padding: 15px;
}
.box_allinone .accordion-section .accordion_one .accordion_header .i_box {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  right: 5%;
  width: 40px;
  height: 40px;
  border: 1px solid #fff;
  margin-top: -20px;
  box-sizing: border-box;
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.1s;
}
.box_allinone .accordion-section .accordion_one .accordion_header .i_box .one_i {
  display: block;
  width: 18px;
  height: 18px;
  transform: rotate(45deg);
  transform-origin: center center;
  transition-duration: 0.1s;
  position: relative;
}
.box_allinone .accordion-section .accordion_one .accordion_header .i_box .one_i:before, .box_allinone .accordion-section .accordion_one .accordion_header .i_box .one_i:after {
  display: flex;
  content: "";
  background-color: #fff;
  border-radius: 10px;
  width: 18px;
  height: 4px;
  position: absolute;
  top: 7px;
  left: 0;
  transform: rotate(0deg);
  transform-origin: center center;
}
.box_allinone .accordion-section .accordion_one .accordion_header .i_box .one_i:before {
  width: 4px;
  height: 18px;
  top: 0;
  left: 7px;
}
.box_allinone .accordion-section .accordion_one .accordion_header.open .i_box {
  transform: rotate(-360deg);
}
.box_allinone .accordion-section .accordion_one .accordion_header.open .i_box .one_i:before {
  content: none;
}
.box_allinone .accordion-section .accordion_one .accordion_header.open .i_box .one_i:after {
  transform: rotate(-45deg);
}
.box_allinone .accordion-section .accordion_one:nth-of-type(2) .accordion_header {
  background-color: #009fd6;
}
.box_allinone .accordion-section .accordion_one:nth-of-type(3) .accordion_header {
  background-color: #dd007f;
}
.box_allinone .accordion-section .accordion_one .accordion_inner {
  float: left;
  width: 90%;
  height: 100%;
  overflow: hidden;
  display: none;
  padding: 10px 20px;
  box-sizing: border-box;
  transition: all 0.1s ease;
  transition: max-height 0.3s ease-out;
}
.box_allinone .accordion-section .accordion_one .accordion_inner p.txt_a_ac {
  margin: 0;
}
.box_allinone .accordion-section .accordion_one .accordion_inner .box_one {
  opacity: 1;
  transition: opacity 0.3s ease-out;
}
.box_allinone .accordion-section .accordion_one.active .accordion_inner {
  display: block;
}
.box_allinone .accordion-section .accordion_one:not(.open) + .accordion_inner .box_one {
  opacity: 0;
}
@media screen and (max-width: 1024px) {
  .box_allinone .accordion-section .accordion_one .accordion_header .i_box {
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
}
@media screen and (max-width: 767px) {
  .box_allinone .accordion-section .accordion_one .accordion_header {
    justify-content: flex-start;
    height: auto;
  }
}
@media (max-width: 768px) {
  .box_allinone .accordion_area {
    flex-direction: column;
  }
  .box_allinone .accordion_one {
    width: 100%;
    margin-bottom: 20px;
  }
  .box_allinone .accordion_header {
    cursor: pointer;
  }
  .box_allinone .accordion_inner {
    display: none;
  }
  .box_allinone .accordion_one.active .accordion_inner {
    display: block;
  }
  .box_allinone .txt_a_ac img {
    width: 100%;
    height: auto;
  }
}
@media screen and (min-width: 769px) {
  .box_allinone .sp-only {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .box_allinone .pc-only {
    display: none;
  }
}

.allinone-switch span.rotated {
  transform: rotate(180deg);
}

.accordion-content {
  display: none;
}

.accordion-content.active {
  display: block;
}

.ladder-section {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 0;
}
@media screen and (max-width: 767px) {
  .ladder-section {
    flex-direction: column;
  }
}
.ladder-section_item {
  width: 33.33%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .ladder-section_item {
    width: 100%;
  }
}
.ladder-section_item:nth-of-type(1) {
  margin-top: 48px;
}
@media screen and (max-width: 767px) {
  .ladder-section_item:nth-of-type(1) {
    margin-top: 0;
  }
}
.ladder-section_item:nth-of-type(2) {
  margin-top: 25px;
}
@media screen and (max-width: 767px) {
  .ladder-section_item:nth-of-type(3) {
    margin-top: 25px;
  }
}
.ladder-section_item figure {
  width: 100%;
  height: auto;
  margin: 0;
}
.ladder-section .allinone-switch {
  align-items: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  cursor: pointer;
}
.ladder-section .allinone-switch span {
  font-size: 2em;
  margin-top: -0.4em;
}
@media screen and (max-width: 767px) {
  .ladder-section .allinone-switch span {
    margin-top: -0.4em;
  }
}
.ladder-section .accordion-content {
  display: none;
}
.ladder-section .detail-btn {
  display: flex;
  justify-content: center;
}
.ladder-section .detail-btn a {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  background: #ffb965;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  padding: 6px 36px;
  width: 50%;
  border-radius: 20px;
  margin-top: 10px;
  transition: all 0.3s;
}
@media screen and (min-width: 767px) and (max-width: 991px) {
  .ladder-section .detail-btn a {
    width: 80%;
  }
}
.ladder-section .detail-btn a:hover {
  background: #ffd098;
}

.additional-header {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .additional-header {
    margin-inline: 30px;
  }
}

.ribbon9 {
  display: inline-block;
  position: relative;
  height: 65px;
  text-align: center;
  box-sizing: border-box;
}
.ribbon9:before {
  content: "";
  position: absolute;
  width: 10px;
  bottom: -34px;
  left: -54px;
  z-index: -2;
  border: 35px solid #d24f4f;
  border-left-color: transparent;
}
@media screen and (max-width: 767px) {
  .ribbon9:before {
    bottom: 10px;
    left: -24px;
    border: 20px solid #d24f4f;
    border-left-color: transparent;
  }
}
.ribbon9:after {
  content: "";
  position: absolute;
  width: 10px;
  bottom: -30px;
  right: -55px;
  z-index: -2;
  border: 35px solid #d24f4f;
  border-right-color: transparent;
}
@media screen and (max-width: 767px) {
  .ribbon9:after {
    bottom: 10px;
    right: -25px;
    border: 20px solid #d24f4f;
    border-right-color: transparent;
  }
}
.ribbon9 h3 {
  display: inline-block;
  position: relative;
  margin: 0;
  padding: 0 50px;
  line-height: 85px;
  font-size: 48px;
  color: #FFF;
  background: #ff6565;
}
@media screen and (max-width: 767px) {
  .ribbon9 h3 {
    font-size: clamp(18px, 3vw, 28px);
    line-height: 2.5;
  }
}
.ribbon9 h3:before {
  position: absolute;
  content: "";
  top: 100%;
  left: 0;
  border: none;
  border-bottom: solid 10px transparent;
  border-right: solid 15px #943434;
}
.ribbon9 h3:after {
  position: absolute;
  content: "";
  top: 100%;
  right: 0;
  border: none;
  border-bottom: solid 10px transparent;
  border-left: solid 15px #943434;
}

.additional-info {
  align-items: center;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  margin: 40px auto 20px;
  padding: 10px;
  width: 90%;
}
@media screen and (max-width: 767px) {
  .additional-info {
    padding-left: 0;
    width: 90%;
  }
}
.additional-tab {
  display: flex;
  gap: 10px;
  justify-content: center;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .additional-tab {
    margin-inline: 10px;
  }
}
.additional-tab .tab-item {
  padding: 10px 10px;
  width: 50%;
  opacity: 0.3;
  cursor: pointer;
}
.additional-tab .tab-item h4 {
  text-align: center;
}
.additional-tab .tab-item-active {
  opacity: 1;
}
.additional-tab .tab-item-first {
  background: #fff1cd;
  border: 4px solid #ea5520;
}
.additional-tab .tab-item-first h4 {
  color: #ea5520;
}
.additional-tab .tab-item-second {
  background: #fbe6ef;
  border: 4px solid #e62f87;
}
.additional-tab .tab-item-second h4 {
  color: #e62f87;
}

.tab-content {
  display: none;
}
.tab-content figure:first-of-type {
  margin-top: 1.9em;
}

#pediatric {
  background: url(./img/ladder/pediatric_nursing_clinical_ladder-img1.png) no-repeat top center;
  background-size: contain;
  width: 100%;
  height: auto;
  position: relative;
}
#pediatric::before {
  content: "";
  display: block;
  padding-top: 74.43%;
}
@media screen and (max-width: 767px) {
  #pediatric::before {
    padding-top: 67%;
  }
}

.tab-content.active {
  display: block;
}

@media screen and (max-width: 767px) {
  .additional-content {
    margin-inline: 10px;
  }
}
.additional-content-text {
  padding: 20px 0px;
}
.additional-content-text2 {
  background: #fdeff5;
  padding-bottom: 40px;
}
.additional-content-text-inner {
  background: #fff;
  border-radius: 20px;
  margin: auto;
  padding: 20px 40px;
  width: 80%;
}
@media screen and (max-width: 767px) {
  .additional-content-text-inner {
    width: 90%;
    padding: 20px;
  }
}
.additional-content-text-inner p {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
}
@media screen and (max-width: 767px) {
  .additional-content-text-inner p {
    font-size: clamp(14px, 3vw, 20px);
  }
}
.additional-content-text-inner .pink {
  color: #e4007f;
}
.additional-content-text-inner .blue {
  color: #00a0e9;
}
.additional-content-text-inner .orange {
  color: #f29100;
}
.additional-content-text-inner2 + .additional-content-text-inner2 {
  margin-top: 40px;
}
.additional-content-text-inner2 .additional-content-option {
  border-top: 1px dashed #e4007f;
}
.additional-content-text-inner2 .additional-content-option h5 {
  color: #e4007f;
}
.additional-content-text-inner2 .additional-content-option p {
  text-align: right;
}
.additional-content .additional-content-text-inner2 .price {
  border: 1px solid #e4007f;
}
.additional-content .additional-content-text-inner2 .price th {
  background: #e4007f;
}
.additional-content .additional-content-text-inner2 .price td {
  border: 1px solid #e4007f;
}
.additional-content .additional-content-text-inner2 .price td.price-title {
  background: #fadce9;
}
.additional-content .additional-content-text-inner2 h6 {
  font-size: 30px;
  font-size: calc(1.875 * 1rem);
  color: #e4007f;
  font-weight: bold;
  margin: 0.5em 0;
}
@media screen and (max-width: 767px) {
  .additional-content .additional-content-text-inner2 h6 {
    font-size: clamp(16px, 3vw, 30px);
  }
}
.additional-content .additional-content-text-inner2 .chara {
  float: right;
  width: 21%;
}
.additional-content .additional-content-text-inner2 .signature {
  margin-top: 1em;
  text-align: right;
}
.additional-content .additional-content-text-inner2 .signature .title {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  font-weight: bold;
}
.additional-content .additional-content-text-inner2 .signature .name {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
}
@media screen and (max-width: 767px) {
  .additional-content .additional-content-text-inner2 .signature .name {
    font-size: clamp(12px, 3vw, 14px);
  }
}
.additional-content .additional-content-text-inner2 .signature .name .big {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  font-weight: bold;
}
.additional-content .additional-content-text-inner2 .signature .name .small {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
}
.additional-content-option {
  border-top: 1px dashed #ea5514;
  padding-top: 10px;
  margin-top: 10px;
}
.additional-content-option h5 {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  color: #ea5514;
}
@media screen and (max-width: 767px) {
  .additional-content-option h5 {
    font-size: clamp(14px, 3vw, 20px);
  }
}
.additional-content-option p {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
}
@media screen and (max-width: 767px) {
  .additional-content-option p {
    font-size: clamp(14px, 3vw, 18px);
  }
}
.additional-content .price {
  border-collapse: collapse;
  border: 1px solid #ea5514;
  table-layout: auto;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .additional-content .price {
    margin-top: 1em;
  }
}
.additional-content .price th {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  background: #f29542;
  color: #fff;
  padding: 8px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .additional-content .price th {
    font-size: clamp(16px, 3vw, 20px);
  }
}
.additional-content .price td {
  border: 1px solid #f29542;
}
@media screen and (max-width: 767px) {
  .additional-content .price td {
    display: block;
    width: 100%;
  }
}
.additional-content .price td.price-title {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  background: #f8ee9b;
  text-align: center;
  width: 20%;
}
@media screen and (max-width: 767px) {
  .additional-content .price td.price-title {
    width: 100%;
    padding: 10px;
  }
}
.additional-content .price td.price-title span {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  display: block;
  line-height: 1;
}
.additional-content .price td.price-price {
  text-align: center;
  padding: 10px 20px;
  width: 80%;
}
@media screen and (max-width: 767px) {
  .additional-content .price td.price-price {
    width: 100%;
  }
}
.additional-content .price td.price-price span {
  font-size: 40px;
  font-size: calc(2.5 * 1rem);
  font-weight: bold;
}
.additional-content .price td.price-price .option-info {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  text-align: right;
}
@media screen and (max-width: 767px) {
  .additional-content .price td.price-price .option-info {
    text-align: left;
  }
}
.additional-content-button {
  display: block;
  margin-top: 20px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .additional-content-button {
    margin-inline: 10px;
  }
}
.additional-content-button a {
  font-size: 40px;
  font-size: calc(2.5 * 1rem);
  background: #fffcdb;
  border-radius: 10px;
  font-weight: bold;
  padding: 10px 20px;
  text-align: center;
  transition: all 0.3s ease;
}
@media screen and (max-width: 767px) {
  .additional-content-button a {
    font-size: clamp(16px, 3vw, 40px);
  }
}
.additional-content-button a:hover {
  background: rgb(157.8, 144.65, 0);
}
.additional-content-button2 a {
  background: #e4007f;
  color: #fff;
}
.additional-content-button2 a:hover {
  background: rgb(255, 136.2, 202.3736842105);
}
.additional-content .form-buttons {
  margin-top: 60px;
  margin-bottom: 80px;
}

.lecturers-list {
  margin-top: 40px;
}
.lecturers-list h3 {
  font-size: 30px;
  font-size: calc(1.875 * 1rem);
  color: #ee7a1f;
  text-align: center;
}
.lecturers-list .tables {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: 1em;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .lecturers-list .tables {
    flex-direction: column;
  }
}
.lecturers-list .tables table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #f29542;
}
.lecturers-list .tables th {
  width: 22%;
  display: table-cell;
  background: #f8ee9b;
  border: 1px solid #f29542;
  color: #231815;
  padding: 10px;
  text-align: left;
}
.lecturers-list .tables td {
  border: 1px solid #f29542;
  padding: 10px;
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
}
.lecturers-list .tables .l-table {
  width: 49%;
}
@media screen and (max-width: 767px) {
  .lecturers-list .tables .l-table {
    width: 100%;
  }
}
.lecturers-list .tables .r-table {
  width: 49%;
}
@media screen and (max-width: 767px) {
  .lecturers-list .tables .r-table {
    width: 100%;
  }
}

.lecturers-list2 h3 {
  color: #e4007f;
}
.lecturers-list2 .tables th {
  background: #fadce9;
  border: 1px solid #e4007f;
}
.lecturers-list2 .tables td {
  border: 1px solid #e4007f;
}

.lecturer-info {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
  text-align: right;
}

@media screen and (max-width: 767px) {
  .management_ladder .container {
    max-width: 100vw;
  }
}
.management_ladder .container.u-position-relative .breadcrumbs {
  margin: 42px 0 0px;
}
.management_ladder-mv {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  background: url(./img/management_ladder/management-image.png) no-repeat top center;
  padding: 0 20px 220px;
  background-size: cover;
  max-height: 390px;
}
@media screen and (max-width: 767px) {
  .management_ladder-mv {
    max-height: none;
    padding: 20px 20px 30px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .management_ladder-mv {
    max-height: 40vw;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1199px) {
  .management_ladder-mv {
    max-height: 29vw;
  }
}
@media screen and (min-width: 1200px) and (max-width: 1280px) {
  .management_ladder-mv {
    max-height: 23vw;
  }
}
@media screen and (min-width: 1281px) and (max-width: 1441px) {
  .management_ladder-mv {
    max-height: 400px;
  }
}
.management_ladder-mv .text-box {
  width: 60%;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .management_ladder-mv .text-box {
    width: 100%;
  }
}
@media screen and (min-width: 1200px) and (max-width: 1280px) {
  .management_ladder-mv .text-box {
    width: 72%;
  }
}
@media screen and (min-width: 1281px) and (max-width: 1441px) {
  .management_ladder-mv .text-box {
    width: 60%;
  }
}
.management_ladder-mv h2 {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  align-self: center;
  border-bottom: 7px dotted #ea5514;
  color: #ea5541;
  display: inline-block;
  width: auto;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 767px) {
  .management_ladder-mv h2 {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .management_ladder-mv h2 {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .management_ladder-mv h2 {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
  }
}
@media screen and (min-width: 1024px) and (max-width: 1199px) {
  .management_ladder-mv h2 {
    font-size: 18px;
    font-size: calc(1.125 * 1rem);
  }
}
@media screen and (min-width: 1200px) and (max-width: 1280px) {
  .management_ladder-mv h2 {
    font-size: 24px;
    font-size: calc(1.5 * 1rem);
  }
}
@media screen and (min-width: 1281px) and (max-width: 1441px) {
  .management_ladder-mv h2 {
    font-size: 24px;
    font-size: calc(1.5 * 1rem);
  }
}
.management_ladder-mv .text {
  background: rgba(255, 255, 255, 0.6);
  padding: 10px;
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .management_ladder-mv .text {
    margin-top: 0;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .management_ladder-mv .text {
    margin-top: 0;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1199px) {
  .management_ladder-mv .text {
    margin-top: 0;
  }
}
@media screen and (min-width: 1200px) and (max-width: 1280px) {
  .management_ladder-mv .text {
    margin-top: 0;
  }
}
.management_ladder-mv .text p {
  font-size: 18px;
  font-size: calc(1.125 * 1rem);
  line-height: 1.85;
}
@media screen and (max-width: 767px) {
  .management_ladder-mv .text p {
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .management_ladder-mv .text p {
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
  }
}
@media screen and (min-width: 1024px) and (max-width: 1199px) {
  .management_ladder-mv .text p {
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
  }
}
@media screen and (min-width: 1200px) and (max-width: 1280px) {
  .management_ladder-mv .text p {
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
  }
}
@media screen and (min-width: 1281px) and (max-width: 1441px) {
  .management_ladder-mv .text p {
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
  }
}
.management_ladder-mv .text p .start {
  color: #c5458a;
  font-weight: bold;
}
.management_ladder-mv .point-list {
  list-style: decimal;
  line-height: 1.6;
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
}
@media screen and (max-width: 767px) {
  .management_ladder-mv .point-list {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .management_ladder-mv .point-list {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
@media screen and (min-width: 1024px) and (max-width: 1199px) {
  .management_ladder-mv .point-list {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
@media screen and (min-width: 1200px) and (max-width: 1280px) {
  .management_ladder-mv .point-list {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.management_ladder-button {
  display: flex;
  gap: 20px;
  margin-top: 20px;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .management_ladder-button {
    flex-direction: column;
  }
}
.management_ladder-button a {
  transition: all 0.3s ease;
  width: 40%;
}
.management_ladder-button a:hover {
  opacity: 0.6;
}
.management_ladder-button a img {
  width: 100%;
}
.management_ladder-contents {
  margin-top: 80px;
}
.management_ladder-contents .paragraph h2.h-title07 {
  margin-top: 40px;
  padding: 1em 0em;
}
.management_ladder-contents .paragraph h2.h-title07::after {
  background: #c5458a;
  width: 100%;
  left: 0;
}
.management_ladder-contents .paragraph h2 span {
  background: #c5458a;
  border-radius: 10px;
  color: #fff;
  display: inline-block;
  margin-right: 0.5em;
  padding: 0.3em 1em;
  position: absolute;
  left: -80px;
}
@media screen and (max-width: 767px) {
  .management_ladder-contents .paragraph h2 span {
    left: 50%;
    top: -30px;
  }
}
.management_ladder-contents .paragraph .description {
  margin-left: 0;
  margin-top: -20px;
}
@media screen and (max-width: 767px) {
  .management_ladder-contents .paragraph .description {
    margin-left: 0;
  }
}
.management_ladder-contents .yellow-block {
  align-items: center;
  background: #fffde5;
  display: flex;
  flex-direction: column;
  margin-top: 40px;
  padding: 40px;
}
@media screen and (max-width: 767px) {
  .management_ladder-contents .yellow-block {
    padding: 20px 10px;
  }
}
.management_ladder-contents .yellow-block h3 {
  width: 100%;
}
.management_ladder-contents .yellow-block h3 img {
  width: 100%;
}
.management_ladder-contents .point {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  background-color: white;
  border-radius: 50%;
  color: #a40b5d;
  margin-top: 40px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .management_ladder-contents .point {
    font-size: 16px;
    font-size: calc(1 * 1rem);
    text-align: left;
  }
}
.management_ladder-contents .manga {
  margin-top: 40px;
}
.management_ladder-contents-lectures .list_of_lecturers-flex {
  display: flex;
  justify-content: space-between;
  margin-top: 1em;
  gap: 20px;
}
@media screen and (max-width: 767px) {
  .management_ladder-contents-lectures .list_of_lecturers-flex {
    flex-direction: column;
  }
}
.management_ladder-contents-lectures .list_of_lecturers-table {
  table-layout: fixed;
  text-align: left;
  width: 50%;
  border: 1px solid #e13387;
  border-collapse: collapse;
}
@media screen and (max-width: 767px) {
  .management_ladder-contents-lectures .list_of_lecturers-table {
    width: 100%;
  }
}
.management_ladder-contents-lectures .list_of_lecturers-table tr th, .management_ladder-contents-lectures .list_of_lecturers-table tr td {
  padding: 0.7em;
}
.management_ladder-contents-lectures .list_of_lecturers-table tr th {
  background: #fbe4ef;
  width: 31%;
  border: 1px solid #e13387;
}
@media screen and (max-width: 767px) {
  .management_ladder-contents-lectures .list_of_lecturers-table tr th {
    width: 29%;
  }
}
.management_ladder-contents-lectures .list_of_lecturers-table tr td {
  font-size: 12px;
  font-size: calc(0.75 * 1rem);
  width: auto;
  text-align: left;
  border: 1px solid #e13387;
}
.management_ladder-contents-lectures .lecturer-note {
  text-align: right;
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
}
.management_ladder .ability {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 20px;
  margin-bottom: 40px;
}
.management_ladder .ability-item {
  background: #ffffff;
  padding: 20px;
  border: 1px solid #b5b5b6;
  border-radius: 10px;
  width: calc(50% - 20px);
}
@media screen and (max-width: 767px) {
  .management_ladder .ability-item {
    width: 100%;
  }
}
.management_ladder .ability-item h4 {
  color: #a40b5d;
  font-size: 22px;
  font-size: calc(1.375 * 1rem);
  text-align: center;
}
.management_ladder .table {
  margin-top: 20px;
  width: 100%;
}
.management_ladder .table img {
  width: 100%;
}
.management_ladder .white-block {
  background: #fff;
  padding: 20px;
  width: 90%;
}
@media screen and (max-width: 767px) {
  .management_ladder .white-block {
    padding: 20px 10px;
    width: 100%;
  }
}
.management_ladder .white-block + .white-block {
  margin-top: 40px;
}
.management_ladder .white-block h3 {
  text-align: center;
  margin-bottom: 20px;
}
.management_ladder .white-block h3.p4-title {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  font-weight: normal;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .management_ladder .white-block h3.p4-title {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}
.management_ladder .white-block h3.p4-title2 {
  margin-top: 20px;
}
.management_ladder .white-block h3 img {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .management_ladder .white-block h3 img {
    width: 80%;
  }
}
.management_ladder .white-block h3 img.p3-title2 {
  width: 100%;
}
.management_ladder .white-block p {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  text-align: center;
  margin-bottom: 20px;
}
@media screen and (max-width: 767px) {
  .management_ladder .white-block p {
    font-size: 16px;
    font-size: calc(1 * 1rem);
    text-align: left;
  }
}
.management_ladder .white-block ul {
  list-style: none;
  padding-left: 0;
}
.management_ladder .white-block ul li {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
}
@media screen and (max-width: 767px) {
  .management_ladder .white-block ul li {
    font-size: 16px;
    font-size: calc(1 * 1rem);
    text-align: left;
  }
}
.management_ladder .white-block ul li span {
  display: inline-block;
  width: 20px;
  color: #dd6177;
}
.management_ladder .white-block .sample-photo {
  display: flex;
  gap: 20px;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .management_ladder .white-block .sample-photo {
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  .management_ladder .white-block .sample-photo .item {
    width: 100%;
  }
}
.management_ladder .white-block .sample-photo .item img {
  width: 100%;
  max-height: 235px;
  object-position: top;
}
.management_ladder .fee {
  margin-top: 40px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .management_ladder .fee {
    max-width: 90%;
  }
}
.management_ladder .fee .h-title01::before {
  color: rgba(214, 154, 195, 0.2);
}
@media screen and (max-width: 767px) {
  .management_ladder .fee .h-title01::before {
    top: 39px;
  }
}
.management_ladder .fee figure {
  position: relative;
  margin-top: 40px;
}
.management_ladder .fee figure img:first-of-type {
  position: absolute;
  top: -17%;
  right: -4%;
  width: 20%;
  height: auto;
}
.management_ladder .fee ul {
  list-style-type: disc;
  padding-left: 3.3em;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .management_ladder .fee ul {
    padding-left: 1em;
  }
}
.management_ladder .fee .management_ladder-button a {
  width: 100%;
}
.management_ladder .lectures .h-title01::before {
  color: rgba(214, 154, 195, 0.2);
}
@media screen and (max-width: 767px) {
  .management_ladder .lectures .h-title01::before {
    top: 39px;
  }
}
.management_ladder .lectures .sample-text {
  color: #db0000;
  text-align: center;
  margin-top: -42px;
  margin-bottom: 40px;
}
.management_ladder .lectures .description {
  text-align: center;
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
}
.management_ladder .lectures .sample-video {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  margin-top: 20px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .management_ladder .lectures .sample-video {
    max-width: 90%;
  }
}
.management_ladder .lectures .sample-video .item {
  width: calc(50% - 20px);
}
@media screen and (max-width: 767px) {
  .management_ladder .lectures .sample-video .item {
    width: 100%;
  }
}
.management_ladder .lectures .sample-video .item img {
  width: 100%;
}
.management_ladder .lectures .sample-video .item-img {
  margin-top: 3.5em;
}
@media screen and (max-width: 767px) {
  .management_ladder .lectures .sample-video .item-img {
    margin-top: 0;
  }
}
.management_ladder .lectures .sample-video .item .title {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  line-height: 1.3;
  margin-bottom: 0.2em;
}
@media screen and (max-width: 767px) {
  .management_ladder .lectures .sample-video .item .title {
    margin-bottom: 0.5em;
  }
}
.management_ladder .lectures .sample-video .item .title-singleline {
  margin-bottom: 1.5em;
}
@media screen and (max-width: 767px) {
  .management_ladder .lectures .sample-video .item .title-singleline {
    margin-bottom: 0.5em;
  }
}
.management_ladder .lectures .sample-video .item .lecture p {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
  line-height: 1.3;
}
.management_ladder .lectures-planning {
  margin-top: 3em;
}

#mw_wp_form_mw-wp-form-4663 .price-img2 img {
  width: 100%;
}

.option-course {
  width: 100%;
  height: 50px;
  background: linear-gradient(135deg, #d97735 50%, #d35588 50%);
  display: flex;
  justify-content: center;
  align-items: center;
  color: white;
  font-size: 24px;
  font-weight: bold;
  margin-top: 40px;
}
.option-course span {
  position: relative;
}

.option-course-list {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .option-course-list {
    flex-direction: column;
  }
}
.option-course-list .price {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .option-course-list .price {
    width: 100%;
  }
}
.option-course-list .price {
  border-collapse: collapse;
  border: 1px solid #ea5514;
  table-layout: auto;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .option-course-list .price {
    margin-top: 1em;
    width: 100%;
  }
}
.option-course-list .price th {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  background: #f29542;
  color: #fff;
  padding: 8px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .option-course-list .price th {
    font-size: clamp(16px, 3vw, 18px);
  }
}
.option-course-list .price td {
  border: 1px solid #f29542;
}
@media screen and (max-width: 767px) {
  .option-course-list .price td {
    display: block;
    width: 100%;
  }
}
.option-course-list .price td.price-title {
  font-size: 20px;
  font-size: calc(1.25 * 1rem);
  background: #f8ee9b;
  text-align: center;
  width: 30%;
}
@media screen and (max-width: 767px) {
  .option-course-list .price td.price-title {
    width: 100%;
    padding: 10px;
  }
}
.option-course-list .price td.price-title span {
  font-size: 16px;
  font-size: calc(1 * 1rem);
  display: block;
  line-height: 1;
}
.option-course-list .price td.price-price {
  text-align: center;
  padding: 10px;
  width: 70%;
}
@media screen and (max-width: 767px) {
  .option-course-list .price td.price-price {
    width: 100%;
  }
}
.option-course-list .price td.price-price span {
  font-size: 30px;
  font-size: calc(1.875 * 1rem);
  font-weight: bold;
}
.option-course-list .price td.price-price .option-info {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
  text-align: center;
}
@media screen and (max-width: 767px) {
  .option-course-list .price td.price-price .option-info {
    text-align: center;
  }
}
.option-course-list .option-course-item.option-course-item-pediatric {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .option-course-list .option-course-item.option-course-item-pediatric {
    width: 100%;
  }
}
.option-course-list .option-course-item.option-course-item-psychological {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .option-course-list .option-course-item.option-course-item-psychological {
    width: 100%;
  }
}
.option-course-list .option-course-item.option-course-item-psychological .price {
  border: 1px solid #e4007f;
}
.option-course-list .option-course-item.option-course-item-psychological .price th {
  background: #e4007f;
}
.option-course-list .option-course-item.option-course-item-psychological .price td {
  border: 1px solid #e4007f;
}
.option-course-list .option-course-item.option-course-item-psychological .price td.price-title {
  background: #fadce9;
}

.page-writevideo {
  max-width: 1000px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .page-writevideo {
    padding-inline: 20px;
  }
}
.page-writevideo .title-box {
  text-align: center;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .page-writevideo .title-box .col-sm-12 {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.page-writevideo .title-box h2 {
  font-size: 32px;
  font-weight: bold;
  color: #02369a;
  position: relative;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .page-writevideo .title-box h2 {
    font-size: 24px;
  }
}
.page-writevideo .title-box h2::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 10px;
  background-color: rgba(255, 255, 0, 0.5); /* 蛍光黄色の半透明 */
  z-index: -1;
}
.page-writevideo .writevideo-mv {
  margin-bottom: 20px;
}
.page-writevideo .explain {
  margin-bottom: 40px;
}
.page-writevideo .explain p {
  margin-bottom: 1em;
}
.page-writevideo .recommend {
  margin-bottom: 80px;
}
.page-writevideo .recommend h2 {
  color: #02369a;
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  font-weight: bold;
  margin-bottom: 20px;
  padding-left: 20px;
  border-left: 10px solid #02369a;
  line-height: 1.5;
}
.page-writevideo .recommend ul {
  margin-top: 0;
  padding-left: 1em;
}
.page-writevideo .recommend .last {
  padding-left: 1em;
}
.page-writevideo .recommend-content {
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .page-writevideo .recommend-content .col-sm-2 {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  .page-writevideo .recommend-content img {
    width: 50%;
  }
}
.page-writevideo .event-overview h2 {
  color: #02369a;
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  font-weight: bold;
}
.page-writevideo .event-overview table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border: 1px solid #02369a;
}
.page-writevideo .event-overview table th {
  width: 20%;
  background: #02369a;
  color: #fff;
  padding: 10px;
  font-size: 16px;
  font-size: calc(1 * 1rem);
  border: 1px solid #fff;
}
@media screen and (max-width: 767px) {
  .page-writevideo .event-overview table th {
    display: block;
    width: 100%;
  }
}
.page-writevideo .event-overview table td {
  border: 1px solid #02369a;
  padding: 10px 10px 10px 20px;
  font-size: 16px;
  font-size: calc(1 * 1rem);
}
@media screen and (max-width: 767px) {
  .page-writevideo .event-overview table td {
    display: block;
    width: 100%;
  }
}
.page-writevideo .event-overview .schedule-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border: none;
}
.page-writevideo .event-overview .schedule-table th, .page-writevideo .event-overview .schedule-table td {
  border: none;
  background: transparent;
  padding: 0;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .page-writevideo .event-overview .schedule-table th, .page-writevideo .event-overview .schedule-table td {
    display: table-cell;
    width: auto;
  }
}
.page-writevideo .event-overview .schedule-table th {
  vertical-align: top;
}
.page-writevideo .event-overview .schedule-time {
  width: 12%;
  color: #02369a;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .page-writevideo .event-overview .schedule-time {
    width: 35% !important;
  }
}
.page-writevideo .event-overview .schedule-content {
  width: 88%;
}
@media screen and (max-width: 767px) {
  .page-writevideo .event-overview .schedule-content {
    width: 65% !important;
  }
}
.page-writevideo .form {
  margin-bottom: 40px;
}
.page-writevideo .form h2 {
  color: #02369a;
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
  font-weight: bold;
  margin-bottom: 20px;
}
.page-writevideo .form .row {
  margin-bottom: 20px;
}

.list_of_exercises_and_practical_training {
  background: #f3f5f7;
}

.list_of_exercises_and_practical_training-page {
  width: 100%;
  max-width: 950px;
  margin-inline: auto;
  background-color: #fff;
  padding: 20px;
}

#sub-navigation {
  background: #103869;
  height: 34px;
  border-bottom: 1px solid #98bbe3;
  margin-bottom: 20px;
}
#sub-navigation ul {
  list-style: none;
  width: 100%;
  max-width: 950px;
  margin-inline: auto;
  padding-left: 0;
}
#sub-navigation ul li a {
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  font-weight: bold;
  padding: 0 10px;
}

.list_of_exercises_and_practical_training-container {
  max-width: 950px;
  margin-inline: auto;
  padding-inline: 20px;
  width: 100%;
}
.list_of_exercises_and_practical_training-container ul {
  list-style: none;
  padding-left: 0;
}
.list_of_exercises_and_practical_training-container ul li {
  border-top: 1px solid #d7d6db;
  padding-top: 10px;
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.list_of_exercises_and_practical_training-container ul li:last-child {
  border-bottom: 1px solid #d7d6db;
}
.list_of_exercises_and_practical_training-container ul li a {
  color: #02369a;
  text-decoration: none;
  font-size: 14px;
  font-weight: bold;
  padding: 0 10px;
  display: flex;
  align-items: center;
}
.list_of_exercises_and_practical_training-container ul li a .material-icons {
  margin-right: 10px;
}
.list_of_exercises_and_practical_training-container ul li ul li {
  border-top: none;
  padding-bottom: 0;
  margin-bottom: 0;
}
.list_of_exercises_and_practical_training-container ul li ul li:last-child {
  border-bottom: none;
}

.list_of_exercises_and_practical_training-search form {
  display: flex;
  gap: 10px;
}
.list_of_exercises_and_practical_training-search form input {
  width: 90%;
  padding: 10px;
}
.list_of_exercises_and_practical_training-search form button {
  background: #02369a;
  color: #fff;
  padding: 10px;
  border: none;
  cursor: pointer;
}
.list_of_exercises_and_practical_training-search form button:hover {
  background: #02369a;
}

.mw_wp_form_complete {
  margin-top: 70px;
}

/* 文字の上に点 */
.orange-dot {
  background-image: radial-gradient(circle at center, #FF9300 20%, transparent 20%); /* 点の色とサイズ調整 */
  background-position: top right; /* 点の位置 */
  background-repeat: repeat-x; /* 横方向に繰り返し */
  background-size: 1em 0.3em; /* 点の間隔とサイズ調整 */
  padding-top: 0.2em; /* 縦方向の位置調整 */
}

.section-title.orange-title {
  background: #ff9300;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  border-radius: 30px;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .section-title.orange-title {
    font-size: 1.1rem;
  }
}

.form_notice {
  text-align: left;
  color: #ff6565;
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
}

.form_table-companionanimal .member-number {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  .form_table-companionanimal .member-number {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}
.form_table-companionanimal .member-number input {
  width: 50%;
}
.form_table-companionanimal .form_notice {
  position: absolute;
}
@media screen and (max-width: 767px) {
  .form_table-companionanimal .form_notice {
    position: relative;
    margin-top: 8px;
  }
}
.form_table-companionanimal .member-number-td {
  padding-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .form_table-companionanimal .member-number-td {
    padding-bottom: 0;
  }
}

.companionanimal-before-entry {
  margin-top: 40px;
}
.companionanimal-before-entry p {
  text-align: center;
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
  margin-bottom: 20px;
}
.companionanimal-before-entry ul {
  padding-left: 0;
}
.companionanimal-before-entry ul li {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
}

.boxTab.tabStyle05 {
  margin-top: 60px;
}
.boxTab .boxTabBtn {
  font-size: 14px;
  font-size: calc(0.875 * 1rem);
}
.boxTab .boxTabBtn ul {
  display: table;
  width: 100%;
  height: 100%;
}
.boxTab .boxTabBtn li {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  width: 50%;
  height: 100%;
  border-left: 10px solid transparent;
}
.boxTab .boxTabBtn li:first-child {
  border-left: none;
}
.boxTab .boxTabBtn li .btnTab {
  display: table;
  transition: background-color 0.2s ease-in-out, border 0.2s ease-in-out;
  position: relative;
  width: 100%;
  height: 100%;
  height: 75px\9 ;
  /* IE8用 */
  padding: 15px 10px;
  border: 1px solid #192b5a;
  background: #192b5a;
  color: #fff;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  line-height: 1.45em;
}
.boxTab.jsTabSelect .boxTabBtn li .btnTab {
  cursor: pointer;
}
.boxTab .boxTabBtn li a.btnTab {
  cursor: pointer;
}
.boxTab .boxTabBtn li .btnTab:hover {
  border-color: #192b5a;
  background-color: #192b5a;
}
.boxTab .boxTabBtn li .btnTab:after {
  display: none;
  position: absolute;
  right: 2px;
  left: 2px;
  bottom: -1px;
  height: 1px;
  background: #fff;
  content: "";
}
.boxTab .boxTabBtn li.selected .btnTab {
  border: 1px solid #ccc;
  border-bottom-color: #fff;
  background: #fff;
  color: #000;
}
.boxTab .boxTabBtn li.selected .btnTab:after {
  display: block;
}
.boxTab .boxTabBtn li .btnTab > span {
  display: table-cell;
  vertical-align: middle;
  position: inherit;
  padding: 0;
}
.boxTab .boxTabBtn li .btnTab .icnArw {
  position: relative;
  padding: 0 0 0 12px;
}
.boxTab .boxTabBtn li .btnTab .icnArw:before {
  transition: all 0.2s ease-in-out;
  position: absolute;
  top: 50%;
  left: 0;
  width: 0;
  height: 0;
  margin-top: -5px;
  border-top: 4px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 5px solid #fff;
  content: "";
}
.boxTab .boxTabBtn li.selected .btnTab .icnArw:before {
  display: none;
}
.boxTab .boxTabContentWrap {
  border: 1px solid #ccc;
  background: #fff;
  margin-top: -1px;
  padding: 20px;
}
.boxTab .boxTabContent .ttlTabContent {
  display: none;
}
.boxTab .boxInfoBtm {
  overflow: hidden;
  border-top: 1px solid #ccc;
  padding-top: 18px;
  color: #000;
  font-size: 0.98em;
}
.boxTab .boxInfoBtm a {
  color: #202020;
}
.boxTab .boxInfoBtm p {
  line-height: 1.4em;
}
.boxTab .boxInfoBtm .boxTagDescription {
  float: left;
  font-size: 0.88em;
  letter-spacing: -0.02em;
}
.boxTab .boxInfoBtm .boxTagDescription p {
  padding-top: 6px;
}
.boxTab .boxInfoBtm .boxTagDescription p:first-child {
  padding-top: 0;
}
.boxTab .boxInfoBtm .boxTagDescription .tag {
  min-width: 42px;
  margin: 0 5px 0 0;
  padding: 0 5px;
}
.boxTab .boxInfoBtm .icnArw {
  float: right;
  font-weight: bold;
  text-align: right;
  letter-spacing: 0.05em;
}
.boxTab.tabStyle02 .boxTabBtn {
  overflow: hidden;
  border-bottom: 5px solid #192b5a;
}
.boxTab.tabStyle02 .boxTabBtn ul {
  width: 100.3%;
}
.boxTab.tabStyle02 .boxTabBtn li {
  border-left-width: 0;
  font-size: 0.85em;
}
.boxTab.tabStyle02.tabRow03 .boxTabBtn li, .boxTab.tabStyle02.tabRow04 .boxTabBtn li, .boxTab.tabStyle02.tabRow05 .boxTabBtn li, .boxTab.tabStyle02.tabRow06 .boxTabBtn li {
  height: 70px;
}
.boxTab.tabStyle02 .boxTabBtn li .btnTab {
  padding: 15px 5px;
  border: none;
  border-left: 1px solid #ccc;
  background: #faf7f2;
  color: #000;
}
.boxTab.tabStyle02 .boxTabBtn li .btnTab:before {
  display: block;
  position: absolute;
  left: 50%;
  bottom: -1px;
  width: 0;
  height: 0;
  margin-left: -8px;
  border-top: 6px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 6px solid #192b5a;
  border-left: 8px solid transparent;
  content: "";
}
.boxTab.tabStyle02 .boxTabBtn li:first-child .btnTab {
  border-left-width: 0;
}
.boxTab.tabStyle02 .boxTabBtn li .btnTab:after {
  display: none;
}
.boxTab.tabStyle02 .boxTabBtn li .btnTab:hover {
  background-color: #f4f6ff;
}
.boxTab.tabStyle02 .boxTabBtn li.selected .btnTab {
  background-color: #192b5a;
  color: #fff;
}
.boxTab.tabStyle02 .boxTabBtn li.selected .btnTab:before {
  display: none;
}
.boxTab.tabStyle02 .boxTabBtn li.selected + li .btnTab {
  border-left-width: 0;
}
.boxTab.tabStyle02 .boxTabBtn li .btnTab .icnArw {
  padding: 0 !important;
}
.boxTab.tabStyle02.tabRow04 .boxTabBtn li .btnTab, .boxTab.tabStyle02.tabRow05 .boxTabBtn li .btnTab {
  padding-top: 14px;
  padding-bottom: 14px;
}
.boxTab.tabStyle02 .boxTabBtn li .btnTab .icnArw:before {
  display: none;
}
.boxTab.tabStyle02 .boxTabContentWrap {
  border-color: #fff;
  padding: 20px 0;
}
.boxTab.tabStyle02.clrBase .boxTabBtn {
  border-bottom-color: #192b5a;
}
.boxTab.tabStyle02.clrBase .boxTabBtn li .btnTab:before {
  border-bottom-color: #192b5a;
}
.boxTab.tabStyle02.clrBase .boxTabBtn li .btnTab:hover {
  background-color: #f4f6ff;
}
.boxTab.tabStyle02.clrBase .boxTabBtn li.selected .btnTab {
  border-left-color: #192b5a;
  background-color: #192b5a;
}
.boxTab.tabStyle02.clrScheme01 .boxTabBtn {
  border-bottom-color: #ff8b2f;
}
.boxTab.tabStyle02.clrScheme01 .boxTabBtn li .btnTab:before {
  border-bottom-color: #ff8b2f;
}
.boxTab.tabStyle02.clrScheme01 .boxTabBtn li .btnTab:hover {
  background-color: #ffefda;
}
.boxTab.tabStyle02.clrScheme01 .boxTabBtn li.selected .btnTab {
  border-left-color: #ff8b2f;
  background-color: #ff8b2f;
}
.boxTab.tabStyle02.clrScheme02 .boxTabBtn {
  border-bottom-color: #53b78f;
}
.boxTab.tabStyle02.clrScheme02 .boxTabBtn li .btnTab:before {
  border-bottom-color: #53b78f;
}
.boxTab.tabStyle02.clrScheme02 .boxTabBtn li .btnTab:hover {
  background-color: #eff8e6;
}
.boxTab.tabStyle02.clrScheme02 .boxTabBtn li.selected .btnTab {
  border-left-color: #53b78f;
  background-color: #53b78f;
}
.boxTab.tabStyle02.clrScheme07 .boxTabBtn li.selected .btnTab {
  border-left-color: #219ae5;
  background-color: #219ae5;
}
.boxTab.tabStyle02.clrScheme03 .boxTabBtn {
  border-bottom-color: #18c3e6;
}
.boxTab.tabStyle02.clrScheme03 .boxTabBtn li .btnTab:before {
  border-bottom-color: #18c3e6;
}
.boxTab.tabStyle02.clrScheme03 .boxTabBtn li .btnTab:hover {
  background-color: #e3f7fc;
}
.boxTab.tabStyle02.clrScheme07 .boxTabBtn {
  border-bottom-color: #219ae5;
}
.boxTab.tabStyle02.clrScheme07 .boxTabBtn li .btnTab:before {
  border-bottom-color: #219ae5;
}
.boxTab.tabStyle02.clrScheme07 .boxTabBtn li .btnTab:hover {
  background-color: #219ae5;
}
.boxTab.tabStyle02.clrScheme10 .boxTabBtn {
  border-bottom-color: #219ae5;
}
.boxTab.tabStyle02.clrScheme10 .boxTabBtn li .btnTab:before {
  border-bottom-color: #219ae5;
}
.boxTab.tabStyle02.clrScheme10 .boxTabBtn li .btnTab:hover {
  background-color: #219ae5;
}
.boxTab.tabStyle02.clrScheme03 .boxTabBtn li.selected .btnTab {
  border-left-color: #18c3e6;
  background-color: #18c3e6;
}
.boxTab.tabStyle03 .boxTabBtn li {
  border-left-width: 20px;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab {
  border: 2px solid #192b5a;
  background: #fff;
  color: #192b5a;
  text-align: left;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab:before {
  display: none;
  position: absolute;
  left: 50%;
  bottom: -28px;
  width: 0;
  height: 0;
  margin-left: -20px;
  border-top: 15px solid #192b5a;
  border-right: 20px solid transparent;
  border-bottom: 15px solid transparent;
  border-left: 20px solid transparent;
  content: "";
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab:after {
  display: none;
}
.boxTab.tabStyle03 .boxTabBtn li.selected .btnTab {
  background: #192b5a;
  color: #fff;
}
.boxTab.tabStyle03 .boxTabBtn li.selected .btnTab:before {
  display: block;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab .icnArw {
  display: inline-block;
  *display: inline;
  /* IE7用 */
  *zoom: 1;
  /* IE7用 */
  padding-left: 15px;
  line-height: 1.7em;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab .icnArw:before {
  top: 16px;
  left: 2px;
  border-left-color: #192b5a;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme01 {
  border-color: #ff8b2f;
  color: #ff8b2f;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme01:hover {
  background-color: #ff8b2f;
  color: #fff;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme01 .icnArw:before {
  border-left-color: #ff8b2f;
}
.boxTab.tabStyle03 .boxTabBtn li.selected .btnTab.clrScheme01 {
  background-color: #ff8b2f;
  color: #fff;
}
.boxTab.tabStyle03 .boxTabBtn li.selected .btnTab.clrScheme01:before {
  border-top-color: #ff8b2f;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme02 {
  border-color: #53b78f;
  color: #53b78f;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme02:hover {
  background-color: #53b78f;
  color: #fff;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme02 .icnArw:before {
  border-left-color: #53b78f;
}
.boxTab.tabStyle03 .boxTabBtn li.selected .btnTab.clrScheme02 {
  background-color: #53b78f;
  color: #fff;
}
.boxTab.tabStyle03 .boxTabBtn li.selected .btnTab.clrScheme02:before {
  border-top-color: #53b78f;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme03 {
  border-color: #6fbd40;
  color: #6fbd40;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme03:hover {
  background-color: #6fbd40;
  color: #fff;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme03 .icnArw:before {
  border-left-color: #6fbd40;
}
.boxTab.tabStyle03 .boxTabBtn li.selected .btnTab.clrScheme03 {
  background-color: #6fbd40;
  color: #fff;
}
.boxTab.tabStyle03 .boxTabBtn li.selected .btnTab.clrScheme03:before {
  border-top-color: #6fbd40;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme05 {
  border-color: #fff0c0;
  color: #fff0c0;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme05:hover {
  background-color: #fff0c0;
  color: #fff;
}
.boxTab.tabStyle03 .boxTabBtn li .btnTab.clrScheme05 .icnArw:before {
  border-left-color: #fff0c0;
}
.boxTab.tabStyle03 .boxTabBtn li.selected .btnTab.clrScheme05 {
  background-color: #fff0c0;
  color: #fff;
}
.boxTab.tabStyle03 .boxTabBtn li.selected .btnTab.clrScheme05:before {
  border-top-color: #fff0c0;
}
.boxTab.tabStyle04 .boxTabBtn li {
  border-left-width: 20px;
}
.boxTab.tabStyle04 .boxTabBtn li .btnTab {
  padding: 28px 20px;
  border: 2px solid #1390a6;
  background: #fff;
  color: #1390a6;
  text-align: center;
}
.boxTab.tabStyle04 .boxTabBtn li .btnTab:before {
  display: none;
  position: absolute;
  left: 50%;
  bottom: 3px;
  width: 0;
  height: 0;
  margin-left: -8px;
  border-top: 8px solid #fff;
  border-right: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 8px solid transparent;
  content: "";
}
.boxTab.tabStyle04 .boxTabBtn li .btnTab:after {
  display: none;
}
.boxTab.tabStyle04 .boxTabBtn li.selected .btnTab {
  background: #1390a6;
  color: #fff;
}
.boxTab.tabStyle04 .boxTabBtn li.selected .btnTab:before {
  display: block;
}
.boxTab.tabStyle04 .boxTabBtn li .btnTab .icnArw {
  display: inline-block;
  *display: inline;
  /* IE7用 */
  *zoom: 1;
  /* IE7用 */
  padding-left: 15px;
  line-height: 1.7em;
}
.boxTab.tabStyle04 .boxTabBtn li .btnTab .icnArw:before {
  top: 16px;
  left: 2px;
  margin-top: -7px;
  border-width: 6px 8px;
  border-left-color: #1390a6;
}
.boxTab.tabStyle04 .boxTabContentWrap {
  margin-top: -2px;
  padding: 0;
  border-top-color: #1390a6;
  border-top-width: 2px;
  border-bottom-width: 0;
}
.boxTab.tabRow03 .boxTabBtn li {
  width: 33.333%;
}
.boxTab.tabRow04 .boxTabBtn li {
  width: 25%;
}
.boxTab.tabRow05 .boxTabBtn li {
  width: 20%;
}
.boxTab.tabRow06 .boxTabBtn li {
  width: 16.8%;
}
.boxTab.tabStyle05 .boxTabBtn ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .boxTab.tabStyle05 .boxTabBtn ul {
    display: none;
  }
}
.boxTab.tabStyle05 .boxTabBtn ul li {
  width: 22.5%;
  height: auto;
  margin: 0 30px 25px 0;
}
.boxTab.tabStyle05 .boxTabBtn ul li:nth-child(4n) {
  margin-right: 0;
}
.boxTab.tabStyle05 .boxTabBtn li .btnTab {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #192b5a;
  border-radius: 4px;
  background: #faf7f2;
  text-align: left;
  color: #000;
}
.boxTab.tabStyle05 .boxTabBtn li .btnTab span {
  text-align: left;
}
.boxTab.tabStyle05 .boxTabBtn li .btnTab:after {
  content: none;
}
.boxTab.tabStyle05 .boxTabBtn li .btnTab .icnArw {
  padding-left: 15px;
  font-weight: 500;
}
.boxTab.tabStyle05 .boxTabBtn li .btnTab .icnArw:before {
  border-top: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 7px solid #000;
}
.boxTab.tabStyle05 .boxTabBtn li.clrScheme01 .btnTab {
  border-color: #ff8b2f;
}
.boxTab.tabStyle05 .boxTabBtn li.clrScheme02 .btnTab {
  border-color: #73c4d4;
}
.boxTab.tabStyle05 .boxTabBtn li.clrScheme03 .btnTab {
  border-color: #18c3e6;
}
.boxTab.tabStyle05 .boxTabBtn li.clrScheme07 .btnTab {
  border-color: #219ae5;
}
.boxTab.tabStyle05 .boxTabBtn li.clrScheme08 .btnTab {
  border-color: #297686;
}
.boxTab.tabStyle05 .boxTabBtn li.selected .btnTab {
  color: #fff;
}
.boxTab.tabStyle05 .boxTabBtn li .btnTab:hover {
  background-color: #f4f6ff;
}
.boxTab.tabStyle05 .boxTabBtn li.selected .btnTab .icnArw {
  padding-left: 0;
}
.boxTab.tabStyle05 .boxTabBtn li.clrBase.selected .btnTab {
  background: #192b5a;
}
.boxTab.tabStyle05 .boxTabBtn li.clrScheme01.selected .btnTab {
  background: #ff8b2f;
}
.boxTab.tabStyle05 .boxTabBtn li.clrScheme02.selected .btnTab {
  background: #53b78f;
}
.boxTab.tabStyle05 .boxTabBtn li.clrScheme03.selected .btnTab {
  background: #65abff;
}
.boxTab.tabStyle05 .boxTabBtn li.clrScheme07.selected .btnTab {
  background: #219ae5;
}
.boxTab.tabStyle05 .boxTabBtn li.clrScheme08.selected .btnTab {
  background: #297686;
}

@media screen and (max-width: 767px) {
  .boxTab.tabStyle05 {
    margin-top: 20px;
  }
  .boxTab.tabStyle05 .boxTabBtn {
    position: relative;
  }
  .boxTab.tabStyle05 .boxTabBtn:after {
    position: absolute;
    top: 50%;
    right: 15px;
    width: 0;
    height: 0;
    margin-top: -3px;
    content: "";
    border-top: 7px solid #000;
    border-right: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 5px solid transparent;
  }
  .boxTab.tabStyle05 .boxTabBtn select {
    width: 100%;
    height: auto;
    padding: 14px 8px;
    background: #faf7f2;
    border-radius: 3px !important;
    appearance: none;
  }
  .boxTab.tabStyle05 .boxTabBtn.clrBase select {
    border-color: #192b5a;
  }
  .boxTab.tabStyle05 .boxTabBtn.clrScheme01 select {
    border-color: #ff8b2f;
  }
  .boxTab.tabStyle05 .boxTabBtn.clrScheme02 select {
    border-color: #65abff;
  }
  .boxTab.tabStyle05 .boxTabBtn.clrScheme03 select {
    border-color: #18c3e6;
  }
  .boxTab.tabStyle05 .boxTabBtn.clrScheme07 select {
    border-color: #219ae5;
  }
  .boxTab.tabStyle05 .boxTabBtn.clrScheme08 select {
    border-color: #297686;
  }
  .boxTab.tabStyle05 .boxTabBtn.mediaPC {
    display: none;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .boxTab.tabStyle05 .boxTabBtn.mediaPC::after {
    content: none;
  }
}
.campaign-banner {
  text-align: center;
  margin-top: 40px;
  margin-bottom: 40px;
}
.campaign-banner img {
  transition: all 0.3s ease;
}
.campaign-banner img:hover {
  opacity: 0.6;
}

.page-specifictraining {
  margin-inline: auto;
  position: relative;
}
.page-specifictraining .tableofcontents {
  position: fixed;
  top: 0;
  left: 50.8%;
  transform: translateX(-50%);
  z-index: 1;
  max-width: 768px;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .page-specifictraining .tableofcontents {
    display: none !important;
  }
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .page-specifictraining .tableofcontents {
    max-width: 100vw;
  }
}
@media screen and (min-width: 1280px) {
  .page-specifictraining .tableofcontents {
    max-width: 1080px;
    left: 50%;
  }
}
.page-specifictraining .tableofcontents ul {
  width: 768px;
  list-style: none;
  padding-left: 0;
  display: flex;
  justify-content: center;
  margin: 0;
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .page-specifictraining .tableofcontents ul {
    width: 100vw;
  }
}
@media screen and (min-width: 1280px) {
  .page-specifictraining .tableofcontents ul {
    width: 1080px;
  }
}
.page-specifictraining .tableofcontents ul li {
  width: 20%;
}
.page-specifictraining .tableofcontents ul li a {
  font-size: 13px;
  font-size: calc(0.8125 * 1rem);
  align-items: center;
  background: #fff;
  border: 1px solid #eee;
  display: flex;
  justify-content: center;
  height: 6.473vw;
  transition: all 0.3s ease;
}
.page-specifictraining .tableofcontents ul li a:hover {
  text-decoration: none;
  background: #008c72;
  color: #fff;
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .page-specifictraining .tableofcontents ul li a {
    font-size: 14px;
    font-size: calc(0.875 * 1rem);
    padding: 12px 4.4px;
  }
}

.page-specifictraining-blk1 {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .page-specifictraining-blk1 {
    margin-bottom: 20px;
  }
}
.page-specifictraining-blk1 figure + figure {
  margin-top: 22px;
}

.page-specifictraining-blk2 {
  margin-top: 100px;
}
.page-specifictraining-blk2.boxIndexIntro .boxTxtArea {
  padding-right: 480px !important;
}
@media screen and (max-width: 767px) {
  .page-specifictraining-blk2.boxIndexIntro .boxTxtArea {
    padding-right: 0 !important;
  }
}
.page-specifictraining-blk2.boxIndexIntro .boxTxtArea {
  padding-top: 5px;
  padding-bottom: 5px;
  position: relative;
}
.page-specifictraining-blk2.boxIndexIntro .boxTxtArea .ttlStyle01.bgSQUE {
  padding-left: 70px;
  background: url(./img/specifictraining-icn-sque.png) no-repeat left center;
  line-height: 1.45em;
  font-weight: 400;
}
.page-specifictraining-blk2.boxIndexIntro .boxTxtArea .ttlStyle01 {
  margin-bottom: 5px;
}
.page-specifictraining-blk2 .ttlStyle01 {
  margin-bottom: 20px;
  font-size: 2em;
}
.page-specifictraining-blk2 .ttlStyle01:first-child {
  margin-top: 0;
}
.page-specifictraining-blk2.boxIndexIntro .boxTxtArea .imgIntro {
  position: absolute;
  bottom: 40px;
  right: 0;
}
@media screen and (max-width: 767px) {
  .page-specifictraining-blk2.boxIndexIntro .boxTxtArea .imgIntro {
    margin: 25px auto;
    position: relative;
  }
}
.page-specifictraining-blk2.boxSection > p, .page-specifictraining-blk2.boxSection .boxInner > p, .page-specifictraining-blk2.boxSection .boxTxtArea > p {
  padding-top: 22px;
  line-height: 1.9em;
}
.page-specifictraining-blk2.boxIndexIntro .boxTxtArea .imgIntro {
  position: absolute;
  bottom: 40px;
  right: 0;
}
@media screen and (max-width: 767px) {
  .page-specifictraining-blk2.boxIndexIntro .boxTxtArea .imgIntro {
    margin: 25px auto;
    position: relative;
    bottom: 0;
  }
}
.page-specifictraining-blk2.boxIndexIntro .boxTxtArea .txtCont {
  font-size: 0.98em;
}
.page-specifictraining-blk2.boxIndexIntro .boxTxtArea .boxPageLink {
  padding-top: 25px;
  padding-right: 10px;
}
.page-specifictraining-blk2.boxIndexIntro .boxTxtArea .boxPageLink .btn > * {
  padding-right: 25px;
}
.page-specifictraining-blk2 .btn.clrEm > * {
  border-color: #ff9617;
  background-color: #ff9617;
}
.page-specifictraining-blk2 .btn.arw > * {
  display: block;
  position: relative;
  padding: 15px 50px 15px 15px;
  font-size: 1.1em;
  font-weight: bold;
  text-align: left;
  color: #fff;
}
.page-specifictraining-blk2 .btn.arw > *:after {
  opacity: 1 !important;
  position: absolute;
  top: 50%;
  right: 5px;
  width: 0;
  height: 0;
  margin-top: -13px;
  border-radius: 10px;
  border-top: 13px solid transparent;
  border-right: 13px solid transparent;
  border-bottom: 13px solid transparent;
  border-left: 13px solid #fff;
  background: none !important;
  content: "";
}

/* -- ボタン内テキスト・装飾（矢印） -- */
.boxTab.tabStyle04 .boxTabBtn li .btnTab .icnArw:before {
  top: 16px;
  left: 2px;
  margin-top: -7px;
  border-width: 6px 8px;
  border-left-color: #1390a6;
}

.boxTab.tabStyle04 .boxTabContentWrap {
  padding: 0;
  border-top-color: #1390a6;
  border-top-width: 2px;
  border-bottom-width: 0;
  margin: -2px calc(50% - 50vw) auto;
}

/* ------ Tab列 ------ */
/* -- 列03 -- */
.boxTab.tabRow03 .boxTabBtn li {
  width: 33.333%;
}

/* --  列04 --  */
.boxTab.tabRow04 .boxTabBtn li {
  width: 25%;
}

/* --  列05 --  */
.boxTab.tabRow05 .boxTabBtn li {
  width: 20%;
}

/* --  列05 --  */
.boxTab.tabRow06 .boxTabBtn li {
  width: 20%;
}

/* ------ Tabスタイル05 ------ */
/* ---- Tab・ボタン ---- */
.boxTab.tabStyle05 .boxTabBtn ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.boxTab.tabStyle05 .boxTabBtn ul li {
  width: 22.5%;
  height: auto;
  margin: 0 30px 25px 0;
}
@media screen and (max-width: 64em) and (min-width: 48em) {
  .boxTab.tabStyle05 .boxTabBtn ul li {
    width: auto;
  }
}

.boxTab.tabStyle05 .boxTabBtn ul li.clrBase-free {
  width: 33.3333%;
  height: auto;
  margin: 0 30px 25px 0;
}

.boxTab.tabStyle05 .boxTabBtn ul li:nth-child(4n) {
  margin-right: 0;
}
.boxTab.tabStyle05 .boxTabBtn li .btnTab {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #18c3e6;
  border-radius: 4px;
  background: #faf7f2;
  text-align: left;
  color: #000;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab.btnTab-free {
  border: 1px solid #ff6565;
  background: #ff6565;
  color: #fff;
  padding: 30px 0;
  font-size: 24px;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab.btnTab-contact {
  border: 1px solid #0c7ac2;
  background: #0c7ac2;
  color: #fff;
  padding: 30px 0;
  font-size: 24px;
}
.boxTab.tabStyle05 .boxTabBtn li .btnTab.btnTab-contact:hover {
  background: #fff;
  color: #0c7ac2;
}
.boxTab.tabStyle05 .boxTabBtn li .btnTab.btnTab-contact:hover::before {
  border-left-color: #0c7ac2;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab span {
  text-align: left;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab:after {
  content: none;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab .icnArw {
  padding-left: 15px;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab .icnArw:before {
  border-top: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 7px solid #000;
}

.boxTab.tabStyle05 .boxTabBtn li.current .btnTab .icnArw:before {
  border-left: 7px solid #fff;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab .icnArw.icnArw-free:before {
  border-left: 7px solid white;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab .icnArw.icnArw-contact:before {
  border-left: 7px solid white;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab:hover .icnArw.icnArw-free:before {
  border-left: 7px solid #ff6565;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab:hover .icnArw.icnArw-contact:before {
  border-left: 7px solid #0c7ac2;
}

/* Tabスタイル05 ボーダーカラー */
.boxTab.tabStyle05 .boxTabBtn li.clrScheme01 .btnTab {
  border-color: #ff8b2f;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme01.current .btnTab {
  background: #ff8b2f;
  color: #fff;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme02.current .btnTab {
  background: #008f73;
  color: #fff;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme03 .btnTab {
  border-color: #18c3e6;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme03.current .btnTab {
  background: #18c3e6;
  color: #fff;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme06 .btnTab {
  border-color: #18c3e6;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme06.current .btnTab {
  background: #18c3e6;
  color: #fff;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme07 .btnTab {
  border-color: #18c3e6;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme07.current .btnTab {
  background: #18c3e6;
  color: #fff;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme08.current .btnTab {
  background: #219ae5;
  color: #fff;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme08 .btnTab {
  border-color: #73c4d4;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme09 .btnTab {
  border-color: #73c4d4;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme09.current .btnTab {
  background: #18c3e6;
  color: #fff;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme10.current .btnTab {
  background: #219ae5;
  color: #fff;
}

/* Tabスタイル05 selected/hover */
.boxTab.tabStyle05 .boxTabBtn li.selected .btnTab {
  color: #fff;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab:hover {
  background-color: #f4f6ff;
}

.boxTab.tabStyle05 .boxTabBtn li .btnTab.btnTab-free:hover {
  background-color: #fff;
  color: #ff6565;
}

.boxTab.tabStyle05 .boxTabBtn li.selected .btnTab .icnArw {
  padding-left: 0;
}

/* Tabスタイル05 selected 背景カラー */
.boxTab.tabStyle05 .boxTabBtn li.clrBase.selected .btnTab {
  background: #192b5a;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme01.selected .btnTab {
  background: #ff8b2f;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme02.selected .btnTab {
  background: #53b78f;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme03.selected .btnTab {
  background: #18c3e6;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme07.selected .btnTab {
  background: #219ae5;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme08.selected .btnTab {
  background: #297686;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme09.selected .btnTab {
  background: #ffe33f;
}

.boxTab.tabStyle05 .boxTabBtn li.clrScheme10.selected .btnTab {
  background: #219ae5;
}

.boxSection .boxSectionMain,
.boxSection .boxSectionSide {
  float: left;
  width: 50%;
}

.boxSection .boxSectionMain.fltR,
.boxSection .boxSectionSide.fltR {
  width: 36.5%;
  padding-left: 50px;
}

.boxSection .boxSectionMain.fltL,
.boxSection .boxSectionSide.fltL {
  width: 63.5%;
}

.boxSection > p,
.boxSection .boxInner > p,
.boxSection .boxTxtArea > p {
  padding-top: 22px;
  line-height: 1.9em;
}

.boxSection > p:first-child,
.boxSection .boxInner > p:first-child,
.boxSection .boxTxtArea > p:first-child {
  padding-top: 0 !important;
}

.boxSection > .boxInner {
  padding-top: 35px;
  padding-bottom: 35px;
}

.specialtraining #reason .ttlStyle06,
.specialtraining #reason2 .ttlStyle06 {
  margin-bottom: 40px;
}

.bgClrScheme06 {
  background: #fffcf2;
}

.boxInner {
  width: 980px;
  margin: 0 auto;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .boxInner {
    width: 100%;
  }
}

.ttlStyle06 {
  margin: 20px 0;
  font-size: 1.7em;
  font-weight: bold;
  text-align: center;
  line-height: 1.75em;
}

.specialtraining .boxReason {
  margin: 0 20px;
  padding: 50px 0 50px 160px;
  border-top: 3px solid #1390a7;
  background-position: 20px 55px;
  background-repeat: no-repeat;
}

.specialtraining .boxReason .ttlStyle01 {
  color: #1f90a6;
  font-size: 1.28em;
}

.specialtraining .boxReason dl dd > p {
  padding-top: 10px;
  line-height: 1.7em;
}

strong,
noscript {
  font-weight: bold;
}

.specialtraining .boxReason .boxFile {
  max-width: 80%;
  margin: 20px 0 10px 0;
  padding: 10px 20px;
}

.boxFile {
  margin: 40px 0 0;
  padding: 20px;
  background: #fff;
}

.specialtraining .boxReason.boxReason01 {
  background-image: url(./img/img-num01.png);
}

.specialtraining .boxReason.boxReason02 {
  background-image: url(./img/img-num02.png);
}

.specialtraining .boxReason.boxReason03 {
  background-image: url(./img/img-num03.png);
}

.specialtraining .boxReason {
  margin: 0 20px;
  padding: 50px 0 50px 160px;
  border-top: 3px solid #1390a7;
  background-position: 20px 55px;
  background-repeat: no-repeat;
}

.specialtraining #reason .ttlStyle06,
.specialtraining #reason2 .ttlStyle06 {
  margin-bottom: 40px;
}

.icnFile.pdf {
  background-image: url(./img/icn-pdf.png);
}

.specialtraining .boxReason .boxFile {
  max-width: 80%;
  margin: 20px 0 10px 0;
  padding: 10px 20px;
}

.boxSection p a {
  text-decoration: underline;
}

.icnFile {
  padding: 13px 0 10px 38px;
  background-repeat: no-repeat;
  background-position: 0 10px;
}

.nursing-training .h-title01 a {
  background: #5CADE0;
  color: #fff;
  padding: 1em;
  border-radius: 5px;
  transition: all 0.3s ease;
}
.nursing-training .h-title01 a:hover {
  background: rgba(92, 173, 224, 0.8);
  color: #fff;
}

.boxFile .txtSmall {
  padding-left: 10px;
  color: #000;
  font-size: 0.85em;
  text-decoration: none;
}

.specialtraining #reason .boxMovieList,
.specialtraining #reason2 .boxMovieList {
  margin-top: 40px;
  margin-bottom: 20px;
  padding-right: 35px;
}

.specialtraining #reason .boxMovieList ul,
.specialtraining #reason2 .boxMovieList ul {
  margin-top: -25px;
  margin-left: -15px;
}

.specialtraining #reason .boxMovieList li,
.specialtraining #reason2 .boxMovieList li {
  padding-top: 25px;
  padding-left: 15px;
}

.boxColumnList > ul {
  letter-spacing: -0.4em;
}

.boxColumnList > ul > li {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  letter-spacing: normal;
  vertical-align: top;
}

.boxColumnList.columnThree > ul > li {
  width: 33.333%;
  padding: 45px 0 0 90px;
}
@media screen and (max-width: 767px) {
  .boxColumnList.columnThree > ul > li {
    width: 100%;
  }
}

.specialtraining #reason .boxMovieList .boxTxtArea,
.specialtraining #reason2 .boxMovieList .boxTxtArea {
  padding-top: 15px;
  font-size: 0.85em;
}

.specialtraining #reason .boxMovieList .ttlStyle06,
.specialtraining #reason2 .boxMovieList .ttlStyle06 {
  margin: 0 0 8px;
  font-size: 1.16em;
  line-height: 1.5;
  letter-spacing: 0.03em;
}

.specialtraining #reason .boxMovieList p,
.specialtraining #reason2 .boxMovieList p {
  padding-top: 0;
  line-height: 1.6;
}

.specialtraining #reason .boxMovieList .boxInfo,
.specialtraining #reason2 .boxMovieList .boxInfo {
  width: 66%;
}

.specialtraining #reason .boxMovieList .boxInfo .bgWhite,
.specialtraining #reason2 .boxMovieList .boxInfo .bgWhite {
  margin-left: 20px;
  padding: 25px;
  border: 3px solid #b20000;
}

.specialtraining #reason .boxMovieList .boxInfo .ttlStyle06,
.specialtraining #reason2 .boxMovieList .boxInfo .ttlStyle06 {
  margin-bottom: 15px;
  color: #b20000;
  text-align: left;
}

.specialtraining #reason .boxMovieList .boxInfo p,
.specialtraining #reason2 .boxMovieList .boxInfo p {
  margin-top: 10px;
}

.bgWhite {
  background-color: #fff;
}

.specialtraining .boxReason.boxReason02 {
  padding-bottom: 30px;
}

.specialtraining .boxReason .ttlStyle01 {
  color: #1f90a6;
  font-size: 1.28em;
}

.specialtraining .boxReason .ttlStyle01 {
  color: #1f90a6;
  font-size: 1.28em;
}

.specialtraining .boxReason dl dd > p {
  padding-top: 10px;
  line-height: 1.7em;
}

.specialtraining .boxReason dl dt {
  margin-bottom: 0.5em;
}

.ttlStyle01:first-child {
  margin-top: 0;
}

.fwB {
  font-weight: bold;
}

.specialtraining .boxReason dl dd > p {
  padding-top: 10px;
  line-height: 1.7em;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link {
  width: 780px;
  height: 100%;
  margin: 20px 0;
  padding: 20px 25px;
  border: 1px solid #00b8e0;
  background-color: #fff;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkTitle h5 {
  margin-bottom: 20px;
  font-weight: bold !important;
  font-size: 18px;
  color: #00b8e0;
  line-height: 1.5em;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList .reason03caption .reason02Time {
  width: 200px;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList .reason03caption .reason02Dld {
  width: 0;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul {
  letter-spacing: -0.4em;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li {
  display: block;
  overflow: hidden;
  padding: 3px 0 !important;
  border-top: 1px solid #ccc;
  font-size: 14px;
  line-height: 1.2em;
  letter-spacing: normal;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li.reason03caption {
  margin-bottom: 6px;
  border-top: none;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li.reason03caption + li {
  border-top: none;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li span.ttlSubject {
  font-weight: bold;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li span.ttlSubject .icnArw:before {
  margin-right: 2px;
  content: "▼";
  color: #00b8e0;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li.pdfLink {
  margin-bottom: 2px;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li a {
  color: #202020;
  text-decoration: underline !important;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li a:hover {
  color: #db0000;
  text-decoration: underline !important;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li > span {
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: middle;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li span.reason02Content {
  width: 400px;
  padding: 4px;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li span.reason02Time {
  width: 150px;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li span.reason02Dld {
  width: 110px;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li.pdfLink span.reason02Content img {
  margin-top: -1px;
}

.specialtraining .boxReason.boxReason02 .boxReason02Link .boxReason02LinkList ul li.pdfLink span.reason02Content > span {
  display: inline-block;
  margin-top: 6px;
}

.specialtraining ul li.txtComingsoon .reason02Content,
.specialtraining ul li.txtComingsoon .reason02Time,
.specialtraining ul li.txtComingsoon .reason02Dld {
  padding-top: 4px !important;
  padding-bottom: 1px !important;
  line-height: 1.5em;
}

.specialtraining p.att2019 {
  padding-top: 1em;
  font-size: 0.92em;
  line-height: 1.8em;
  border-top: 1px solid #ccc;
}

.form-select-title {
  display: block;
  font-size: 1.17em;
  margin-block-start: 1em;
  margin-block-end: 1em;
  margin-inline-start: 0px;
  margin-inline-end: 0px;
  font-weight: bold;
  unicode-bidi: isolate;
}
@media screen and (max-width: 767px) {
  .form-select-title {
    font-size: 16px;
    font-size: calc(1 * 1rem);
  }
}

ul.noticeList {
  list-style: disc;
  padding-left: 20px;
}

#mw_wp_form_mw-wp-form-4663 .form_table,
#mw_wp_form_mw-wp-form-4679 .form_table,
#mw_wp_form_mw-wp-form-4732 .form_table,
#mw_wp_form_mw-wp-form-4845 .form_table,
#mw_wp_form_mw-wp-form-4767 .form_table,
#mw_wp_form_mw-wp-form-4811 .form_table,
#mw_wp_form_mw-wp-form-5912 .form_table,
#mw_wp_form_mw-wp-form-5928 .form_table,
.mw_wp_form_input .form_table {
  margin-top: 40px;
  margin-inline: auto;
}
#mw_wp_form_mw-wp-form-4663 .howto_area,
#mw_wp_form_mw-wp-form-4679 .howto_area,
#mw_wp_form_mw-wp-form-4732 .howto_area,
#mw_wp_form_mw-wp-form-4845 .howto_area,
#mw_wp_form_mw-wp-form-4767 .howto_area,
#mw_wp_form_mw-wp-form-4811 .howto_area,
#mw_wp_form_mw-wp-form-5912 .howto_area,
#mw_wp_form_mw-wp-form-5928 .howto_area,
.mw_wp_form_input .howto_area {
  margin-top: 40px;
}
#mw_wp_form_mw-wp-form-4663 .howto_area .container p a,
#mw_wp_form_mw-wp-form-4679 .howto_area .container p a,
#mw_wp_form_mw-wp-form-4732 .howto_area .container p a,
#mw_wp_form_mw-wp-form-4845 .howto_area .container p a,
#mw_wp_form_mw-wp-form-4767 .howto_area .container p a,
#mw_wp_form_mw-wp-form-4811 .howto_area .container p a,
#mw_wp_form_mw-wp-form-5912 .howto_area .container p a,
#mw_wp_form_mw-wp-form-5928 .howto_area .container p a,
.mw_wp_form_input .howto_area .container p a {
  text-decoration: underline;
  transition: all 0.3s ease;
}
#mw_wp_form_mw-wp-form-4663 .howto_area .container p a:hover,
#mw_wp_form_mw-wp-form-4679 .howto_area .container p a:hover,
#mw_wp_form_mw-wp-form-4732 .howto_area .container p a:hover,
#mw_wp_form_mw-wp-form-4845 .howto_area .container p a:hover,
#mw_wp_form_mw-wp-form-4767 .howto_area .container p a:hover,
#mw_wp_form_mw-wp-form-4811 .howto_area .container p a:hover,
#mw_wp_form_mw-wp-form-5912 .howto_area .container p a:hover,
#mw_wp_form_mw-wp-form-5928 .howto_area .container p a:hover,
.mw_wp_form_input .howto_area .container p a:hover {
  text-decoration: none;
}
#mw_wp_form_mw-wp-form-4663 .howto_area dl,
#mw_wp_form_mw-wp-form-4679 .howto_area dl,
#mw_wp_form_mw-wp-form-4732 .howto_area dl,
#mw_wp_form_mw-wp-form-4845 .howto_area dl,
#mw_wp_form_mw-wp-form-4767 .howto_area dl,
#mw_wp_form_mw-wp-form-4811 .howto_area dl,
#mw_wp_form_mw-wp-form-5912 .howto_area dl,
#mw_wp_form_mw-wp-form-5928 .howto_area dl,
.mw_wp_form_input .howto_area dl {
  margin-top: 20px;
}
#mw_wp_form_mw-wp-form-4663 .year select,
#mw_wp_form_mw-wp-form-4663 .month select,
#mw_wp_form_mw-wp-form-4679 .year select,
#mw_wp_form_mw-wp-form-4679 .month select,
#mw_wp_form_mw-wp-form-4732 .year select,
#mw_wp_form_mw-wp-form-4732 .month select,
#mw_wp_form_mw-wp-form-4845 .year select,
#mw_wp_form_mw-wp-form-4845 .month select,
#mw_wp_form_mw-wp-form-4767 .year select,
#mw_wp_form_mw-wp-form-4767 .month select,
#mw_wp_form_mw-wp-form-4811 .year select,
#mw_wp_form_mw-wp-form-4811 .month select,
#mw_wp_form_mw-wp-form-5912 .year select,
#mw_wp_form_mw-wp-form-5912 .month select,
#mw_wp_form_mw-wp-form-5928 .year select,
#mw_wp_form_mw-wp-form-5928 .month select,
.mw_wp_form_input .year select,
.mw_wp_form_input .month select {
  width: 48%;
}
@media screen and (min-width: 767px) {
  #mw_wp_form_mw-wp-form-4663 .year select,
  #mw_wp_form_mw-wp-form-4663 .month select,
  #mw_wp_form_mw-wp-form-4679 .year select,
  #mw_wp_form_mw-wp-form-4679 .month select,
  #mw_wp_form_mw-wp-form-4732 .year select,
  #mw_wp_form_mw-wp-form-4732 .month select,
  #mw_wp_form_mw-wp-form-4845 .year select,
  #mw_wp_form_mw-wp-form-4845 .month select,
  #mw_wp_form_mw-wp-form-4767 .year select,
  #mw_wp_form_mw-wp-form-4767 .month select,
  #mw_wp_form_mw-wp-form-4811 .year select,
  #mw_wp_form_mw-wp-form-4811 .month select,
  #mw_wp_form_mw-wp-form-5912 .year select,
  #mw_wp_form_mw-wp-form-5912 .month select,
  #mw_wp_form_mw-wp-form-5928 .year select,
  #mw_wp_form_mw-wp-form-5928 .month select,
  .mw_wp_form_input .year select,
  .mw_wp_form_input .month select {
    width: 35%;
  }
}
#mw_wp_form_mw-wp-form-4663 .month,
#mw_wp_form_mw-wp-form-4679 .month,
#mw_wp_form_mw-wp-form-4732 .month,
#mw_wp_form_mw-wp-form-4845 .month,
#mw_wp_form_mw-wp-form-4767 .month,
#mw_wp_form_mw-wp-form-4811 .month,
#mw_wp_form_mw-wp-form-5912 .month,
#mw_wp_form_mw-wp-form-5928 .month,
.mw_wp_form_input .month {
  margin-left: 8px;
}

.howto_area, .offwhite_area {
  background: #f7f9ff;
  display: flex;
  flex-direction: column;
  margin: 40px calc(50% - 50vw) 40px;
  padding: 70px 0;
  width: 100vw;
}
@media screen and (max-width: 767px) {
  .howto_area, .offwhite_area {
    padding: 20px 10px;
  }
}

.container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}

.howto_area dl div, .offwhite_area dl div {
  color: #65abff;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.howto_area p, .offwhite_area p {
  font-size: 14px;
  font-size: 0.875rem;
  margin: 12px auto 0;
  max-width: 1200px;
  width: 60em;
}

.howto_area dl, .offwhite_area dl {
  width: 62em;
  max-width: 1200px;
  margin: auto;
}

.howto_area dl div, .offwhite_area dl div {
  color: #65abff;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.howto_area dl div dt, .offwhite_area dl div dt {
  font-size: 16px;
  font-size: 1rem;
  background: #fff;
  width: 100%;
}

@media screen and (min-width: 767px) {
  .howto_area dl div dt, .offwhite_area dl div dt {
    font-size: 30px;
    font-size: 1.875rem;
    width: auto;
  }
}
howto_area dl div dt span, .offwhite_area dl div dt span {
  font-size: 39px;
  font-size: 2.4375rem;
  background: #65abff;
  color: #fff;
  display: inline-block;
  height: 70px;
  margin-right: 20px;
  text-align: center;
  width: 70px;
}

.howto_area dl div dd, .offwhite_area dl div dd {
  font-size: 16px;
  font-size: 1rem;
  background: #fff;
  color: #333839;
  flex: 1;
  line-height: 70px;
  padding-right: 30px;
  text-align: right;
}

.howto_area dl div, .offwhite_area dl div {
  color: #65abff;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.howto_area dl div dt span, .offwhite_area dl div dt span {
  font-size: 39px;
  font-size: 2.4375rem;
  background: #65abff;
  color: #fff;
  display: inline-block;
  height: 70px;
  margin-right: 20px;
  text-align: center;
  width: 70px;
}

.howto_area h2 {
  font-size: 1.5em;
  font-weight: bold;
  margin-bottom: 20px;
}

.form-ladder-title {
  font-size: 32px;
  font-size: 2rem;
  color: #65abff;
  text-align: center;
  position: relative;
  font-weight: 700;
  margin-top: 20px;
}
.form-ladder-title::after {
  background: #65abff;
  bottom: -20px;
  content: "";
  height: 3px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  width: 130px;
}

.fax_application {
  border: 2px solid #ff6565;
  text-align: center;
  padding: 20px;
  margin-top: 40px;
}
.fax_application p {
  margin-bottom: 0;
}
.fax_application a {
  color: #ff6565;
  text-decoration: underline;
  font-weight: 500;
  font-size: 1em;
}
.fax_application a:hover {
  text-decoration: none;
}

.boxTxtArea table {
  background: #ccc;
  border-collapse: separate;
  border-spacing: 1px;
  font-size: 1.05em;
  line-height: 1.6em;
  margin: 5px 0 0;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .boxTxtArea table {
    font-size: 10px;
  }
}

.boxTxtArea table th,
.boxTxtArea table td {
  padding: 20px 15px;
  vertical-align: middle;
  text-align: center;
}

.boxTxtArea table th {
  background: #faf7f2;
  font-weight: bold;
  padding: 20px 15px;
  text-align: center;
  vertical-align: middle;
  width: 180px;
}
@media screen and (max-width: 767px) {
  .boxTxtArea table th {
    width: auto;
    padding: 10px 0;
  }
}

.boxTxtArea table td {
  font-size: 1.1em;
  background: #fff;
}
.boxTxtArea table td.tdbg {
  background: #faf7f2;
}

.boxTxtArea.priceTblParamedic table td {
  width: 28%;
  text-align: center;
}

.boxTxtArea table .txtSmall {
  font-size: 0.8em;
}

.boxTxtArea .ttlStyle01 {
  margin-bottom: 5px;
}

.boxTxtArea .txtCont {
  font-size: 0.98em;
}

.boxTxtArea table tr {
  border-top: 1px solid #ccc;
}
.boxTxtArea table tr td {
  padding: 20px 15px;
  vertical-align: middle;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .boxTxtArea table tr td {
    padding: 10px;
  }
}

.ttlStyle01:first-child {
  font-size: 24px;
  font-size: calc(1.5 * 1rem);
}

@media screen and (max-width: 767px) {
  .boxDotList {
    font-size: 16px;
    font-size: calc(1 * 1rem);
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}

.price-list .square-button.care-staff-price-button {
  max-width: 400px;
}
.price-list .square-button.paramedic-price-button {
  max-width: 550px;
}
.price-list .square-button.kantan-video-price-button {
  max-width: 520px;
}
.price-list .square-button.companionanimal-price-button {
  max-width: 430px;
}
.price-list .square-button.management_ladder-price-button {
  max-width: 430px;
}

.site-main {
  position: relative;
  min-height: 100vh;
  background-color: #fff;
  z-index: 1;
}

.page-about {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.service-page {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
@media (max-width: 768px) {
  .service-page {
    padding: 0 20px;
  }
}
@media (max-width: 480px) {
  .service-page {
    padding: 0 15px;
  }
}

.page-header {
  background: url("../../src/img/optimized/page-header-bg.png") no-repeat center center;
  background-size: cover;
  padding: 10px 0;
  margin: auto calc(50% - 50vw) 24px;
}
@media (max-width: 768px) {
  .page-header {
    padding: 10px 10px;
  }
}
.page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #02369A;
  margin-bottom: 40px;
  text-align: center;
}
@media (max-width: 768px) {
  .page-header .entry-title {
    font-size: 20px;
    text-align: left;
  }
}
.page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .page-header .entry-title {
    margin-bottom: 20px;
    font-size: 20px;
  }
}

.service-page-header {
  background: url("../../src/img/optimized/management_ladder/management_ladder-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 10px 0;
  margin: auto calc(50% - 50vw) 24px;
}
@media (max-width: 768px) {
  .service-page-header {
    padding-bottom: 200px;
  }
}
.service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #A81765;
  margin-bottom: 40px;
}
.service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .service-page-header .entry-title {
    margin-bottom: 20px;
    font-size: 20px;
  }
}

@media (max-width: 768px) {
  .type-page {
    padding: 0 10px;
  }
}

.about-purpose {
  margin-top: 33px;
  margin-bottom: 23px;
}
.about-purpose ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.about-purpose ul li {
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 1.5909090909;
  letter-spacing: 0;
}
.about-purpose ul li span {
  color: #FF6C00;
}

.about-purpose-text {
  line-height: 1.75;
}

.login-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.login-grid {
  margin-bottom: 40px;
}

.login-grid-row {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 20px;
}
@media (max-width: 768px) {
  .login-grid-row {
    grid-template-columns: repeat(1, 1fr);
  }
}
.login-grid-row .login-grid-container {
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
  .login-grid-row .login-grid-container {
    grid-template-columns: repeat(1, 1fr);
  }
}
.login-grid-row .login-grid-container-single {
  grid-template-columns: repeat(1, 1fr);
}

.login-grid-row-single {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px;
}
@media (max-width: 768px) {
  .login-grid-row-single {
    grid-template-columns: repeat(1, 1fr);
  }
}
.login-grid-row-single .login-grid-container {
  grid-template-columns: repeat(1, 1fr);
}

.login-grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media (max-width: 768px) {
  .login-grid-container {
    grid-template-columns: repeat(1, 1fr);
  }
}

.login-grid-item a {
  display: block;
  transition: all 0.3s ease;
}
.login-grid-item a:hover {
  transition: all 0.3s ease;
  transform: translateY(-5px);
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
.login-grid-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-login .login-section {
  padding: 80px 0;
  display: flex;
  align-items: center;
}
@media (max-width: 768px) {
  .page-login .login-section {
    padding: 40px 0;
  }
}
.page-login .login-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}
.page-login .login-header {
  text-align: center;
  margin-bottom: 40px;
}
.page-login .login-header .login-title h2 {
  color: #fff;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.4;
  margin: 0;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
@media (max-width: 768px) {
  .page-login .login-header .login-title h2 {
    font-size: 1.4rem;
  }
}
.page-login .loginbox {
  background: #fff;
  border-radius: 16px;
  padding: 40px;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .page-login .loginbox {
    padding: 30px 20px;
  }
}
.page-login .loginbox .login-form {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
.page-login .loginbox .login-form .form-group {
  margin-bottom: 25px;
}
.page-login .loginbox .login-form .form-group:last-child {
  margin-bottom: 0;
}
.page-login .loginbox .login-form .url-input-group {
  display: flex;
  align-items: center;
  border: 2px solid #e1e5e9;
  border-radius: 12px;
  background: #f8f9fa;
  transition: all 0.3s ease;
  overflow: hidden;
}
.page-login .loginbox .login-form .url-input-group.focused {
  border-color: #667eea;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}
.page-login .loginbox .login-form .url-input-group .url-prefix,
.page-login .loginbox .login-form .url-input-group .url-suffix {
  padding: 16px 12px;
  background: #e9ecef;
  color: #6c757d;
  font-weight: 500;
  font-size: 0.9rem;
  border: none;
  white-space: nowrap;
}
.page-login .loginbox .login-form .url-input-group .subdomain-input {
  flex: 1;
  border: none;
  padding: 16px 20px;
  font-size: 1rem;
  background: transparent;
  outline: none;
}
.page-login .loginbox .login-form .url-input-group .subdomain-input::placeholder {
  color: #adb5bd;
}
.page-login .loginbox .login-form .login-button {
  width: 100%;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: #fff;
  border: none;
  padding: 16px 24px;
  border-radius: 12px;
  font-size: 1.1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.page-login .loginbox .login-form .login-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(102, 126, 234, 0.3);
}
.page-login .loginbox .login-form .login-button:active {
  transform: translateY(0);
}
.page-login .loginbox .login-form .login-button .material-icons {
  font-size: 1.2rem;
}
.page-login .loginbox .login-form .login-button .button-text {
  font-size: 1rem;
}
.page-login .loginbox .login-form button[type=submit] {
  background: #FF6C00;
  border: 1px solid #FF6C00;
  color: #fff;
  padding: 16px 24px;
  border-radius: 12px;
  transition: all 0.3s ease;
  cursor: pointer;
  font-size: 1rem;
  font-weight: 600;
}
.page-login .loginbox .login-form button[type=submit]:hover:not(:disabled) {
  background: #fff;
  color: #FF6C00;
  transition: all 0.3s ease;
}
.page-login .loginbox .login-form button[type=submit]:disabled, .page-login .loginbox .login-form button[type=submit].disabled {
  background: #ccc;
  border-color: #ccc;
  color: #999;
  cursor: not-allowed;
  opacity: 0.6;
}
.page-login .loginbox .login-form button[type=submit]:disabled:hover, .page-login .loginbox .login-form button[type=submit].disabled:hover {
  background: #ccc;
  color: #999;
  transform: none;
}
.page-login .login-notice {
  text-align: center;
}
.page-login .login-notice p {
  color: #666;
  font-size: 0.95rem;
  margin: 0;
  line-height: 1.5;
}
.page-login .login-notice p a {
  color: #FF6C00;
  text-decoration: underline;
  font-weight: 500;
  transition: all 0.3s ease;
}
.page-login .login-notice p a:hover {
  color: #FF6C00;
  text-decoration: none;
}

.page-downloads-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 40px 20px;
}
@media (max-width: 768px) {
  .page-downloads-container {
    padding: 20px 15px;
  }
}

.page-downloads-section {
  margin-bottom: 60px;
}
@media (max-width: 768px) {
  .page-downloads-section {
    margin-bottom: 40px;
  }
}

.page-downloads-list-item {
  list-style: none;
  padding: 0;
  margin: 0 0 40px 0;
}
.page-downloads-list-item li {
  position: relative;
  padding: 15px 20px 15px 50px;
  margin-bottom: 10px;
  background-color: #f8f9fa;
  border-radius: 8px;
  transition: all 0.3s ease;
}
.page-downloads-list-item li::before {
  content: "";
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23FF6C00"><path d="M14,2H6A2,2 0 0,0 4,4V20A2,2 0 0,0 6,22H18A2,2 0 0,0 20,20V8L14,2M18,20H6V4H13V9H18V20M10,17L8,15L10,13V14H14V16H10V17Z"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
}
.page-downloads-list-item li:hover {
  background-color: #e9ecef;
  transform: translateX(5px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.page-downloads-list-item li:last-child {
  margin-bottom: 0;
}
.page-downloads-list-item a {
  display: block;
  color: #222;
  text-decoration: none;
  font-size: 16px;
  line-height: 1.6;
  transition: color 0.3s ease;
}
@media (max-width: 768px) {
  .page-downloads-list-item a {
    font-size: 14px;
  }
}
.page-downloads-list-item a:hover {
  color: #FF6C00;
}
.page-downloads-list-item a[target=_blank]::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 8px;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%2302369A"><path d="M14,3V5H17.59L7.76,14.83L9.17,16.24L19,6.41V10H21V3M19,19H5V5H12V3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V12H19V19Z"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  transition: transform 0.3s ease;
}
.page-downloads-list-item a:hover::after {
  transform: translate(2px, -2px);
}
@media (max-width: 768px) {
  .page-downloads-list-item li {
    padding: 12px 15px 12px 40px;
    margin-bottom: 8px;
  }
  .page-downloads-list-item li::before {
    left: 10px;
    width: 20px;
    height: 20px;
  }
}

.boxAdobe {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 20px;
  background-color: #FFF9E5;
  border-radius: 8px;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .boxAdobe {
    flex-direction: column;
    text-align: center;
    gap: 15px;
    padding: 15px;
    margin-bottom: 30px;
  }
}
.boxAdobe p {
  flex: 1;
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: #666;
}
@media (max-width: 768px) {
  .boxAdobe p {
    font-size: 13px;
  }
}
.boxAdobe span {
  flex-shrink: 0;
}
.boxAdobe span a {
  display: block;
  transition: opacity 0.3s ease;
}
.boxAdobe span a:hover {
  opacity: 0.8;
}
.boxAdobe span img {
  display: block;
  height: 40px;
  width: auto;
}
@media (max-width: 768px) {
  .boxAdobe span img {
    height: 35px;
  }
}

.page-archive .page-header {
  background: url("../../src/img/optimized/page-header-bg.png") no-repeat center center;
  background-size: cover;
  padding: 10px 0;
  margin: auto calc(50% - 50vw) 24px;
}
@media (max-width: 768px) {
  .page-archive .page-header {
    padding: 10px 10px;
  }
}
.page-archive .page-header .entry-header {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
.page-archive .page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #02369A;
  margin-bottom: 40px;
  text-align: center;
}
@media (max-width: 768px) {
  .page-archive .page-header .entry-title {
    font-size: 20px;
    text-align: left;
    margin-bottom: 20px;
  }
}
.page-archive .news-grid {
  box-shadow: none;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}
@media (max-width: 768px) {
  .page-archive .news-grid {
    padding: 0 15px;
  }
}

.privacy-policy .privacy-policy-header .h-title02 {
  font-size: 24px;
}

.paragraph {
  margin-bottom: 1rem;
}
.paragraph h3 {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #02369A;
}

.access-block {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
@media (max-width: 768px) {
  .access-block {
    padding: 0 20px;
  }
}
@media (max-width: 480px) {
  .access-block {
    padding: 0 15px;
  }
}

.page-access .access-block {
  margin-bottom: 20px;
}
.page-access .access-block iframe {
  width: 100%;
  height: 450px;
}
@media (max-width: 768px) {
  .page-access .access-block iframe {
    height: 300px;
  }
}
.page-access .address-block {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
@media (max-width: 768px) {
  .page-access .address-block {
    padding: 0 20px;
  }
}
@media (max-width: 480px) {
  .page-access .address-block {
    padding: 0 15px;
  }
}
.page-access .address-block p {
  line-height: 1.7142857143;
  font-size: 14px;
}
.page-access .address-block p strong {
  font-size: 1rem;
  margin-bottom: 0.5em;
  display: inline-block;
  line-height: 1.4375;
}

.another-link {
  display: grid;
  grid-template-columns: repeat(2, 270px);
  gap: 20px;
  max-width: 1000px;
  margin: 80px auto;
}
@media screen and (max-width: 768px) {
  .another-link {
    grid-template-columns: repeat(1, 1fr);
    max-width: 75%;
    gap: 30px;
  }
}
.another-link .another-link-item a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #02369A;
  border-bottom: 1px solid #02369A;
  padding-bottom: 20px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4375;
  transition: all 0.3s ease;
}
.another-link .another-link-item a:after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  transition: all 0.3s ease;
  background-image: url("../../src/img/optimized/mega-menu-link-arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right center;
}
.another-link .another-link-item:hover a {
  color: #f60;
  border-bottom: 1px solid #f60;
  padding-bottom: 20px;
  transition: all 0.3s ease;
}
.another-link .another-link-item:hover a:after {
  transform: translateX(5px);
  background-image: url("../../src/img/optimized/mega-menu-link-arrow-hover.svg");
}

.page-history .history-block {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
.page-history .history-timeline {
  max-width: 1000px;
  margin: 3rem auto;
  padding: 0 2rem;
}
@media (max-width: 768px) {
  .page-history .history-timeline {
    padding: 0 1rem;
    margin: 2rem auto;
  }
}
.page-history .timeline-list {
  position: relative;
  padding: 0;
  margin: 0;
  list-style: none;
}
.page-history .timeline-list::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 20px;
  bottom: 20px;
  width: 2px;
  background-color: #dbeafe;
}
@media (max-width: 768px) {
  .page-history .timeline-list::before {
    left: 15px;
  }
}
.page-history .timeline-item {
  position: relative;
  padding-left: 60px;
  margin-bottom: 2.5rem;
}
@media (max-width: 768px) {
  .page-history .timeline-item {
    padding-left: 45px;
    margin-bottom: 2rem;
  }
}
.page-history .timeline-item::before {
  content: "";
  position: absolute;
  left: 12px;
  top: 0;
  width: 16px;
  height: 16px;
  background-color: #3b82f6;
  border-radius: 50%;
  border: 3px solid #fff;
  box-shadow: 0 0 0 2px #dbeafe;
  z-index: 1;
}
@media (max-width: 768px) {
  .page-history .timeline-item::before {
    left: 7px;
    width: 14px;
    height: 14px;
  }
}
.page-history .timeline-item:last-child {
  margin-bottom: 0;
}
.page-history .timeline-date {
  font-size: 1rem;
  font-weight: 700;
  color: #1e40af;
  margin-bottom: 0.5rem;
  line-height: 1.2;
}
@media (max-width: 768px) {
  .page-history .timeline-date {
    font-size: 0.875rem;
    margin-bottom: 0.375rem;
  }
}
.page-history .timeline-content {
  background-color: #f9fafb;
  padding: 1.25rem;
  border-radius: 0.5rem;
  border: 1px solid #e5e7eb;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .page-history .timeline-content {
    padding: 1rem;
  }
}
.page-history .timeline-content:hover {
  background-color: #fff;
  border-color: #93c5fd;
  box-shadow: 0 2px 8px rgba(59, 130, 246, 0.1);
}
.page-history .timeline-content p {
  margin: 0;
  font-size: 0.9375rem;
  line-height: 1.7;
  color: #374151;
}
@media (max-width: 768px) {
  .page-history .timeline-content p {
    font-size: 0.875rem;
    line-height: 1.6;
  }
}
.page-history .timeline-content br {
  display: block;
  margin: 0.25rem 0;
}

@media (max-width: 768px) {
  .page-single {
    padding: 0 20px;
  }
}
@media (max-width: 480px) {
  .page-single {
    padding: 0 15px;
  }
}
.page-single p {
  line-height: 1.75;
}
.page-single .left-block-title--single {
  border-left: 10px solid #02369A;
}

.basic-policy-against-antisocial-forces .basic-policy-against-antisocial-forces-content {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
.basic-policy-against-antisocial-forces .basic-policy-against-antisocial-forces-content {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
.basic-policy-against-antisocial-forces .basic-policy-against-antisocial-forces-content dl dt {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #02369A;
}
.basic-policy-against-antisocial-forces .basic-policy-against-antisocial-forces-content dl dd {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0;
  color: #374151;
  margin-left: 40px;
  margin-bottom: 20px;
}

.promotion-of-digitization .promotion-of-digitization-content {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
.promotion-of-digitization .promotion-of-digitization-content dl dt {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #02369A;
}
.promotion-of-digitization .promotion-of-digitization-content dd {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0;
  color: #374151;
  margin-left: 20px;
  margin-bottom: 20px;
}

@media (min-width: 769px) {
  main .side-block {
    position: sticky;
    top: 20px;
    height: fit-content;
    align-self: start;
    z-index: 10;
  }
  .archive-casestudy .side-block {
    position: sticky;
    top: 20px;
    height: fit-content;
    align-self: start;
    z-index: 10;
  }
}
@media (max-width: 768px) {
  main.archive-casestudy {
    padding: 0 10px;
  }
}
main.archive-casestudy .left-block-title--casestudy {
  border-left: 10px solid #02369A;
}
main.archive-casestudy .sub-title {
  color: #02369A;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
}
main.archive-casestudy .entry-title {
  color: #02369A;
}
main.archive-casestudy .container {
  display: grid;
  grid-template-columns: 250px 1fr;
  gap: 50px;
  align-items: start;
}
@media (max-width: 768px) {
  main.archive-casestudy .container {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 769px) {
  main.archive-casestudy .container .side-block {
    position: sticky;
    top: 20px;
    height: fit-content;
    align-self: start;
  }
}
main.archive-casestudy .container .side-block .side-block-inner a {
  display: flex;
  padding: 18px 13px;
  transition: all 0.3s ease;
  line-height: 1.5;
  font-size: 1rem;
  font-weight: 400;
  align-items: center;
  justify-content: space-between;
}
main.archive-casestudy .container .side-block .side-block-inner a::after {
  content: "";
  background-image: url(../../src/img/optimized/casestudy/link-arrow-default.svg);
  width: 18px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: all 0.3s ease;
}
main.archive-casestudy .container .side-block .side-block-inner a:hover {
  color: #FF6C00;
}
main.archive-casestudy .container .side-block .side-block-inner a:hover::after {
  background-image: url(../../src/img/optimized/casestudy/link-arrow-hover.svg);
  transition: all 0.3s ease;
  transform: translateX(5px);
}
main.archive-casestudy .container .side-block .side-block-inner a.current {
  background-color: #02369A;
  color: #fff;
  pointer-events: none;
}
main.archive-casestudy .container .side-block .side-block-inner a.current::after {
  background-image: url(../../src/img/optimized/casestudy/link-arrow-current.svg);
}
main.archive-casestudy .recent-casestudy {
  margin-top: 40px;
}
main.archive-casestudy .recent-casestudy-item-wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media (max-width: 768px) {
  main.archive-casestudy .recent-casestudy-item-wrap {
    grid-template-columns: repeat(1, 1fr);
  }
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a {
  display: flex;
  flex-direction: column;
  border: 1px solid #02369A;
  padding: 10px 0;
  border-radius: 10px;
  position: relative;
  gap: 0;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a .prefucture-title {
  display: inline-block;
  background-color: #02369A;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  padding: 2px 8px;
  text-align: center;
  margin: auto;
  margin-bottom: 10px;
  width: auto;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a img {
  width: 100%;
  height: 100%;
  max-height: 111px;
  object-fit: cover;
  object-position: top center;
  margin-bottom: 10px;
}
@media (max-width: 768px) {
  main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a img {
    max-height: none;
  }
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a .hospital-name {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.024em;
  color: #02369A;
  text-align: center;
  margin-bottom: 10px;
  min-height: 60px;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a .hospital-contents {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  padding: 0 10px;
  margin-bottom: 0;
  min-height: 64px;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a .category-title {
  display: inline-block;
  color: #fff;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  padding: 4px 12px;
  border-radius: 20px;
  text-align: center;
  margin: 0 auto;
  width: fit-content;
  margin-bottom: 10px;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a .category-new-nurse {
  background-color: #60AD1F;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a .category-clinical-ladder {
  background-color: #02369A;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a .category-management-ladder {
  background-color: #A81765;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a .category-specific-training {
  background-color: #096763;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a .category-required-training {
  background-color: #853C96;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a .category-default {
  background-color: #02369A;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(2, 54, 154, 0.5);
  border-radius: 10px;
  pointer-events: none;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.3s ease;
}
main.archive-casestudy .recent-casestudy-item-wrap .recent-casestudy-item a:hover::after {
  opacity: 1;
}

@media (max-width: 768px) {
  main.single-casestudy {
    padding: 0 10px;
  }
}
main.single-casestudy .left-block-title--casestudy {
  border-left: 10px solid #02369A;
}
main.single-casestudy .sub-title {
  color: #02369A;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 20px;
}
main.single-casestudy .container {
  display: grid;
  grid-template-columns: 250px 1fr;
  gap: 50px;
  align-items: start;
}
@media (max-width: 768px) {
  main.single-casestudy .container {
    grid-template-columns: 1fr;
  }
}
@media (min-width: 769px) {
  main.single-casestudy .container .side-block {
    position: sticky;
    top: 20px;
    height: fit-content;
    align-self: start;
  }
}
main.single-casestudy .container .side-block .side-block-inner a {
  display: flex;
  padding: 18px 13px;
  transition: all 0.3s ease;
  line-height: 1.5;
  font-size: 1rem;
  font-weight: 400;
  align-items: center;
  justify-content: space-between;
}
main.single-casestudy .container .side-block .side-block-inner a::after {
  content: "";
  background-image: url(../../src/img/optimized/casestudy/link-arrow-default.svg);
  width: 18px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: all 0.3s ease;
}
main.single-casestudy .container .side-block .side-block-inner a:hover {
  color: #FF6C00;
}
main.single-casestudy .container .side-block .side-block-inner a:hover::after {
  background-image: url(../../src/img/optimized/casestudy/link-arrow-hover.svg);
  transition: all 0.3s ease;
  transform: translateX(5px);
}
main.single-casestudy .container .side-block .side-block-inner a.current {
  background-color: #02369A;
  color: #fff;
}
main.single-casestudy .container .side-block .side-block-inner a.current::after {
  background-image: url(../../src/img/optimized/casestudy/link-arrow-current.svg);
}
main.single-casestudy .hospital-info {
  display: flex;
  gap: 0;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  main.single-casestudy .hospital-info {
    flex-direction: column;
    flex-direction: column-reverse;
  }
}
main.single-casestudy .hospital-info .hospital-info-text {
  background-color: #F8F8F8;
  padding: 15px;
  border-radius: 7px;
  flex: 1;
}
@media (max-width: 768px) {
  main.single-casestudy .hospital-info .hospital-info-text {
    order: 1;
  }
}
main.single-casestudy .hospital-info .hospital-info-img {
  width: 273px;
}
@media (max-width: 768px) {
  main.single-casestudy .hospital-info .hospital-info-img {
    width: 100%;
  }
}
main.single-casestudy .hospital-info .prefecture-label {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  background-color: #02369A;
  color: #fff;
  padding: 1.5px 21.65px;
  margin-bottom: 10px;
  display: inline-block;
  text-align: center;
}
main.single-casestudy .hospital-info .medical-corporation {
  font-size: 1rem;
  margin-bottom: 10px;
  letter-spacing: 0.04em;
  line-height: 1.69;
  font-weight: 400;
}
main.single-casestudy .hospital-info .hospital-name {
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.024em;
  margin-bottom: 20px;
}
main.single-casestudy .hospital-info .hospital-website-link {
  position: relative;
  color: #02369A;
  text-decoration: none;
  transition: color 0.3s;
}
main.single-casestudy .hospital-info .hospital-website-link:hover {
  color: #FF6C00;
}
main.single-casestudy .hospital-info .hospital-website-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  height: 2px;
  background: #FF6C00;
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
main.single-casestudy .hospital-info .hospital-website-link:hover::after {
  width: 100%;
}
main.single-casestudy .remarks-section {
  margin-bottom: 20px;
}
main.single-casestudy .content-title {
  color: #02369A;
  font-size: 1.4375rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 40px;
}
main.single-casestudy .post-navigation .nav-list {
  display: grid;
  place-items: center;
}
main.single-casestudy .post-navigation .nav-list a {
  background-color: #02369A;
  color: #fff;
  padding: 17.5px 25.203124px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 10px;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-decoration: none;
  transition: all 0.3s ease;
  margin-top: 54px;
}
main.single-casestudy .post-navigation .nav-list a::after {
  content: "";
  background-image: url(../../src/img/optimized/casestudy/link-arrow-current.svg);
  width: 18px;
  height: 18px;
  background-size: contain;
  transition: all 0.3s ease;
}
main.single-casestudy .post-navigation .nav-list a:hover {
  background-color: #FF6C00;
  color: #fff;
  transition: all 0.3s ease;
}
main.single-casestudy .post-navigation .nav-list a:hover::after {
  background-image: url(../../src/img/optimized/casestudy/link-arrow-hover.svg);
  transform: translateX(5px);
  transition: all 0.3s ease;
}
main.single-casestudy .subjects-section {
  margin-top: 60px;
}
main.single-casestudy .subjects-section .h4-point-title {
  border-bottom: 1px solid #02369A;
  padding-bottom: 10px;
  margin-bottom: 20px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
main.single-casestudy .subjects-section ul {
  margin-bottom: 20px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
@media screen and (max-width: 768px) {
  main.single-casestudy .subjects-section ul {
    grid-template-columns: repeat(1, 1fr);
  }
}
main.single-casestudy .subjects-section ul li {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-indent: -1.7em;
  padding-left: 1.7em;
}
main.single-casestudy .subjects-section ul li::before {
  content: "●";
  margin-right: 10px;
}
main.single-casestudy .wp-block-heading {
  font-weight: 700;
}
main.single-casestudy .personal-info {
  margin-top: 0;
  padding: 8px 10px;
  margin-bottom: 40px;
}
main.single-casestudy .personal-info-item {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}
main.single-casestudy .personal-info-item .post {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 0;
}
main.single-casestudy .personal-info-item .name {
  font-size: 1.125rem;
  font-weight: 700;
}
main.single-casestudy .personal-info-item .name::after {
  content: "さん";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-left: 10px;
}

@layer components {
  .btn {
    @apply px-4 py-2 rounded-md font-medium transition-colors duration-200 focus:outline-none focus:ring-2 focus:ring-offset-2;
  }
  .btn-primary {
    @apply btn bg-primary-600 text-white hover:bg-primary-700 focus:ring-primary-500;
  }
  .btn-secondary {
    @apply btn bg-secondary-200 text-secondary-800 hover:bg-secondary-300 focus:ring-secondary-500;
  }
  .btn-outline {
    @apply btn border-2 border-primary-600 text-primary-600 hover:bg-primary-600 hover:text-white focus:ring-primary-500;
  }
  .card {
    @apply bg-white rounded-lg shadow-md overflow-hidden;
  }
  .card-header {
    @apply px-6 py-4 border-b border-secondary-200;
  }
  .card-body {
    @apply px-6 py-4;
  }
  .card-footer {
    @apply px-6 py-4 bg-secondary-50 border-t border-secondary-200;
  }
  .container-custom {
    @apply max-w-7xl mx-auto px-4 sm:px-6 lg:px-8;
  }
  .container-narrow {
    @apply max-w-4xl mx-auto px-4 sm:px-6 lg:px-8;
  }
  .section {
    @apply py-16 lg:py-24;
  }
  .section-header {
    @apply text-center mb-12;
  }
  .text-gradient {
    @apply bg-gradient-to-r from-primary-600 to-primary-800 bg-clip-text text-transparent;
  }
  .hover-lift {
    @apply transition-transform duration-300 hover:-translate-y-1;
  }
  .hover-shadow {
    @apply transition-shadow duration-300 hover:shadow-lg;
  }
  .focus-visible {
    @apply focus:outline-none focus:ring-2 focus:ring-primary-500 focus:ring-offset-2;
  }
  .wp-block-group {
    @apply my-8;
  }
  .wp-block-image {
    @apply my-6;
  }
  .wp-block-quote {
    @apply border-l-4 border-primary-500 pl-6 italic my-6;
  }
  .post-meta {
    @apply text-sm text-secondary-600 space-x-4;
  }
  .post-meta a {
    @apply hover:text-primary-600 transition-colors;
  }
  .pagination {
    @apply flex justify-center space-x-2 mt-8;
  }
  .pagination a,
  .pagination span {
    @apply px-3 py-2 border border-secondary-300 rounded-md text-sm;
  }
  .pagination a {
    @apply hover:bg-primary-50 hover:border-primary-300 hover:text-primary-600 transition-colors;
  }
  .pagination .current {
    @apply bg-primary-600 border-primary-600 text-white;
  }
}
.red-color {
  color: #FF0000;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.p-20 {
  padding: 20px !important;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

.hidden-pc {
  display: none;
}
@media (max-width: 768px) {
  .hidden-pc {
    display: block;
  }
}

.hidden-sp {
  display: block;
}
@media (max-width: 768px) {
  .hidden-sp {
    display: none;
  }
}

.visible-pc {
  display: block;
}
@media (max-width: 768px) {
  .visible-pc {
    display: none;
  }
}

.visible-sp {
  display: none;
}
@media (max-width: 768px) {
  .visible-sp {
    display: block;
  }
}

body {
  color: #222;
}

a {
  display: inline-block;
}

p {
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  #page {
    overflow-x: hidden;
  }
}

.img-link {
  transition: transform 0.3s ease;
}
.img-link:hover {
  transform: translateY(-5px);
  transition: transform 0.3s ease;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.site-header {
  background-color: #fff;
  padding: 15px 10px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
  border-radius: 0 0 10px 10px;
  max-width: 1180px;
}
@media screen and (max-width: 768px) {
  .site-header {
    border-radius: 0;
    padding: 15px 12px;
  }
}

.hero-section {
  margin-bottom: 30px;
}

.header-container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.header-main {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 15px;
  width: 100%;
}

.header-box {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 768px) {
  .header-box {
    gap: 0;
  }
}

.logo-section {
  flex-shrink: 0;
  padding: 5px;
}

@media (max-width: 768px) {
  .logo-container {
    padding-top: 4px;
  }
}

.header-right {
  display: flex;
  align-items: flex-start;
  gap: 24px;
}

.nav-primary {
  display: flex;
  gap: 16px;
}
.nav-primary a {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: relative;
  color: #5A5A5A;
  text-decoration: none;
  font-size: 0.875rem;
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-weight: 500;
}
.nav-primary a::before {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 17.5px solid transparent;
  border-right: 17.5px solid transparent;
  border-top: 15px solid #FF6C00;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
  background: none;
  width: auto;
}
.nav-primary a:hover {
  color: #FF6C00;
}
.nav-primary a:hover::before {
  opacity: 1;
  visibility: visible;
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 16px;
}

.btn-info,
.btn-success {
  background: #02369A;
  color: #fff;
  border-radius: 5px;
  font-weight: bold;
  font-size: 1rem;
  padding: 3px 15px;
  border: none;
  transition: background 0.2s;
  cursor: pointer;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.btn-info:hover,
.btn-success:hover {
  background: #FF6C00;
}

.btn-login {
  width: 80px;
  height: 80px;
  background: #FF6C00;
  color: #fff;
  border-radius: 5px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 1rem;
  border: none;
  cursor: pointer;
  gap: 4px;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
  transition: transform 0.3s ease;
}
.btn-login:hover {
  transform: translateY(-5px);
  transition: transform 0.3s ease;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.48);
}

.btn-login .login-icon {
  width: 36px;
  height: 36px;
  margin-bottom: 0;
  fill: #fff;
  margin-top: 5px;
}

.search-container {
  position: relative;
  width: 100%;
}

.search-input {
  width: 100%;
  border: 1px solid #808080;
  padding: 5px 48px 5px 15px;
  border-radius: 20px;
  font-size: 0.875rem;
  box-sizing: border-box;
}

.search-button {
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  height: 28px;
  width: 28px;
}

.search-button svg {
  display: block;
  width: 28px;
  height: 28px;
}

.test-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 40px;
  color: #02369A;
  text-align: center;
  margin-bottom: 30px;
}

.nav-secondary-container {
  display: flex;
}
.nav-secondary-container .nav-secondary-link {
  width: 158px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: relative;
  color: #5A5A5A;
  text-decoration: none;
  font-size: 1rem;
  font-weight: 500;
  transition: color 0.3s ease;
  border-right: 1px solid #808080;
}
.nav-secondary-container .nav-secondary-link:last-child {
  border-right: none;
}
.nav-secondary-container .nav-secondary-link:hover {
  color: #FF6C00;
}

.header-logo {
  margin-top: 7px;
}

.header-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header-nav-search {
  display: flex;
  align-items: center;
  gap: 24px;
}

.header-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.services-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  justify-content: center;
  gap: 10px;
  max-width: 1000px;
}
@media (max-width: 768px) {
  .services-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 480px) {
  .services-grid {
    grid-template-columns: 1fr;
  }
}

.service-card {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.site-main {
  position: relative;
  min-height: 100vh;
  background-color: #fff;
  z-index: 1;
}

.container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.page-about {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.service-page {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}
@media (max-width: 768px) {
  .service-page {
    padding: 0 20px;
  }
}
@media (max-width: 480px) {
  .service-page {
    padding: 0;
  }
}

.service-image-link {
  display: block;
  width: 100%;
  height: 100%;
  transition: transform 0.3s ease;
}
.service-image-link:hover {
  transform: translateY(-5px);
  transition: transform 0.3s ease;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

/* Swiperスライダーの高さ調整 */
.swiper,
.swiper-wrapper {
  height: 600px;
}
@media (max-width: 768px) {
  .swiper,
  .swiper-wrapper {
    height: 400px;
  }
}
@media (max-width: 480px) {
  .swiper,
  .swiper-wrapper {
    height: 300px;
  }
}

.swiper-slide {
  height: 600px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
}
@media (max-width: 768px) {
  .swiper-slide {
    height: 400px;
  }
}
@media (max-width: 480px) {
  .swiper-slide {
    height: 300px;
  }
}

.slide-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  /* picture要素内のimgタグにも適用 */
}
.slide-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.slide-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0);
  z-index: 1;
}

/* メガメニュー */
.nav-secondary {
  position: relative;
}

.mega-menu-overlay {
  display: none; /* 青いオーバーレイを非表示 */
}

.mega-menu-container {
  position: absolute;
  top: 100%;
  left: -3%;
  width: 84.3vw;
  z-index: 999;
  max-width: 1180px;
}

.mega-menu {
  position: absolute;
  top: 18px;
  left: 0;
  background-color: #02369A;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  padding: 40px 40px;
  border-top: 1px solid #e5e7eb;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  width: 1180px;
}
.mega-menu#mega-menu-about {
  top: -32px;
}
.mega-menu#mega-menu-about .secondary-title {
  padding: 10px 0;
}
.mega-menu#mega-menu-faq {
  top: -32px;
}
.mega-menu#mega-menu-faq .secondary-title {
  padding: 10px 0;
}
.mega-menu#mega-menu-contact {
  top: -32px;
}
.mega-menu#mega-menu-contact .secondary-title {
  padding: 10px 0;
}

.mega-menu.active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.mega-menu-content {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
  display: flex;
  gap: 0;
}
@media (max-width: 1024px) {
  .mega-menu-content {
    gap: 40px;
    padding: 0 20px;
  }
}
@media (max-width: 768px) {
  .mega-menu-content {
    flex-direction: column;
    gap: 30px;
    padding: 0 15px;
  }
}
@media (max-width: 480px) {
  .mega-menu-content {
    gap: 20px;
    padding: 0 10px;
  }
}

.mega-menu-column {
  flex: 1;
  min-width: 200px;
}
@media (max-width: 768px) {
  .mega-menu-column {
    min-width: auto;
  }
}

.mega-menu-column-secondary {
  display: flex;
  gap: 15px;
}
.mega-menu-column-secondary .mega-menu-title {
  background: none;
  padding: 0;
  color: #02369A;
  margin-bottom: 0;
}

.secondary-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 10px;
  padding: 10px 20px;
  width: 150px;
  flex-basis: 150px;
  height: auto;
  gap: 10px;
}
.secondary-title .mega-menu-title {
  font-size: 20px;
  line-height: 1.4761904762;
  margin-bottom: 0;
}

.mega-menu-wrap {
  background: #fff;
  padding: 20px 30px;
  border-radius: 10px;
  width: 1000px;
}
@media (max-width: 1024px) {
  .mega-menu-wrap {
    padding: 18px 25px;
  }
}
@media (max-width: 768px) {
  .mega-menu-wrap {
    padding: 15px 20px;
  }
}
@media (max-width: 480px) {
  .mega-menu-wrap {
    padding: 12px 15px;
  }
}

.mega-menu-wrap-secondary {
  background: transparent;
  width: 1000px;
}
.mega-menu-wrap-secondary.mega-menu-wrap {
  padding: 0;
}

.mega-menu-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 20px;
  padding: 10px 20px;
  background-color: #02369A;
  text-align: center;
}
@media (max-width: 1024px) {
  .mega-menu-title {
    font-size: 1.1rem;
    margin-bottom: 18px;
    padding: 8px 16px;
  }
}
@media (max-width: 768px) {
  .mega-menu-title {
    font-size: 1rem;
    margin-bottom: 15px;
    padding: 6px 12px;
  }
}
@media (max-width: 480px) {
  .mega-menu-title {
    font-size: 0.95rem;
    margin-bottom: 12px;
    padding: 5px 10px;
  }
}

.mega-menu-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: inline-grid;
  column-gap: 1em;
  grid-auto-flow: column;
  grid-template-rows: repeat(6, auto);
}
@media (max-width: 768px) {
  .mega-menu-list {
    display: block;
    column-gap: 0;
  }
}

.mega-menu-list-secondary {
  background: #fff;
  border-radius: 10px;
  padding: 10px 20px;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 23px;
}
.mega-menu-list-secondary .mega-menu-link {
  width: 240px;
}

.mega-menu-list-price {
  flex-direction: row;
}

.mega-menu-list li {
  margin-bottom: 12px;
}
@media (max-width: 768px) {
  .mega-menu-list li {
    margin-bottom: 8px;
  }
}
@media (max-width: 480px) {
  .mega-menu-list li {
    margin-bottom: 6px;
  }
}

.mega-menu-list-about {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
  grid-auto-flow: row;
}
.mega-menu-list-about .mega-menu-link {
  width: 245px;
}

.mega-menu-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #02369A;
  text-decoration: none;
  font-size: 1rem;
  font-weight: 500;
  padding: 8px 0;
  transition: color 0.3s ease;
  position: relative;
  border-bottom: 1px solid #02369A;
  width: 300px;
}
@media (max-width: 1024px) {
  .mega-menu-link {
    max-width: 280px;
    font-size: 0.95rem;
  }
}
@media (max-width: 768px) {
  .mega-menu-link {
    max-width: 100%;
    font-size: 0.9rem;
    padding: 6px 0;
  }
}
@media (max-width: 480px) {
  .mega-menu-link {
    max-width: 100%;
    font-size: 0.85rem;
    padding: 5px 0;
  }
}
.mega-menu-link::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url("../../src/img/optimized/mega-menu-link-arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: transform 0.3s ease;
  flex-shrink: 0;
  margin-left: 8px;
}
@media (max-width: 768px) {
  .mega-menu-link::after {
    width: 14px;
    height: 14px;
    margin-left: 6px;
  }
}
@media (max-width: 480px) {
  .mega-menu-link::after {
    width: 12px;
    height: 12px;
    margin-left: 4px;
  }
}
.mega-menu-link:hover {
  color: #FF6C00;
  border-bottom: 1px solid #FF6C00;
}
.mega-menu-link:hover::after {
  transform: translateX(5px);
  background-image: url("../../src/img/optimized/mega-menu-link-arrow-hover.svg");
}

.mega-menu-link-button {
  width: 300px;
  text-align: center;
}

/* ナビゲーションリンクのホバー状態 */
.nav-secondary-link[data-mega-menu] {
  position: relative;
}

.nav-secondary-link[data-mega-menu]::after {
  content: none;
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 2px;
  transition: width 0.3s ease;
}

.nav-secondary-link[data-mega-menu]:hover::after,
.nav-secondary-link[data-mega-menu].active::after {
  width: 100%;
}

/* 下向き三角の追加 */
.nav-secondary-link[data-mega-menu]::before {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 17.5px solid transparent;
  border-right: 17.5px solid transparent;
  border-top: 15px solid #FF6C00;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* ホバー時のみ三角を表示 */
.nav-secondary-link[data-mega-menu]:hover::before {
  opacity: 1;
  visibility: visible;
}

.mega-menu-top {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
}

.mega-menu-columns {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.mega-menu-column {
  flex: 1;
  min-width: 200px;
}

/* デスクトップ版での最大幅設定 */
.mega-menu-column:nth-child(1) {
  width: 620px;
  flex-basis: 620px;
}

.mega-menu-column:nth-child(2) {
  width: 300px;
  flex-basis: 300px;
}

/* モバイル対応 */
@media (max-width: 768px) {
  .mega-menu-content {
    flex-direction: column;
    gap: 30px;
    padding: 0 20px;
  }
  .mega-menu {
    padding: 20px 0;
  }
  .mega-menu-title {
    font-size: 1rem;
    margin-bottom: 15px;
  }
  .mega-menu-link {
    font-size: 0.875rem;
    padding: 6px 0;
  }
  .mega-menu-columns {
    flex-direction: column;
    gap: 20px;
  }
  .mega-menu-column {
    min-width: auto;
  }
  .mega-menu-column:nth-child(1) {
    width: 100%;
    max-width: 620px;
  }
  .mega-menu-column:nth-child(2) {
    width: 100%;
    max-width: 300px;
  }
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../../assets/fonts/noto-sans-jp-regular.woff2") format("woff2"), url("../../assets/fonts/noto-sans-jp-regular.woff") format("woff");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../../assets/fonts/noto-sans-jp-medium.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../../assets/fonts/noto-sans-jp-bold.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
.services-section {
  margin-bottom: 50px;
}

.h2-title {
  font-size: 30px;
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  letter-spacing: 0.05em;
  line-height: 1.7333333333;
  font-weight: 500;
  text-align: center;
  margin-bottom: 24px;
}

.news-section {
  padding: 60px 0;
  background-color: #f8f9fa;
  background-image: url("../../src/img/optimized/page-bg.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.page-archive .news-grid {
  box-shadow: none;
}

.news-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.news-grid {
  display: grid;
  border: none;
  border-radius: 10px;
  padding: 20px 19px;
  gap: 0;
  background-color: #fff;
  box-shadow: 0px 0px 6px 0px rgba(0, 0, 0, 0.16);
}

.news-category {
  margin-bottom: 20px;
}

.news-category-label {
  width: 140px;
  height: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 500;
}
.news-category-label.news-category-release {
  background-color: #FF6C00;
}
.news-category-label.news-category-e-learning {
  background-color: #FFE6F3;
}
.news-category-label.news-category-zoom {
  background-color: #D0FFD3;
}
.news-category-label.news-category-onlineseminar {
  background-color: #6FA6FF;
}

.news-category ul {
  display: flex;
  flex-wrap: nowrap;
  gap: 17px;
  list-style: none;
  padding: 0;
  margin: 0;
  justify-content: center;
}

.news-category-link {
  display: inline-block;
  padding: 8px 16px;
  background-color: #fff;
  color: #333;
  text-decoration: none;
  border: 1px solid #AAA8A8;
  transition: all 0.3s ease;
  font-size: 0.875rem;
  font-weight: 500;
  width: 178px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.news-category-link:hover {
  background-color: #02369A;
  color: #fff;
  border-color: #02369A;
}
.news-category-link.active {
  background-color: #02369A;
  color: #fff;
  border-color: #02369A;
}

.news-list {
  margin-bottom: 30px;
}

.news-list-inner {
  margin: 0;
  padding: 0;
}

.news-item {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 8px;
  align-items: center;
  padding: 20px 0;
  border-bottom: 1px solid #e0e0e0;
}
.news-item:last-child {
  border-bottom: none;
}

.news-item-archive {
  grid-template-columns: 120px 1fr;
}

.news-date {
  font-size: 0.875rem;
  color: #666;
  font-weight: 500;
  margin: 0;
}

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

.news-title {
  margin: 0 0 0 2em;
}
@media (max-width: 768px) {
  .news-title {
    margin: 0 0 0 0;
  }
}
.news-title a {
  color: #333;
  text-decoration: none;
  font-size: 0.875rem;
  line-height: 1.5;
  transition: color 0.3s ease;
  position: relative;
}
.news-title a::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 2px;
  background-color: #FF6C00;
  transition: width 0.3s ease;
}
.news-title a:hover {
  color: #FF6C00;
}
.news-title a:hover::after {
  width: 100%;
}

.news-more {
  text-align: right;
}
.news-more a {
  display: inline-block;
  border-bottom: 1px solid #02369A;
  font-weight: 500;
  transition: all 0.3s ease;
  font-size: 1.125em;
}
.news-more a::after {
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  background-image: url(../../src/img/optimized/mega-menu-link-arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: transform 0.3s ease;
  flex-shrink: 0;
  margin-left: 8px;
}
.news-more a:hover {
  color: #FF6C00;
  border-bottom: 1px solid #FF6C00;
  transition: all 0.3s ease;
}
.news-more a:hover::after {
  transform: translateX(5px);
  background-image: url("../../src/img/optimized/mega-menu-link-arrow-hover.svg");
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
  .news-section {
    padding: 40px 0;
  }
  .news-container {
    padding: 0 15px;
  }
  .news-grid {
    gap: 30px;
  }
  .news-category ul {
    gap: 10px;
  }
  .news-category-link {
    padding: 6px 12px;
    font-size: 0.8rem;
  }
  .news-item {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 15px 0;
  }
  .news-date {
    font-size: 0.8rem;
  }
  .news-category {
    font-size: 0.7rem;
    padding: 3px 6px;
    align-self: start;
  }
  .news-title a {
    font-size: 0.8rem;
  }
  .news-more a {
    padding: 10px 20px;
    font-size: 0.875rem;
  }
}
@media (max-width: 480px) {
  .news-section {
    padding: 30px 0;
  }
  .news-container {
    padding: 0 10px;
  }
  .news-grid {
    gap: 0;
  }
  .news-category ul {
    flex-direction: column;
    align-items: center;
    gap: 8px;
  }
  .news-category-link {
    padding: 8px 16px;
    font-size: 0.75rem;
  }
  .news-item {
    padding: 12px 0;
  }
  .news-date {
    font-size: 0.75rem;
  }
  .news-category {
    font-size: 0.65rem;
    padding: 2px 4px;
  }
  .news-title a {
    font-size: 0.75rem;
  }
  .news-more a {
    padding: 8px 16px;
    font-size: 0.8rem;
  }
}
/* サービスについて */
.h3-title {
  color: #fff;
  background-color: #02369A;
  padding: 10px 20px;
  font-size: 21px;
  font-weight: 700;
  margin-bottom: 30px;
  text-align: center;
  letter-spacing: 0.24em;
  line-height: 1.5;
}

.h4-title {
  font-size: 21px;
  font-weight: 500;
  margin-bottom: 23px;
  text-align: center;
  letter-spacing: 0.24em;
  line-height: 1.5;
  align-items: center;
  display: flex;
  width: 100%;
}
.h4-title::before, .h4-title::after {
  background-color: #707070;
  border-radius: 1px;
  content: "";
  flex-grow: 1;
  height: 2px;
}
.h4-title::before {
  margin-right: 15px; /* 文字との余白 */
}
.h4-title::after {
  margin-left: 15px; /* 文字との余白 */
}

.service-about-section {
  padding: 60px 0;
}
@media (max-width: 768px) {
  .service-about-section {
    padding: 40px 10px;
  }
}
@media (max-width: 480px) {
  .service-about-section {
    padding: 20px 10px;
  }
}

.login-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.service-about-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.service-about-grid {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
}

.service-about-forwhom {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .service-about-forwhom {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 480px) {
  .service-about-forwhom {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

.service-about-forwhom-item {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 0;
}
.service-about-forwhom-item a {
  margin-bottom: 20px;
  transition: all 0.3s ease;
}
.service-about-forwhom-item a:hover {
  transform: translateY(-5px);
  transition: transform 0.3s ease;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.48);
}

.service-about-forwhom-item--big a {
  margin-bottom: 20px;
  transition: all 0.3s ease;
  border: 1px solid rgba(0, 0, 0, 0.4);
  border-radius: 5px;
}

.service-about-forwhom-image-inner {
  margin-top: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 15px 13px;
}
.service-about-forwhom-image-inner .h4-title {
  display: inline-block;
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 0;
  letter-spacing: 0.04em;
  line-height: 1.57;
}
.service-about-forwhom-image-inner .h4-title::before, .service-about-forwhom-image-inner .h4-title::after {
  content: none;
}
.service-about-forwhom-image-inner .h5-title {
  font-size: 21px;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.5;
  margin-bottom: 0;
}
.service-about-forwhom-image-inner p {
  font-size: 14px;
  font-weight: 500;
  margin-bottom: 0;
  letter-spacing: 0.04em;
  line-height: 1.57;
}

.service-about-header {
  margin-bottom: 23px;
  width: 100%;
}

.service-vexonbook-section {
  padding: 60px 0;
  background-image: url(../../src/img/optimized/page-bg.jpg);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@media (max-width: 768px) {
  .service-vexonbook-section {
    padding: 40px 10px;
  }
}
@media (max-width: 480px) {
  .service-vexonbook-section {
    padding: 20px 10px;
  }
}

.service-vexonbook-header p {
  text-align: center;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.24em;
  margin-bottom: 23px;
}
@media (max-width: 768px) {
  .service-vexonbook-header p {
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.24em;
    margin-bottom: 17px;
  }
}

.service-vexonbook-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.service-vexonbook-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  margin-bottom: 30px;
}

.service-vexonbook-item {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
.service-vexonbook-item a {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  color: inherit;
}

.service-vexonbook-image {
  width: 100%;
  height: 300px; /* 固定の高さを設定 */
  object-fit: cover; /* アスペクト比を保ちながらカバー */
  object-position: center; /* 中央に配置 */
  margin-bottom: 10px;
  transition: all 0.3s ease;
}
.service-vexonbook-image:hover {
  transform: translateY(-5px);
  transition: transform 0.3s ease;
}
.service-vexonbook-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* products30の画像だけ特定サイズに設定 */
.service-vexonbook-item:first-child .service-vexonbook-image {
  width: 295px;
  height: 300px;
  /* レスポンシブ時は他の画像と同じサイズに */
}
.service-vexonbook-item:first-child .service-vexonbook-image img {
  width: 295px;
  height: 300px;
}
@media (max-width: 768px) {
  .service-vexonbook-item:first-child .service-vexonbook-image {
    width: 100%;
    height: 150px;
  }
  .service-vexonbook-item:first-child .service-vexonbook-image img {
    width: 100%;
    height: 100%;
  }
}
@media (max-width: 480px) {
  .service-vexonbook-item:first-child .service-vexonbook-image {
    height: 180px;
  }
}

.service-vexonbook-item-title {
  width: 100%;
}
.service-vexonbook-item-title p {
  margin: 0 0 5px 0;
  font-size: 0.875rem;
  line-height: 1.4;
}
.service-vexonbook-item-title p:last-child {
  font-weight: 600;
  color: #000;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
  .service-vexonbook-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
  }
  .service-vexonbook-image {
    height: 150px;
  }
  .service-vexonbook-item-title p {
    font-size: 0.8rem;
  }
}
@media (max-width: 480px) {
  .service-vexonbook-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
  .service-vexonbook-image {
    height: 222px;
  }
  .service-vexonbook-item-title p {
    font-size: 0.75rem;
  }
}
.yellow-underline {
  text-decoration: underline;
  text-decoration-thickness: 0.5em;
  text-decoration-color: #FFF615;
  text-underline-offset: -0.2em;
  text-decoration-skip-ink: none;
}

.orange-text {
  color: #FF6C00;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}

.service-team_support-section {
  padding: 60px 0;
}
@media (max-width: 768px) {
  .service-team_support-section {
    padding: 40px 10px;
  }
}
@media (max-width: 480px) {
  .service-team_support-section {
    padding: 20px 10px;
  }
}

.service-team_support-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.16);
  border-radius: 20px;
  padding: 30px 20px;
  background-color: #fff;
}
@media (max-width: 768px) {
  .service-team_support-container {
    padding: 20px 10px;
  }
}

.service-team_support-header .h2-title {
  color: #02369A;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.6666666667;
  letter-spacing: 0.024em;
  margin-bottom: 17px;
}
@media (max-width: 768px) {
  .service-team_support-header .h2-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.6666666667;
    letter-spacing: 0.024em;
    margin-bottom: 17px;
  }
}

.service-team_support-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 0;
  flex-direction: column;
}
@media (max-width: 768px) {
  .service-team_support-item {
    flex-direction: column;
  }
}
.service-team_support-item .service-team_support-text {
  background-color: #2563eb;
  color: #fff;
  text-align: center;
  width: 100%;
  padding: 20px 10px;
  border-radius: 0 0 20px 20px;
}

.service-team_support-image {
  width: 100%;
  height: 100%;
  flex-shrink: 0;
  object-fit: cover;
}
@media (max-width: 768px) {
  .service-team_support-image {
    flex-basis: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
  }
}

.h3-title2 {
  font-size: 24px;
  font-weight: 700;
  color: #fff;
  line-height: 1.6666666667;
  letter-spacing: 0.024em;
  margin-bottom: 17px;
}
@media (max-width: 768px) {
  .h3-title2 {
    font-size: 18px;
    line-height: 1.7;
    letter-spacing: 0.024em;
    margin-bottom: 10px;
  }
}

.service-team_support-list {
  list-style: none;
  padding-left: 1.5em;
  background-color: #fff;
  padding: 20px 30px 20px 50px;
  text-align: left;
  max-width: 92%;
  margin-inline: auto;
}
@media (max-width: 768px) {
  .service-team_support-list {
    padding: 20px 10px 20px 30px;
  }
}
.service-team_support-list li {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.024em;
  color: #000;
  position: relative;
}
.service-team_support-list li::before {
  position: absolute;
  top: 50%;
  left: -30px;
  transform: translateY(-50%) rotate(45deg);
  width: 0.8em;
  height: 0.8em;
  background-color: #FF6C02;
  content: "";
}
@media (max-width: 768px) {
  .service-team_support-list li::before {
    left: -20px;
  }
}
@media (max-width: 768px) {
  .service-team_support-list li {
    font-size: 14px;
    line-height: 1.7;
    letter-spacing: 0.024em;
    margin-bottom: 10px;
  }
}

.footer-cta-section {
  background-color: #F4F4F4;
  padding: 60px 0;
}

.footer-cta-container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media (max-width: 768px) {
  .footer-cta-container {
    grid-template-columns: 1fr;
    padding: 0 10px;
  }
}

.footer-cta-item {
  background-color: #fff;
  padding: 20px 30px;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.16);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
}
.footer-cta-item h2 {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.6666666667;
  margin-bottom: 0;
}
.footer-cta-item p {
  font-weight: 400;
}

.footer-cta-item-1 a {
  background-color: #02369A;
  color: #fff;
  padding: 10px 20px;
  text-decoration: none;
  font-size: 16px;
  font-weight: 700;
  transition: all 0.3s ease;
}
.footer-cta-item-1 a:hover {
  background-color: #e55a00;
  color: #fff;
}

.footer-cta-item-2 a.footer-cta-link {
  background-color: #e55a00;
  color: #fff;
  padding: 10px 20px;
  text-decoration: none;
  font-size: 16px;
  font-weight: 700;
  transition: all 0.3s ease;
}
.footer-cta-item-2 a.footer-cta-link:hover {
  background-color: #02369A;
  color: #fff;
}
.footer-cta-item-2 .footer-cta-tel {
  text-align: center;
}
.footer-cta-item-2 a.footer-cta-tel-link {
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.6666666667;
  letter-spacing: 0.024em;
  color: #000;
  text-decoration: none;
  transition: all 0.3s ease;
}
.footer-cta-item-2 a.footer-cta-tel-link:hover {
  color: #e55a00;
}

.footer-cta-item-3 a {
  background-color: #02369A;
  color: #fff;
  padding: 10px 20px;
  text-decoration: none;
  font-size: 16px;
  font-weight: 700;
  transition: all 0.3s ease;
}
.footer-cta-item-3 a:hover {
  background-color: #e55a00;
  color: #fff;
}

.site-header.header-service {
  max-width: 1000px;
  margin: 0 auto;
  padding: 10.48437404px 0 17.48437404px;
  box-shadow: 0 2px 1px 0 rgba(0, 0, 0, 0.16);
  border-radius: 0;
}
@media (max-width: 768px) {
  .site-header.header-service {
    padding: 17px 12px 10px 17px;
  }
}
.header-main {
  align-items: center;
  position: relative;
}

.header-service-logo {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.header-nav {
  flex: 1;
}
.header-nav .header-nav-list {
  display: flex;
  align-items: center;
  gap: 24px;
  justify-content: flex-end;
}
.header-nav .header-nav-list .header-nav-item a {
  text-decoration: none;
  color: #222;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.69;
  letter-spacing: 0.05em;
  position: relative;
}

/* header-nav-linkの下向き三角を追加 */
.header-nav-link[data-mega-menu]::before {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 17.5px solid transparent;
  border-right: 17.5px solid transparent;
  border-top: 15px solid #FF6C00;
  opacity: 0;
  transition: opacity 0.3s ease;
}

/* ホバー時とアクティブ時に表示 */
.header-nav-link[data-mega-menu]:hover::before {
  opacity: 1;
}

/* header-service.php用のメガメニューコンテナ幅調整 */
.mega-menu-container-services {
  max-width: 1000px;
  margin: 0 auto;
}
.mega-menu-container-services .mega-menu {
  width: 1080px;
}

.entry-header {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
  height: 415px;
}

.page-header .entry-header {
  height: auto;
}

.service-page-header {
  background: url("../../src/img/optimized/management_ladder/management_ladder-header-bg.png") no-repeat bottom right;
  background-size: cover;
  padding: 0;
  margin: auto calc(50% - 50vw) 24px;
  height: 415px;
}
@media (max-width: 768px) {
  .service-page-header {
    padding-bottom: 200px;
  }
}
.service-page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #A81765;
  margin-bottom: 40px;
}
.service-page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .service-page-header .entry-title {
    margin-bottom: 20px;
    font-size: 20px;
  }
}

.page-header {
  background: url("../../src/img/optimized/page-header-bg.png") no-repeat center center;
  background-size: cover;
  padding: 10px 0;
  margin: auto calc(50% - 50vw) 24px;
}
@media (max-width: 768px) {
  .page-header {
    padding: 10px 10px;
  }
}
.page-header .entry-title {
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #02369A;
  margin-bottom: 40px;
  text-align: center;
}
@media (max-width: 768px) {
  .page-header .entry-title {
    font-size: 20px;
    text-align: left;
  }
}
.page-header .entry-title span {
  font-size: 25px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  .page-header .entry-title {
    margin-bottom: 20px;
    font-size: 20px;
  }
}

.breadcrumbs {
  font-size: 10px;
  font-family: hiragino-kaku-gothic-pron, sans-serif;
  letter-spacing: 0.05em;
  line-height: 1.8;
  font-weight: 500;
  color: #5A5A5A;
}
.breadcrumbs a {
  color: #5A5A5A;
  text-decoration: none;
}
.breadcrumbs a:hover {
  text-decoration: underline;
}

.point-box {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 13px;
  max-width: 582px;
}
@media screen and (max-width: 768px) {
  .point-box {
    width: 100%;
    margin: 0 auto;
  }
}
.point-box .point-box-item img {
  width: 100%;
  height: auto;
}

.button-box {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 19px;
  margin-bottom: 60px;
}
@media (max-width: 768px) {
  .button-box {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
  }
}
.button-box .button-box-item {
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #222;
}
.button-box .button-box-item::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10%;
  width: 25px;
  height: 25px;
}
.button-box .button-box-item:hover {
  transition: all 0.3s ease;
}
.button-box .button-box-item img {
  width: 100%;
  height: auto;
}
.button-box .button-box-item--apply {
  border: 2px solid #FE5F58;
  border-radius: 10px;
  padding: 10px 20px;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.3636363636;
  letter-spacing: 0.05em;
  position: relative;
}
.button-box .button-box-item--apply:hover {
  background-color: #FE5F58;
  color: #fff;
}
.button-box .button-box-item--apply::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10%;
  width: 25px;
  height: 25px;
  background-image: url("../../src/img/optimized/management_ladder/icon-arrow-button-apply.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
  transition: all 0.3s ease;
}
.button-box .button-box-item--apply:hover::after {
  transform: translateY(-50%) translateX(10px);
}
.button-box .button-box-item--session {
  border: 2px solid #539F6D;
  border-radius: 10px;
  padding: 10px 20px;
  font-size: 22px;
  font-weight: 500;
  color: #539F6D;
  position: relative;
}
.button-box .button-box-item--session:hover {
  background-color: #539F6D;
  color: #fff;
}
.button-box .button-box-item--session::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10%;
  width: 25px;
  height: 25px;
  background-image: url("../../src/img/optimized/management_ladder/icon-arrow-button-session.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
  transition: all 0.3s ease;
}
.button-box .button-box-item--session:hover::after {
  transform: translateY(-50%) translateX(10px);
}
.button-box .button-box-item--trial {
  border: 2px solid #6FA6FF;
  border-radius: 10px;
  padding: 10px 20px;
  font-size: 22px;
  font-weight: 500;
  position: relative;
}
.button-box .button-box-item--trial:hover {
  background-color: #6FA6FF;
  color: #fff;
}
.button-box .button-box-item--trial::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10%;
  width: 25px;
  height: 25px;
  background-image: url("../../src/img/optimized/management_ladder/icon-arrow-trial.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
  transition: all 0.3s ease;
}
.button-box .button-box-item--trial:hover::after {
  transform: translateY(-50%) translateX(10px);
}

.left-block-title {
  font-size: 30px;
  padding-left: 15px;
  letter-spacing: 0.05em;
  line-height: 1.73;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .left-block-title {
    font-size: 22px;
  }
}

.summery-block {
  margin-bottom: 80px;
}
.summery-block p {
  margin-bottom: 20px;
  letter-spacing: 0.04em;
  line-height: 1.69;
  font-weight: 400;
}

.button-box-item {
  transition: all 0.3s ease;
}
.button-box-item:hover {
  transition: all 0.3s ease;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}

.button-box-item-img {
  transition: all 0.3s ease;
}
.button-box-item-img:hover {
  transform: translateY(-5px);
  transition: all 0.3s ease;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}

.point-title-box-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .point-title-box-wrap {
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }
}

.point-title-box {
  margin-bottom: 20px;
}

.point-title-box-item {
  width: 40px;
  height: 40px;
}
@media screen and (max-width: 768px) {
  .point-title-box-item {
    position: relative;
    background-color: #FF6C00;
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: bold;
    font-size: 20px;
    width: 50%;
    height: 40px;
  }
  .point-title-box-item img {
    display: none;
  }
  .point-title-box-item::after {
    content: "1";
  }
}

@media screen and (max-width: 768px) {
  .point-title-box-item--clinical-ladder--no1::after {
    content: "1";
  }
  .point-title-box-item--clinical-ladder--no2::after {
    content: "2";
  }
  .point-title-box-item--clinical-ladder--no3::after {
    content: "3";
  }
  .point-title-box-item--management_ladder--no4::after {
    content: "4";
  }
  .point-title-box-item:has(img[src*=point-icon-no1])::after {
    content: "1";
  }
  .point-title-box-item:has(img[src*=point-icon-no2])::after {
    content: "2";
  }
  .point-title-box-item:has(img[src*=point-icon-no3])::after {
    content: "3";
  }
  .point-title-box-item:has(img[src*=point-icon-no4])::after {
    content: "4";
  }
}
.point-title {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.56;
}
@media screen and (max-width: 768px) {
  .point-title {
    font-size: 18px;
  }
}

.h4-point-title {
  font-size: 21px;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 1.5;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .h4-point-title {
    font-size: 18px;
  }
}
.h4-point-title::before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background-color: #FF6C00;
  border-radius: 0;
  margin-right: 10px;
}

.features-box {
  margin-bottom: 60px;
}

.sample-video-box-wrap {
  padding: 80px 0;
  margin: auto calc(50% - 50vw);
}
@media screen and (max-width: 768px) {
  .sample-video-box-wrap {
    padding: 40px 10px;
  }
}
.sample-video-box-wrap .features-box {
  position: relative;
  z-index: 1;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.sample-video-box {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media screen and (max-width: 768px) {
  .sample-video-box {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
  }
}
.sample-video-box .sample-video-item img {
  width: 100%;
}

.sample-video-item {
  width: 100%;
  border-radius: 10px;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  padding: 20px;
  background-color: #fff;
}
.sample-video-item iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  margin-bottom: 8px;
}
.sample-video-item h5 {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.69;
  letter-spacing: 0.04em;
  margin-bottom: 0;
}
.sample-video-item dl dt {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.69;
  letter-spacing: 0.04em;
  margin-bottom: 0;
}
.sample-video-item dl dd {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.69;
  letter-spacing: 0.04em;
  margin-bottom: 0;
}

.price-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 16px;
  table-layout: fixed;
}

.price-table th, .price-table td {
  border: 1px solid #ddd;
  padding: 8px;
  text-align: center;
  width: 33.333%;
}

.price-table th {
  background: #FFF9E5;
  font-weight: 700;
}

.price-list {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.69;
  letter-spacing: 0.04em;
  margin-bottom: 0;
}

.price-list-item {
  margin-bottom: 30px;
}

.price-box-item {
  margin-bottom: 60px;
}

.setplan {
  background-color: #FFFDE0;
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 24px 20px;
  border-radius: 15px;
  margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .setplan {
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }
}
.setplan img {
  width: 200px;
  flex-basis: 200px;
}
@media screen and (max-width: 768px) {
  .setplan img {
    width: 90%;
    flex-basis: 90%;
  }
}
.setplan p {
  flex: 1;
  font-size: 21px;
  font-weight: 500;
  line-height: 1.93;
  letter-spacing: 0.02em;
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  .setplan p {
    font-size: 16px;
  }
}

.set-plan-text {
  text-align: center;
  color: #A81765;
  font-size: 21px;
  font-weight: 700;
  line-height: 1.62;
  letter-spacing: 0.02em;
  margin-bottom: 62px;
}
@media screen and (max-width: 768px) {
  .set-plan-text {
    font-size: 18px;
    text-align: left;
  }
}

.square-button {
  width: 100%;
  max-width: 340px;
  height: 65px;
  border-radius: 10px;
  margin: 0 auto;
}
.square-button .square-button-item {
  width: 100%;
  height: 100%;
  background-color: #A81765;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.65;
  letter-spacing: 0.02em;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: all 0.3s ease;
  position: relative;
  border-radius: 10px;
  padding: 0 60px;
  border: 1px solid #A81765;
}
.square-button .square-button-item::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 30px;
  width: 25px;
  height: 25px;
  background-image: url("../../src/img/optimized/link-arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  transition: all 0.3s ease;
}
.square-button .square-button-item:hover {
  background-color: #fff;
  color: #A81765;
  transition: all 0.3s ease;
}
.square-button .square-button-item:hover::after {
  transform: translateY(-50%) translateX(10px);
}
.square-button .square-button-item--price {
  padding: 0 30px 0 0;
}
.square-button .square-button-item--voice {
  padding: 0 32px 0 0;
}

.features-block-management_ladder {
  margin-bottom: 144px;
}
@media (max-width: 768px) {
  .features-block-management_ladder {
    margin-bottom: 60px;
  }
}

.features-block {
  margin-bottom: 80px;
}

.footer-service-block {
  background-color: #F4F4F4;
  padding: 114px 0;
  margin: 100px calc(50% - 50vw) 0;
}
@media screen and (max-width: 768px) {
  .footer-service-block {
    padding: 40px 10px;
  }
}

.footer-service-block-list {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 35px;
}
@media (max-width: 768px) {
  .footer-service-block-list {
    flex-direction: column;
    gap: 10px;
    padding: 0 10px;
    flex-wrap: nowrap; /* 折り返さない */
  }
}

.footer-service-block-list-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 3px solid #707070;
  border-radius: 10px;
  background-color: #fff;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.16);
  gap: 10px;
  flex: 1; /* 均等な幅を確保 */
  min-width: 0; /* flexアイテムの最小幅を0に */
}
@media (max-width: 768px) {
  .footer-service-block-list-item {
    padding: 20px 10px; /* 内側のパディングを調整 */
    width: 90%;
  }
}
@media (max-width: 768px) {
  .footer-service-block-list-item img {
    width: 20%;
    height: auto;
  }
}
.footer-service-block-list-item .title {
  font-size: 30px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.03em;
}
@media (max-width: 768px) {
  .footer-service-block-list-item .title {
    font-size: 22px;
    margin-bottom: 0;
  }
}
@media (max-width: 480px) {
  .footer-service-block-list-item .title {
    font-size: 22px;
  }
}
.footer-service-block-list-item .title--apply {
  color: #FE5F58;
  display: flex;
  align-items: center;
  gap: 10px;
  transition: all 0.3s ease;
}
.footer-service-block-list-item .title--apply img {
  width: 32px;
  height: 32px;
}
@media (max-width: 768px) {
  .footer-service-block-list-item .title--apply img {
    width: 32px;
    height: 32px;
  }
}
.footer-service-block-list-item .title--session {
  color: #418357;
  display: flex;
  align-items: center;
  gap: 10px;
  transition: all 0.3s ease;
}
.footer-service-block-list-item .title--session img {
  width: 32px;
  height: 32px;
}
.footer-service-block-list-item .title--trial {
  color: #6FA6FF;
  display: flex;
  align-items: center;
  gap: 10px;
  transition: all 0.3s ease;
}
.footer-service-block-list-item .title--trial img {
  width: 32px;
  height: 32px;
}

.footer-service-block-list-item--apply {
  border-color: #FE5F58;
}

.footer-service-block-list-item--session {
  border-color: #418357;
}

.footer-service-block-list-item--trial {
  border-color: #6FA6FF;
}

.footer-service-block-list-item-link {
  width: 310px;
  padding: 18px 0 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .footer-service-block-list-item-link {
    width: 100%;
    padding: 10px 0;
    flex-direction: row-reverse;
    gap: 10px;
  }
}
.footer-service-block-list-item-link .title img {
  transition: all 0.3s ease;
}
.footer-service-block-list-item-link:hover {
  transition: all 0.3s ease;
}
.footer-service-block-list-item-link:hover .title {
  color: #fff;
}
.footer-service-block-list-item-link:hover .title img {
  transform: translateX(10px);
  transition: all 0.3s ease;
}

.footer-service-block-list-item-link--apply:hover {
  background-color: #FE5F58;
  transition: all 0.3s ease;
}

.footer-service-block-list-item-link--session:hover {
  background-color: #418357;
  transition: all 0.3s ease;
}

.footer-service-block-list-item-link--trial:hover {
  background-color: #6FA6FF;
  transition: all 0.3s ease;
}

.site-footer {
  background: #1D2B57;
  color: #fff;
  padding: 60px 0;
}
@media (max-width: 768px) {
  .site-footer {
    padding: 40px 0;
  }
}
.site-footer .footer-content {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1.5fr;
  gap: 20px;
}
@media (max-width: 1024px) {
  .site-footer .footer-content {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .site-footer .footer-content .footer-content-block:last-child {
    grid-column: 1/-1;
  }
}
@media (max-width: 768px) {
  .site-footer .footer-content {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 0 10px;
  }
}
.site-footer .footer-content .footer-content-block {
  display: flex;
  flex-direction: column;
}
.site-footer .footer-content .footer-content-block-logo {
  width: 100%;
  height: 100%;
}
.site-footer .footer-content .footer-content-block-logo img {
  width: 100%;
  height: 100%;
}
.site-footer .footer-content .footer-content-block-text {
  width: 100%;
  height: 100%;
}
.site-footer .footer-content .footer-content-block-text p {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.69;
}
.site-footer .footer-content .footer-content-block-link {
  width: 100%;
  height: 100%;
}
.site-footer .footer-content .footer-content-block-link a {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.69;
}
.site-footer .footer-content .footer-content-block-sns {
  width: 100%;
  height: 100%;
}
.site-footer .footer-content .footer-content-block-sns ul {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.footer-content-block-list dt {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.04em;
  margin-bottom: 25px;
}
@media (max-width: 768px) {
  .footer-content-block-list dt {
    font-size: 18px;
    margin-bottom: 20px;
  }
}
.footer-content-block-list dt span {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.69;
  letter-spacing: 0.04em;
}
.footer-content-block-list dd {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.69;
  letter-spacing: 0.04em;
  margin-bottom: 10px;
}
.footer-content-block-list dd ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.footer-content-block-list dd li {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.69;
  letter-spacing: 0.04em;
}
.footer-content-block-list dd a {
  color: #fff;
  text-decoration: none;
  position: relative;
  transition: color 0.3s ease;
}
.footer-content-block-list dd a::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 0;
  height: 2px;
  background: #FE5F58;
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.footer-content-block-list dd a:hover {
  color: #FE5F58;
}
.footer-content-block-list dd a:hover::after {
  width: 100%;
}

.footer-content-block-about-logo-link {
  background-color: #fff;
  padding: 20px;
  border-radius: 10px;
  display: flex;
  color: #222;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.69;
  letter-spacing: 0.04em;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .footer-content-block-about-logo-link {
    padding: 15px;
    font-size: 11px;
  }
}
.footer-content-block-about-logo-link img {
  width: 100%;
  height: 100%;
  max-width: 200px;
}

.footer-content-block-about-address {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.69;
  letter-spacing: 0.04em;
  margin-bottom: 20px;
}

.footer-content-block-about-policy {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.69;
  letter-spacing: 0.04em;
  margin-bottom: 0.5em;
}
.footer-content-block-about-policy a {
  color: #fff;
  text-decoration: none;
  position: relative;
  transition: color 0.3s ease;
}
.footer-content-block-about-policy a::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 0;
  height: 2px;
  background: #FE5F58;
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.footer-content-block-about-policy a:hover {
  color: #FE5F58;
}
.footer-content-block-about-policy a:hover::after {
  width: 100%;
}

.footer-content-block-about-policy-link {
  color: #fff;
  text-decoration: none;
  transition: all 0.3s ease;
}
.footer-content-block-about-policy-link:hover {
  color: #FE5F58;
  transition: all 0.3s ease;
}

.copyright {
  text-align: center;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.69;
  letter-spacing: 0.04em;
  margin-top: 20px;
  margin-bottom: 40px;
}

.free-icon {
  background-color: #FF6C00;
  color: #fff;
  padding: 2px 10px;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.69;
  letter-spacing: 0.04em;
}

.to-top {
  max-width: 1000px;
  text-align: right;
  margin: 60px auto;
  scroll-behavior: smooth;
}
.to-top a {
  transition: all 0.3s ease;
}
.to-top a:hover {
  transition: all 0.3s ease;
  transform: translateY(-5px);
}

.free-text {
  background-color: #FF6C00;
  color: #fff;
  padding: 2px 16.281249px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.69;
  letter-spacing: 0.04em;
}

.graduates-text {
  background-color: #FF6C00;
  color: #fff;
  padding: 2px 16.281249px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.69;
  letter-spacing: 0.04em;
}

.for_organizations {
  background-color: #295DB2;
  color: #fff;
  padding: 2px 16.281249px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.69;
  letter-spacing: 0.04em;
}

@media (max-width: 768px) {
  .type-page {
    padding: 0 10px;
  }
}

.about-block-logo {
  margin-top: 40px;
  margin-bottom: 60px;
}

.about-purpose {
  margin-top: 33px;
  margin-bottom: 23px;
}
.about-purpose ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.about-purpose ul li {
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 1.5909090909;
  letter-spacing: 0;
}
.about-purpose ul li span {
  color: #FF6C00;
}

.about-purpose-text {
  line-height: 1.75;
}

.login-grid {
  margin-bottom: 40px;
}

.login-grid-row {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 20px;
}
@media (max-width: 768px) {
  .login-grid-row {
    grid-template-columns: repeat(1, 1fr);
  }
}
.login-grid-row .login-grid-container {
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
  .login-grid-row .login-grid-container {
    grid-template-columns: repeat(1, 1fr);
  }
}
.login-grid-row .login-grid-container-single {
  grid-template-columns: repeat(1, 1fr);
}

.login-grid-row-single {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px;
}
@media (max-width: 768px) {
  .login-grid-row-single {
    grid-template-columns: repeat(1, 1fr);
  }
}
.login-grid-row-single .login-grid-container {
  grid-template-columns: repeat(1, 1fr);
}

.login-grid-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media (max-width: 768px) {
  .login-grid-container {
    grid-template-columns: repeat(1, 1fr);
  }
}

.login-grid-item a {
  display: block;
  transition: all 0.3s ease;
}
.login-grid-item a:hover {
  transition: all 0.3s ease;
  transform: translateY(-5px);
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}
.login-grid-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.disable {
  pointer-events: none;
  opacity: 0.5;
}

.video-wrap {
  width: 100%;
  height: 100%;
}
.video-wrap iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
}

.wp-pagenavi,
.navigation.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 2rem;
  -webkit-user-select: none;
  user-select: none;
}
.wp-pagenavi a,
.wp-pagenavi span,
.wp-pagenavi .nav-links a,
.wp-pagenavi .nav-links span,
.wp-pagenavi .page-numbers,
.navigation.pagination a,
.navigation.pagination span,
.navigation.pagination .nav-links a,
.navigation.pagination .nav-links span,
.navigation.pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.25rem;
  height: 2.25rem;
  padding: 0 0.75rem;
  border-radius: 0.375rem;
  border: 1px solid #d1d5db;
  font-size: 0.875rem;
  line-height: 1;
  color: #374151;
  text-decoration: none;
}
.wp-pagenavi a,
.wp-pagenavi .nav-links a,
.wp-pagenavi .page-numbers:not(.current),
.navigation.pagination a,
.navigation.pagination .nav-links a,
.navigation.pagination .page-numbers:not(.current) {
  transition: color 150ms ease, background-color 150ms ease, border-color 150ms ease;
}
.wp-pagenavi a:hover,
.wp-pagenavi .nav-links a:hover,
.wp-pagenavi .page-numbers:not(.current):hover,
.navigation.pagination a:hover,
.navigation.pagination .nav-links a:hover,
.navigation.pagination .page-numbers:not(.current):hover {
  background-color: #eff6ff;
  border-color: #93c5fd;
  color: #1d4ed8;
}
.wp-pagenavi .current,
.wp-pagenavi .page-numbers.current,
.navigation.pagination .current,
.navigation.pagination .page-numbers.current {
  background-color: #2563eb;
  border-color: #2563eb;
  color: #ffffff;
  cursor: default;
  pointer-events: none;
}
.wp-pagenavi .nav-links,
.navigation.pagination .nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}
.wp-pagenavi .nav-links ul.page-numbers,
.navigation.pagination .nav-links ul.page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
  border: none;
}
.wp-pagenavi .nav-links ul.page-numbers li,
.navigation.pagination .nav-links ul.page-numbers li {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
}
.wp-pagenavi .screen-reader-text,
.navigation.pagination .screen-reader-text {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.wp-pagenavi .pages,
.navigation.pagination .pages {
  display: none;
  border: 0;
  background-color: transparent;
  padding: 0;
  height: auto;
  min-width: 0;
  color: #6b7280;
  margin-right: 0.5rem;
}
@media (min-width: 768px) {
  .wp-pagenavi .pages,
  .navigation.pagination .pages {
    display: inline-block;
  }
}
.wp-pagenavi .extend,
.navigation.pagination .extend {
  border: 0;
  background-color: transparent;
  padding: 0 0.25rem;
  min-width: 0;
  color: #6b7280;
  pointer-events: none;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .first,
.wp-pagenavi .last,
.navigation.pagination .previouspostslink,
.navigation.pagination .nextpostslink,
.navigation.pagination .first,
.navigation.pagination .last {
  font-weight: 500;
}

@media (max-width: 475px) {
  .wp-pagenavi,
  .navigation.pagination {
    gap: 0.125rem;
    margin-top: 1.5rem;
    flex-wrap: wrap;
  }
  .wp-pagenavi a,
  .wp-pagenavi span,
  .navigation.pagination .nav-links a,
  .navigation.pagination .nav-links span,
  .navigation.pagination .page-numbers {
    min-width: 1.875rem;
    height: 2rem;
    padding: 0 0.375rem;
    font-size: 0.75rem;
    border-radius: 0.25rem;
  }
  .navigation.pagination .nav-links ul.page-numbers {
    gap: 0.125rem;
  }
  .navigation.pagination .nav-links ul.page-numbers li {
    margin: 0;
    padding: 0;
  }
  .wp-pagenavi .previouspostslink,
  .wp-pagenavi .nextpostslink,
  .navigation.pagination .prev,
  .navigation.pagination .next {
    min-width: 3rem;
  }
  .wp-pagenavi .extend {
    padding: 0 0.125rem;
    font-size: 0.75rem;
  }
  .wp-pagenavi .first,
  .wp-pagenavi .last {
    display: none;
  }
}
@media (min-width: 476px) and (max-width: 640px) {
  .wp-pagenavi,
  .navigation.pagination {
    gap: 0.25rem;
  }
  .wp-pagenavi a,
  .wp-pagenavi span,
  .navigation.pagination .nav-links a,
  .navigation.pagination .nav-links span,
  .navigation.pagination .page-numbers {
    min-width: 2rem;
    height: 2.25rem;
    padding: 0 0.5rem;
    font-size: 0.875rem;
  }
  .navigation.pagination .nav-links ul.page-numbers {
    gap: 0.25rem;
  }
  .navigation.pagination .nav-links ul.page-numbers li {
    margin: 0;
    padding: 0;
  }
}
@media (min-width: 641px) and (max-width: 1024px) {
  .wp-pagenavi,
  .navigation.pagination {
    gap: 0.375rem;
  }
  .wp-pagenavi a,
  .wp-pagenavi span,
  .navigation.pagination .nav-links a,
  .navigation.pagination .nav-links span,
  .navigation.pagination .page-numbers {
    min-width: 2.125rem;
    height: 2.375rem;
    padding: 0 0.625rem;
    font-size: 0.875rem;
  }
  .navigation.pagination .nav-links ul.page-numbers {
    gap: 0.375rem;
  }
  .navigation.pagination .nav-links ul.page-numbers li {
    margin: 0;
    padding: 0;
  }
}
@media (max-width: 1024px) {
  .wp-pagenavi a:not(.previouspostslink):not(.nextpostslink):not(.first):not(.last):nth-child(n+7):nth-last-child(n+7),
  .wp-pagenavi span:not(.current):not(.pages):not(.extend):nth-child(n+7):nth-last-child(n+7) {
    display: none;
  }
  .wp-pagenavi a:not(.previouspostslink):not(.nextpostslink):not(.first):not(.last):nth-child(6):nth-last-child(n+7), .wp-pagenavi a:not(.previouspostslink):not(.nextpostslink):not(.first):not(.last):nth-last-child(6):nth-child(n+7),
  .wp-pagenavi span:not(.current):not(.pages):not(.extend):nth-child(6):nth-last-child(n+7),
  .wp-pagenavi span:not(.current):not(.pages):not(.extend):nth-last-child(6):nth-child(n+7) {
    display: inline-flex;
  }
  .wp-pagenavi a:not(.previouspostslink):not(.nextpostslink):not(.first):not(.last):nth-child(6):nth-last-child(n+7)::after, .wp-pagenavi a:not(.previouspostslink):not(.nextpostslink):not(.first):not(.last):nth-last-child(6):nth-child(n+7)::after,
  .wp-pagenavi span:not(.current):not(.pages):not(.extend):nth-child(6):nth-last-child(n+7)::after,
  .wp-pagenavi span:not(.current):not(.pages):not(.extend):nth-last-child(6):nth-child(n+7)::after {
    content: "…";
    position: absolute;
    right: -0.75rem;
    color: #6b7280;
  }
}
.voice-box-item-content {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

/*# sourceMappingURL=custom.css.map */
