Template:astrid
Theme Name:astrid_child
*/
/* body */
body{
	font-size:16px !important;
}
/* メニュー */
.main-navigation a {
	color: #79472f;
}

/* 画面サイズ */
.container {
  width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.outline-text{
	font-size: 2vw !important;
	color: #79472f !important;
	text-shadow:
	2px  2px 1px #fff,
      -2px  2px 1px #fff,
       2px -2px 1px #fff,
      -2px -2px 1px #fff,
       2px  0px 1px #fff,
       0px  3px 1px #fff,
      -2px  0px 1px #fff,
       0px -2px 1px #fff !important;
}

/**
 * ヘッダー
 */
.col2 ul {
	display: flex;
	margin: 0;
}
.col2 ul,
.col2 li {
	list-style: none;
	padding: 0;
}
.col2 li.ptn2-menu {
	width: 40%;
	text-align: center;
	padding: 3em 1em 3em 5em;

}
.col2 li.ptn2-menu .phone {
	color: #936650;
	border-bottom: 1px solid #FFCC99;
	width: 300px;
	margin: 2em auto;
	padding-bottom: 1em;
}
.col2 li.ptn2-menu .phone p {
	width: 220px;
	margin: auto;
}
.col2 li.ptn2-menu .phone span {
	font-size: 28px;
	letter-spacing: 0;
	position: relative;
	padding-left: 20px;
}
.col2 li.ptn2-menu .phone span:before {
	content: url(https://shinohara-sekkotsuin.com/wp-content/uploads/2026/01/phone_icon2.png);
	display: block;
    position: absolute;
}
.col2 li.ptn2-img {
	width: 60%;
	position: relative;
}
.col2 li.ptn2-img img {
	width: 100%;
}
.col2 li.ptn2-img span {
  position: absolute;
  width: 100%;
  left: 0;
  text-align: center;
  color: white;
  top: 40%;
  font-size: 28px;
  text-shadow: 1px 1px 1px #000;
  font-weight: bold;
}
.col2 li.ptn2-menu .ptn2-nav {
	display: block;
	margin-bottom: 2.4em;
}
.col2 li.ptn2-menu .ptn2-nav li {
	padding: 0.7em;
}
.col2 li.ptn2-menu .ptn2-nav li a {
	color: #000;
	font-size :20px;
}
.col2 li.ptn2-menu .ptn2-nav li a:hover {
	text-decoration: none;
	color: #FFCC99;
}

.col2 li.ptn2-menu .nav-button {
  width: 180px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5px 30px;
  box-sizing: border-box;
  background: #936650;
  color: white;
  text-align: center;
  text-decoration: none;
  transition: all .25s ease;
  border-radius: 5px;
  border: 2px solid #79472f;
}
.col2 li.ptn2-menu .nav-button:hover {
  background: white;
  color: #1b1b1b;
  text-decoration: none;
  border: 2px solid #7fac69;
}

/**
 * セクション
 */
.home-wrapper section{
	padding: 0 !important;
}
.section-text {
	padding: 0 10%;
	color: #000;
	line-height: 1.8;
}
.section-title.ptn2 {
	padding: 2em 10%;
	background-image: initial;
	color: #fff;
	font-size: 3.5em;
	letter-spacing: 0;
	line-height: 1.6;
	font-weight: initial;
	/* height: 64px; */
}
.section-title.ptn2.bg-grn {
	background-color: #FFCC99;
}
.section-title.ptn2.bg-gry {
	background-color: #f2f2f2;
}
.section-title.ptn2 img {
	padding-right: 1em;
}

/**
 * お知らせ
 */
#atframework_posts-2 {
/*	background-color: #d0e9c4;*/
	background-color: #FFCC99;
	padding: 2em 6em 4em !important;
}
#atframework_posts-2 .entry-meta {
	border-top: #936650 solid 1px;
	border-bottom: #936650 solid 1px;
	color: #936650;
}
#atframework_posts-2 .entry-meta a {
	color: #936650;
}
#atframework_posts-2 .entry-summary {
	color: #000;
}
#atframework_posts-2 .button {
	border:1px solid #fb9306;
	color:#fb9306;
	background-color:#FFF;
	transition: opacity 0.2s ease-in-out;
}
#atframework_posts-2 .button:hover {
	opacity: 0.5;
}

