/*
Theme Name: AFFINGER Child
Template: affinger
Description: AFFINGER6 対応
Version: 20210719
*/

/*media Queries スマートフォンとタブレットサイズ（959px以下）で適応したいCSS - スマホ・タブレット
---------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 959px) {


	/*-- ここまで --*/
}
	
/*media Queries タブレットサイズ（600px～959px）のみで適応したいCSS -タブレットのみ
---------------------------------------------------------------------------------------------------*/
@media only screen and (min-width: 600px) and (max-width: 959px) {


	/*-- ここまで --*/
}	
	
/*media Queries タブレット（600px）以上で適応したいCSS -タブレット・PC
---------------------------------------------------------------------------------------------------*/
@media only screen and (min-width: 600px) {


	/*-- ここまで --*/
}

/*media Queries PCサイズ（960px）以上で適応したいCSS - PCのみ
---------------------------------------------------------------------------------------------------*/
@media print, screen and (min-width: 960px) {


	/*-- ここまで --*/
}

/*media Queries スマホサイズ（599px）以下で適応したいCSS - スマホのみ
---------------------------------------------------------------------------------------------------*/
@media print, screen and (max-width: 599px) {

	
	/*-- ここまで --*/
}

/* Cocoon migration compatibility: preserve legacy article decorations after AFFINGER switch. */
.entry-content .blank-box,
.post .blank-box,
#content .blank-box {
  position: relative;
  margin: 1.6em 0;
  padding: 1.1em 1.25em;
  border: 1px solid #e2e8f0;
  border-left: 5px solid #6b7280;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05);
}
.entry-content .blank-box.bb-tab,
.post .blank-box.bb-tab,
#content .blank-box.bb-tab {
  padding-top: 1.35em;
}
.entry-content .blank-box.bb-tab::before,
.post .blank-box.bb-tab::before,
#content .blank-box.bb-tab::before {
  position: absolute;
  top: -0.85em;
  left: 1em;
  display: inline-block;
  padding: 0.2em 0.75em;
  border-radius: 999px;
  background: #111827;
  color: #fff;
  font-size: 0.78em;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
}
.entry-content .bb-point::before,
.post .bb-point::before,
#content .bb-point::before { content: "POINT"; }
.entry-content .bb-check::before,
.post .bb-check::before,
#content .bb-check::before { content: "CHECK"; }
.entry-content .bb-tips::before,
.post .bb-tips::before,
#content .bb-tips::before { content: "TIPS"; }
.entry-content .bb-pickup::before,
.post .bb-pickup::before,
#content .bb-pickup::before { content: "PICK UP"; }
.entry-content .bb-memo::before,
.post .bb-memo::before,
#content .bb-memo::before { content: "MEMO"; }
.entry-content .bb-hint::before,
.post .bb-hint::before,
#content .bb-hint::before { content: "HINT"; }
.entry-content .bb-red,
.post .bb-red,
#content .bb-red,
.entry-content .st-red,
.post .st-red,
#content .st-red { border-left-color: #e85d75; background: #fff7f8; }
.entry-content .bb-blue,
.post .bb-blue,
#content .bb-blue,
.entry-content .st-blue,
.post .st-blue,
#content .st-blue { border-left-color: #3b82c4; background: #f3f8ff; }
.entry-content .bb-yellow,
.post .bb-yellow,
#content .bb-yellow,
.entry-content .st-yellow,
.post .st-yellow,
#content .st-yellow { border-left-color: #d7a531; background: #fff9e8; }
.entry-content .bb-green,
.post .bb-green,
#content .bb-green,
.entry-content .st-green,
.post .st-green,
#content .st-green { border-left-color: #3f9f72; background: #f1fbf6; }
.entry-content .sticky,
.post .sticky,
#content .sticky { box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08); }
.entry-content .speech-wrap,
.post .speech-wrap,
#content .speech-wrap {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  margin: 1.7em 0;
}
.entry-content .speech-wrap.sbp-r,
.post .speech-wrap.sbp-r,
#content .speech-wrap.sbp-r { flex-direction: row-reverse; }
.entry-content .speech-person,
.post .speech-person,
#content .speech-person {
  flex: 0 0 64px;
  text-align: center;
  font-size: 0.78em;
  color: #64748b;
  line-height: 1.4;
}
.entry-content .speech-icon,
.post .speech-icon,
#content .speech-icon { margin: 0 auto 0.35em; }
.entry-content .speech-icon img,
.post .speech-icon img,
#content .speech-icon img,
.entry-content .speech-icon-image,
.post .speech-icon-image,
#content .speech-icon-image {
  width: 58px;
  height: 58px;
  object-fit: cover;
  border-radius: 50%;
  border: 2px solid #fff;
  box-shadow: 0 5px 14px rgba(15, 23, 42, 0.16);
}
.entry-content .speech-balloon,
.post .speech-balloon,
#content .speech-balloon {
  flex: 1 1 auto;
  position: relative;
  padding: 1em 1.15em;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05);
}
.entry-content .speech-balloon::before,
.post .speech-balloon::before,
#content .speech-balloon::before {
  content: "";
  position: absolute;
  top: 20px;
  left: -8px;
  width: 14px;
  height: 14px;
  transform: rotate(45deg);
  border-left: 1px solid #e5e7eb;
  border-bottom: 1px solid #e5e7eb;
  background: #fff;
}
.entry-content .speech-wrap.sbp-r .speech-balloon::before,
.post .speech-wrap.sbp-r .speech-balloon::before,
#content .speech-wrap.sbp-r .speech-balloon::before {
  right: -8px;
  left: auto;
  border: 0;
  border-top: 1px solid #e5e7eb;
  border-right: 1px solid #e5e7eb;
}
.entry-content .blogcard,
.post .blogcard,
#content .blogcard {
  display: flex;
  gap: 14px;
  margin: 1.5em 0;
  padding: 14px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.05);
}
.entry-content .blogcard-thumbnail,
.post .blogcard-thumbnail,
#content .blogcard-thumbnail { flex: 0 0 160px; margin: 0; }
.entry-content .blogcard-thumbnail img,
.post .blogcard-thumbnail img,
#content .blogcard-thumbnail img {
  width: 160px;
  height: 90px;
  object-fit: cover;
  border-radius: 6px;
}
.entry-content .blogcard-title,
.post .blogcard-title,
#content .blogcard-title { font-weight: 700; line-height: 1.55; }
.entry-content .blogcard-snipet,
.post .blogcard-snipet,
#content .blogcard-snipet { margin-top: 0.4em; color: #64748b; font-size: 0.9em; line-height: 1.6; }
.entry-content .marker,
.post .marker,
#content .marker,
.entry-content .marker-under,
.post .marker-under,
#content .marker-under,
.entry-content .marker-under-red,
.post .marker-under-red,
#content .marker-under-red,
.entry-content .red-under,
.post .red-under,
#content .red-under { background: linear-gradient(transparent 62%, rgba(255, 213, 79, 0.7) 0); }
.entry-content .marker-red,
.post .marker-red,
#content .marker-red { background: linear-gradient(transparent 58%, rgba(248, 113, 113, 0.35) 0); }
.entry-content .marker-under-blue,
.post .marker-under-blue,
#content .marker-under-blue { background: linear-gradient(transparent 62%, rgba(96, 165, 250, 0.35) 0); }
.entry-content .red,
.post .red,
#content .red { color: #d93856; }
.entry-content .bold,
.post .bold,
#content .bold { font-weight: 700; }
.entry-content .fz-22px,
.post .fz-22px,
#content .fz-22px { font-size: 22px; }
@media only screen and (max-width: 600px) {
  .entry-content .speech-wrap,
  .post .speech-wrap,
  #content .speech-wrap { gap: 10px; }
  .entry-content .speech-person,
  .post .speech-person,
  #content .speech-person { flex-basis: 52px; }
  .entry-content .speech-icon img,
  .post .speech-icon img,
  #content .speech-icon img,
  .entry-content .speech-icon-image,
  .post .speech-icon-image,
  #content .speech-icon-image { width: 48px; height: 48px; }
  .entry-content .blogcard,
  .post .blogcard,
  #content .blogcard { display: block; }
  .entry-content .blogcard-thumbnail,
  .post .blogcard-thumbnail,
  #content .blogcard-thumbnail { margin-bottom: 0.75em; }
}

