@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template: cocoon-master
Version: 1.1.3
*/

body {
  letter-spacing: 0 !important;
}

/* PCヘッダー */
@media screen and (min-width: 835px) {
  .skin-grayish #navi-in {
    display: flex;
    align-items: center;
    background: linear-gradient(135deg, rgb(74, 13, 143) 0%, rgb(250, 42, 143) 100%) !important;
    box-shadow: 0 5px 23px rgba(0, 0, 0, 0.1);
    padding: 10px 5%;
  }

  .global-nav-logo {
    flex-shrink: 0;
    margin-right: 30px;
  }

  .global-nav-logo img {
    display: block;
    width: auto;
  }

  .skin-grayish .menu-header {
    flex: 1;
    display: flex;
    align-items: center;
  }

  .skin-grayish .navi-in a {
    color: #fff;
    font-size: 14px;
  }

  .skin-grayish .navi-in a:hover {
    color: #ccc;
  }
}

/* ヘッダー装飾 */
.skin-grayish.front-top-page .grayish_topmv_whovlay,
.skin-grayish.front-top-page .container .header-container .header .grayish_topmv_whovlay {
  background: none !important;
}

.skin-grayish.front-top-page .grayish_topmv_dot,
.skin-grayish.front-top-page .container .header-container .header .grayish_topmv_dot {
  background-image: none !important;
}

.skin-grayish .header-in .site-name-text {
  letter-spacing: 0 !important;
  line-height: 1em !important;
  width: 60% !important;
  color: #fff;
  margin: 0 auto;
  font-weight: 500 !important;
  text-shadow: 0 0 10px rgb(0, 0, 0);
}

.skin-grayish.front-top-page .skinadd-topmv-scroll,
.tagline {
  color: #fff !important;
  text-shadow: 0 0 10px rgb(0, 0, 0);
}

/* サービスセクション */
.ms-service-section {
  padding: 80px 20px;
  background: #fbf7ff;
}

.ms-section-title {
  text-align: center;
  margin-bottom: 50px;
}

.ms-section-title span {
  display: block;
  color: #8a6db3;
  font-size: 13px;
  letter-spacing: 0.08em;
}

.ms-section-title h2 {
  color: #5b2ca0;
  font-size: 32px;
  font-weight: 500;
  margin: 0;
}

.ms-service-grid {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px 30px;
}

.ms-service-card {
  background: #fff;
  border-left: 3px solid #d75fa9;
  padding: 24px 22px 24px 18px;
  display: grid;
  grid-template-columns: 56px 1fr;
  gap: 14px;
  box-shadow: 0 8px 20px rgba(80, 40, 120, 0.08);
  min-height: 165px;
}

.ms-service-icon {
  font-size: 42px;
  line-height: 1;
  color: #d75fa9;
}

.article h1{letter-spacing: 0 !important; font-size: 3.5em;}
.article h2 {
	padding: 0 0 10px 0;
	border-bottom: solid 4px #f0288f !important;
	letter-spacing: 0 !important;
	font-size: 2em !important;
	margin: 1em 0;
}
.article h2::before{border-bottom: solid 4px #560f8f !important;}
.article h3 {background-color: #fff !important; letter-spacing: 0 !important; margin: 0;}
.article h4{letter-spacing: 0 !important; margin: 0;}

.ms-service-card h3 {
  color: #5b2ca0;
  font-size: 18px;
  margin: 0 0 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid #c85ed8;
  font-weight: 700;
}

.ms-service-card p {
  color: #777;
  font-size: 14px;
  line-height: 1.3em;
  margin: 0;
}

/* 1023px以下 */
@media screen and (max-width: 1023px) {
  .skin-grayish.front-top-page .container .header-container .header {
    height: 60svh !important;
  }
}

/* 834px以下 */
@media screen and (max-width: 834px) {
  .global-nav-logo {
    display: none !important;
  }

  .skin-grayish #navi-in {
    display: block !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .skin-grayish .menu-header {
    display: none !important;
  }

  .mobile-header-menu-buttons {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 9999 !important;
  }

  .ms-service-section {
    padding: 60px 14px;
  }

  .ms-section-title h2 {
    font-size: 26px;
  }

  .ms-service-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px 14px;
  }

  .ms-service-card {
    grid-template-columns: 1fr;
    padding: 18px 14px;
    min-height: auto;
  }

  .ms-service-icon {
    font-size: 34px;
  }

  .ms-service-card h3 {
    font-size: 11px;
  }

  .ms-service-card p {
    font-size: 10px;
    line-height: 1.3em;
  }
}

/* 480px以下 */
@media screen and (max-width: 480px) {
	h1{font-size: 16px !important;}
  .skin-grayish .header-in .site-name-text {width: 90% !important;}
  .skin-grayish.front-top-page #header .site-name-text {font-size: 6vw !important;}
	.article h2 {font-size: 1.5em !important;}
	.article h3{font-size: 1em;}
}