/**
 * ご挨拶
 */
.greeting.ptn2 .section-title {
	padding: 2em 0 1em;
}
.greeting.ptn2 {
	margin: 0;
}
.greeting.ptn2 .msg {
    color: #fb9306;
	font-size: 23px;
	margin: 1.4em 0 0.8em;
}

.greeting.ptn2 p {
    color: #000;
	width: 70%;
	margin-bottom: 1.8em;
	line-height: 1.5em;
}
.col2 li.greeting-img {
	width: 45%;
}
.col2 li.greeting-msg {
	width: 55%;
	padding-left: 20px;
	padding-bottom: 3em;
}

.greeting-msg .section-title{
    color: #fb9306;
}
/**
 * 診療案内
 */
.guide.ptn2 .guide-box {
	width: 300px;
	border: solid 1px #999;
	height: 360px;
	margin: 2em auto;
	z-index: 20;
	background-color: #FFF;
    position: relative;
    padding: 0.5em 1em;
	text-align: left;
}
.guide.ptn2 .bg {
	padding-top:30px;
	background: linear-gradient(#FFCC99 40%, #FFF 30%, #FFF);
}
.guide.ptn2 ul {
	margin: 0 9em;
}
.guide.ptn2 li {
	position: relative;
}
.guide.ptn2 .nm {
	font-weight: bold;
	font-size: 20px;
}
.guide.ptn2 p {
	margin: 0em;
}
.guide.ptn2 .box-sdw {
    position: absolute;
    display: inline-block;
    top: 122px;
    left: 50px;
	z-index: 10;
	width: 300px;
	height: 360px;
	background-color: #ececec;
}

/**
 * 診療時間
 */
.time.ptn2 {
	text-align: center;
	color: #757575;
	margin-bottom: 7em;
	border-top: none;
}

.time.ptn2 .title{
	font-weight: bold;
	font-size: 24px;
	margin: 2em auto 1em;
}

.time.ptn2 table{
	width: 440px;;
	margin: auto;
	border: 2px solid #e0e0e0;

}

.time.ptn2 th{
	background-color: #FFCC99;
	color: #000;
	font-weight: initial;
}

.time.ptn2 td{
	font-weight: initial;
}

.time.ptn2 p{
	text-align: left;
	margin: 2em auto;
	width: 400px;
}

/**
 * 院内紹介
 */
.clinic.ptn2 {
	margin: 0;
	padding: 2em 0 7em;
	background-color: #f2f2f2;
}
.clinic.ptn2 ul {
	margin: 0;
}
.clinic.ptn2 li {
	width: calc( 100% / 2 );
}
.clinic.ptn2 li.clinic-img {
	background-color: #f2f2f2;
}
.clinic.ptn2 li.clinic-txt {
	background-color: #FFF;
}
.clinic.ptn2 li.left {
	text-align: right;
}
.clinic.ptn2 li.left .txt {
	margin-left: auto;
	padding: 36px 54px 36px 0;
}
.clinic.ptn2 li.right {
	text-align: left;
}
.clinic.ptn2 li.right .txt {
	margin-right: auto;
	padding: 36px 0 36px 54px;
}
.clinic.ptn2 li.clinic-txt .txt {
	width: 439px;
}
.clinic.ptn2 li.clinic-txt p {
	text-align: left;
	font-size: 14px;
	color: #000;
	
}
.clinic.ptn2 li.clinic-txt p.room {
	font-weight: bold;
	border-bottom: 1px solid #ccc;
	font-size: 20px;
}

/**
 * よくある質問
 */
#faq{
	color:#fb9306;
}
.col3 ul {
	display: flex;
}
.col3 ul,
.col3 li {
	list-style: none;
	padding: 0;
}
.col3 li {
	width: calc(100% / 3);
	letter-spacing: 1;
}
.qa.ptn2 {
	margin: 5em 10.8em;
}
.qa.ptn2 .qa-box {
	width: 98%;
	border: 1px solid #ccc;
	padding: 1em;
	font-size: 16px;
	text-align: left;
	display: inline-block;
	margin: 0.3em;
}
.qa.ptn2 .qa-box p.qa-q {
	color: #Fb9306;
	font-weight: bold;
}
.qa.ptn2 .qa-box p.qa-a {
	color: #000;
}
.qa.ptn2 .qa-box.box-1 {
	height: 238px;
}
.qa.ptn2 .qa-box.box-2 {
	height: 600px;
}
.qa.ptn2 .qa-box.box-3 {
	height: 494px;
}
.qa.ptn2 .qa-box.box-4 {
	height: 344px;
}
.qa.ptn2 .qa-box.box-5 {
	height: 344px;
}
.qa.ptn2 .qa-box.box-6 {
	height: 494px;
}