/* Appdemarrige front page refresh. */
.adm-home {
  color: #1f2933;
}
.adm-home a {
  text-decoration: none;
}
.adm-hero {
  position: relative;
  overflow: hidden;
  min-height: 430px;
  display: grid;
  align-items: end;
  margin: 0 0 34px;
  padding: 48px 34px;
  border-radius: 8px;
  background:
    linear-gradient(120deg, rgba(16, 24, 40, 0.82), rgba(33, 60, 82, 0.55) 48%, rgba(232, 93, 117, 0.28)),
    url("https://appdemarrige.com/wp-content/uploads/2019/04/cropped-alliances-1619392_1920-1.jpg") center/cover;
}
.adm-hero__inner {
  max-width: 760px;
}
.adm-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.45em;
  margin: 0 0 12px;
  color: #fce7f0;
  font-size: 0.9rem;
  font-weight: 700;
}
.adm-hero h1 {
  margin: 0 0 16px;
  color: #fff;
  font-size: clamp(2rem, 5vw, 3.5rem);
  line-height: 1.18;
}
.adm-hero p {
  max-width: 640px;
  margin: 0 0 24px;
  color: #f8fafc;
  font-size: 1.04rem;
  line-height: 1.9;
}
.adm-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.adm-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0.75em 1.15em;
  border-radius: 8px;
  background: #e85d75;
  color: #fff;
  font-weight: 700;
  line-height: 1.3;
  box-shadow: 0 8px 18px rgba(232, 93, 117, 0.25);
}
.adm-button:hover {
  color: #fff;
  filter: brightness(0.96);
}
.adm-button--ghost {
  border: 1px solid rgba(255, 255, 255, 0.72);
  background: rgba(255, 255, 255, 0.12);
  box-shadow: none;
}
.adm-section {
  margin: 38px 0;
}
.adm-section__head {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 18px;
}
.adm-section h2 {
  margin: 0;
  font-size: 1.55rem;
  line-height: 1.35;
}
.adm-section__lead {
  margin: 8px 0 0;
  color: #64748b;
  line-height: 1.8;
}
.adm-grid {
  display: grid;
  gap: 16px;
}
.adm-grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.adm-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.adm-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 20px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.05);
}
.adm-card:hover {
  border-color: #e85d75;
}
.adm-card__label {
  margin: 0 0 9px;
  color: #e85d75;
  font-size: 0.78rem;
  font-weight: 800;
}
.adm-card h3 {
  margin: 0 0 10px;
  font-size: 1.12rem;
  line-height: 1.55;
}
.adm-card p {
  margin: 0;
  color: #536171;
  line-height: 1.8;
}
.adm-card__more {
  margin-top: auto;
  padding-top: 14px;
  color: #0f766e;
  font-weight: 700;
}
.adm-path {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}
.adm-path a {
  display: block;
  min-height: 108px;
  padding: 16px;
  border-radius: 8px;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
  color: #1f2933;
  font-weight: 700;
  line-height: 1.55;
}
.adm-path span {
  display: block;
  margin-top: 8px;
  color: #64748b;
  font-size: 0.86rem;
  font-weight: 500;
}
.adm-offer {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 20px;
  align-items: stretch;
  padding: 24px;
  border-radius: 8px;
  background: #0f2433;
  color: #fff;
}
.adm-offer h2,
.adm-offer p {
  color: inherit;
}
.adm-offer p {
  margin: 0 0 16px;
  line-height: 1.85;
}
.adm-offer__panel {
  display: grid;
  gap: 10px;
}
.adm-service {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 14px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
}
.adm-service strong {
  display: block;
}
.adm-service span {
  color: #dbeafe;
  font-size: 0.9rem;
}
.adm-note {
  padding: 18px 20px;
  border-left: 5px solid #0f766e;
  border-radius: 8px;
  background: #ecfdf5;
  line-height: 1.8;
}
.adm-latest {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.adm-latest a {
  display: block;
  padding: 15px;
  border-radius: 8px;
  background: #fff;
  border: 1px solid #e5e7eb;
  color: #1f2933;
  line-height: 1.55;
}
.adm-latest time {
  display: block;
  margin-bottom: 8px;
  color: #94a3b8;
  font-size: 0.82rem;
}
@media only screen and (max-width: 900px) {
  .adm-grid--3,
  .adm-latest,
  .adm-path {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .adm-offer {
    grid-template-columns: 1fr;
  }
}
@media only screen and (max-width: 599px) {
  .adm-hero {
    min-height: 390px;
    padding: 36px 22px;
  }
  .adm-grid--2,
  .adm-grid--3,
  .adm-latest,
  .adm-path {
    grid-template-columns: 1fr;
  }
  .adm-section__head {
    display: block;
  }
}

/* Front page layout adjustment: keep the refreshed home focused. */
body.front-page #side {
	display: none;
}
body.front-page #wrapper,
body.front-page #wrapper-in,
body.front-page #content-w,
body.front-page #content,
body.front-page #contentInner {
	max-width: 1120px;
	width: auto;
	margin-right: auto;
	margin-left: auto;
}
body.front-page main,
body.front-page article,
body.front-page #st-page,
body.front-page .entry-content,
body.front-page .adm-home {
	width: 100%;
	max-width: none;
}