/**
 * 当院のご案内
 */
.about.ptn2 .section-title {
	padding: 0;
	margin: 1em 0 0.2em;
}
.about.ptn2 {
	margin: 0;
	background-color: #FFCC99;
}
.col2.ptn2 li.about-img {
	width: 50%;
	text-align: right;
}
.col2.ptn2 li.about-txt {
	width: 50%;
	color: #000;
	padding: 1em 5% 1em 10%;
}
.col2.ptn2 li.about-txt ul {
	border-bottom: dotted 1px #000;
	height: 50px;
	line-height: 5;	
}
.col2.ptn2 li.about-txt li.hdr {
	width: 30%;
	text-align-last: justify;
	text-justify:inter-ideograph;
	padding: 0 10px;
}
.col2.ptn2 li.about-txt li.dtl {
	width: 70%;
	padding: 0 10px;
}
.map.ptn2 {
	height: 500px;
}

/**
 * フッター
 */
.footer.ptn2 {
	margin: 4em 0 3em;
}
.col3 ul {
	display: flex;
}
.col3 ul,
.col3 li {
	list-style: none;
	padding: 0;
}
.col3 li {
	width: calc(100% / 3);
	color: #757575;
	letter-spacing: 0;
	text-align: center;
}
.footer.ptn2 li.logo img {
	width: 240px;
	height: auto;
}

@media screen and (max-width: 1240px){
/**
 * ヘッダー
 */
.col2 li.ptn2-menu .ptn2-nav {
	margin-bottom: 1em;
}
.col2 li.ptn2-menu .ptn2-nav li {
	padding: 0.3em;
}
.col2 li.ptn2-menu .ptn2-nav li a {
	font-size :14px;
}
/**
 * ご挨拶
 */
.col2 li.greeting-msg {
	padding-left: 2em;
}
/**
 * 診療案内
 */
.guide.ptn2 ul {
	margin: 0 3em;
}	
/**
 * よくある質問
 */
.qa.ptn2 .qa-box {
	font-size: 14px;
}
/**
 * 当院のご案内
 */
.col2.ptn2 li.about-txt {
	font-size: 12px;
}
.col2.ptn2 li.about-txt ul {
	height: 40px;
	line-height: 4;	
}	
.col2.ptn2 li.about-txt li.hdr {
	width: 30%;
}
.col2.ptn2 li.about-txt li.dtl {
	width: 70%;
}
	
}

@media screen and (max-width: 1030px){
/**
 * スマホメニュー
 */
	.main-navigation{
		height: initial;
	}
	.main-navigation ul {
		margin-right: 0;
	}
.btn-menu{
	color: #FFCC99;
}
#mainnav-mobi{
	background-color: #FFF;
	opacity: 0.9;
}
	
/**
 * 診療案内
 */
.guide.ptn2 .guide-box {
	width: 200px;
	font-size: 12px;
}
.guide.ptn2 .box-sdw {
    top: 122px;
    left: 30px;
	width: 200px;
}
/**
 * 院内紹介
 */
.clinic.ptn2 li.clinic-txt .txt {
	width: 370px;
}
	
/**
 * よくある質問
 */
.qa.ptn2 .qa-box.box-1 {
	height: 334px;
}
.qa.ptn2 .qa-box.box-2 {
	height: 544px;
}
.qa.ptn2 .qa-box.box-3 {
	height: 514px;
}
.qa.ptn2 .qa-box.box-4 {
	height: 364px;
}
.qa.ptn2 .qa-box.box-5 {
	height: 364px;
}
.qa.ptn2 .qa-box.box-6 {
	height: 514px;
}
.qa.ptn2 .qa-box {
	font-size: 12px;
}
/**
 * 当院のご案内
 */
.col2.ptn2 li.about-txt {
	font-size: 11px;
}
.col2.ptn2 li.about-txt ul {
	height: 30px;
	line-height: 3;	
}	
}

@media screen and (max-width: 768px){
	/* 3列 */
	.col3 ul {
	display: block;
}
	.col3 li {
	width: 100%;
}
	/* 2列 */
	.col2 ul {
	display: block;
}
	.col2 li {
	width: 100%;
}

/**
 * ヘッダー
 */
.col2 li.ptn2-menu {
	width: 100%;
	text-align: center;
	padding: 0;
}
.col2 li.ptn2-img {
	width: 100%;
	margin-top: 2em;
}
/**
 * お知らせ
 */
#atframework_posts-3 {
	background-color: #d0e9c4;
	padding: 2em 1em 4em !important;
}
/**
 * ご挨拶
 */
.greeting.ptn2 .section-title {
	padding: 2em 0em 1em;
}
.col2 li.greeting-img {
	width: 100%;
}
.col2 li.greeting-msg {
	width: 100%;
	padding-right: 2em;
	padding-left: 2em;
}
.greeting.ptn2 p {
	width: 100%;		
}
/**
 * 診療案内
 */
.guide.ptn2 .guide-box {
	width: 90%;
}
.guide.ptn2 .bg {
	background: initial;
	/* background-color: #d0e9c4; */
	background-color: #FFCC99;
}
.guide.ptn2 ul {
	margin: 0 1em;
}
.guide.ptn2 li {
	padding-top: 1em;
	padding-bottom: 1em;
}
.guide.ptn2 .box-sdw {
	top: 134px;
    left: 30px;
	width: 90%;
}
/**
 * 診療時間
 */
.time.ptn2 table{
	width: 95%;
}
.time.ptn2 p{
	margin: 2em 1em;
	width: 95%;
}

/**
 * 院内紹介
 */
.clinic.ptn2 li {
	width: 100%;
}
.clinic.ptn2 li.left .txt {
	padding: 36px 2em;
}
.clinic.ptn2 li.right .txt {
	padding: 36px 2em;
}
.clinic.ptn2 li.clinic-txt .txt {
	width: 100%;
}
/**
 * よくある質問
 */
.col3 li {
	width: 98% !important;
}
.qa.ptn2 {
	margin: 5em 1em;
}
.qa.ptn2 .qa-box.box-1, .qa.ptn2 .qa-box.box-2, .qa.ptn2 .qa-box.box-3, .qa.ptn2 .qa-box.box-4, .qa.ptn2 .qa-box.box-5, .qa.ptn2 .qa-box.box-6 {
	height: auto;
}
/**
 * 当院のご案内
 */
.about.ptn2 .section-title {
	padding: 0;
	margin: 1em 5% 0.2em;
}
.col2.ptn2 li.about-img {
	width: 100%;
}
.col2.ptn2 li.about-txt {
	width: 100%;
	padding: 1em 5% !important;
}
.about-txt ul {
	display: flex;
}
.map.ptn2 {
	height: 300px;
}
/**
 * フッター
 */
.footer.ptn2 li {
	padding: 1em;
}

	
}


/* トップ施術の流れずれ修正 */

@media screen and (max-width: 768px){
	
  .section-title.ptn2 {
	text-align: center;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }


/* トップtelアイコンの修正 */

.col2 li.ptn2-menu .phone span:before {
content: url(https://shinohara-sekkotsuin.com/wp-content/uploads/2026/01/phone_icon2.png);
display: contents;
vertical-align: middle;
line-height: 1;

}


}

/* 固定ページとセクションタイトルを一括で小さくする */
.page-title,
.ast-page-title,
.section-title.ptn2 {
    font-size: 2.5em !important;  /* お好みのサイズに調整 */
    line-height: 1.2 !important;
}

/* スマホ用 */
@media screen and (max-width: 768px) {
    .entry-title,
    .page-title,
    .ast-page-title,
    .section-title.ptn2 {
        font-size: 1.5em !important;  /* お好みで調整 */
    }
}

.sns-icons {
  display: flex !important;          /* 横並び */
  flex-wrap: nowrap !important;      /* 折り返さない */
  justify-content: center !important; /* 中央揃え */
  align-items: center !important;    /* 高さ中央揃え */
  padding: 0 !important;
  margin: 0 auto !important;
  list-style: none !important;
  gap: 10px !important;              /* アイコン間の余白 */
}

.sns-icons li {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

.sns-icons li img {
  max-width: 80px;   /* アイコンサイズ調整 */
  height: auto;
  display: block;
}
/* SNSアイコンの横並びは維持 */
.sns-icons {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: center !important;
  padding: 0 0 20px 0 !important; /* 下に20pxの余白 */
  margin: 0 auto !important;
  list-style: none !important;
  gap: 10px !important;
}

/* liは横並び維持 */
.sns-icons li {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}
@media screen and (max-width: 768px){

  .guide.ptn2 .guide-box {
    width: 90%;
    height: auto !important;
    min-height: unset !important;
    padding: 1em;
  }

  .guide.ptn2 .box-sdw {
    height: auto !important;
  }

}
/* ===== 施術の流れ タブレット空白修正（決定版） ===== */

@media screen and (max-width: 1030px){

  .clinic-main1,
  .clinic-main3{
    display: flex !important;
    flex-direction: column !important;
  }

  .clinic-main2{
    display: flex !important;
    flex-direction: column-reverse !important;
  }

  .clinic-sub1L,
  .clinic-sub1R,
  .clinic-sub2{
    width: 100% !important;
  }

  .clinic-main1 .clinic-sub2 .txt,
  .clinic-main2 .clinic-sub2 .txt,
  .clinic-main3 .clinic-sub2 .txt{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 20px !important;
    box-sizing: border-box !important;
  }

  .clinic-sub1L img,
  .clinic-sub1R img{
    width: 100% !important;
    height: auto !important;
    display: block !important;
  }

}

@media screen and (max-width: 1030px){

  .clinic-sub1L,
  .clinic-sub1R,
  .clinic-sub2{
    width: 100% !important;
  }

}
/* お知らせセクションのスマホ最適化（横長ボタン調整） */
@media screen and (max-width: 768px){

  /* セクション全体の余白 */
  #atframework_posts-2 {
    padding: 2em 5% 4em !important;
    box-sizing: border-box;
  }

  /* 記事本文 */
  #atframework_posts-2 .entry-summary {
    width: 100% !important;
    box-sizing: border-box;
  }

  /* メタ情報 */
  #atframework_posts-2 .entry-meta {
    width: 100% !important;
    box-sizing: border-box;
  }

  /* 個別記事ボタンは控えめ */
  #atframework_posts-2 .button {
    width: 80% !important;
    max-width: 180px;
    display: block;
    margin: 1em auto;
    text-align: center;
  }

  /* 「すべての新着を見る」ボタンをスマホ画面いっぱいに */
  #atframework_posts-2 .atfw-archive-link {
    width: 95% !important;     /* 画面ほぼいっぱいに */
    max-width: none !important; /* 幅制限なし */
    display: block;
    margin: 1em auto;
    text-align: center;        /* 文字中央揃え */
  }
}
