@charset "UTF-8";
/*
Theme Name:しぶたに洋子活動事務所
Theme URI:
Description:
Version: 999
Author:
Author URI:
*/
/*　reset css　*/
html {
  scroll-behavior: smooth;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  text-indent: 0;
  width: 100%;
}
table th {
  vertical-align: baseline;
}

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, th, var {
  font-style: normal;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

q:before, q:after {
  content: "";
}

abbr, acronym {
  border: 0;
}

#printarea {
  display: none;
}

img {
  max-width: 100%;
  vertical-align: top;
  image-rendering: -webkit-optimize-contrast;
}

/*　reset css end　*/
/* 全体設定 */
body {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(16px, 1.7vw, 18px);
  color: #555;
  letter-spacing: 0.05em;
  font-family: "Noto Serif JP", serif;
  line-height: 1.65;
}

a {
  text-decoration: none;
  color: inherit;
}

a:hover {
  transition-duration: 0.3s;
  opacity: 0.7;
}

.clearboth {
  clear: both;
}

.alignleft,
img.alignleft {
  display: inline;
  float: left;
  margin-right: 24px;
  margin-top: 4px;
}

.alignright,
img.alignright {
  display: inline;
  float: right;
  margin-left: 24px;
  margin-top: 4px;
}

.aligncenter,
img.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

img.alignleft,
img.alignright,
img.aligncenter {
  margin-bottom: 12px;
}

h1, h2, h3, h4, h5 {
  font-weight: bold;
}

h1 {
  font-size: clamp(42px, 5.5vw, 60px);
}

h2 {
  font-size: clamp(35px, 4.6vw, 50px);
}

h3 {
  font-size: 30px;
}

h4 {
  font-size: 15px;
}

h5 {
  font-size: 13px;
}

p {
  font-family: "游ゴシック", sans-serif;
  letter-spacing: 0.1em;
}

.flex_box {
  display: flex;
  justify-content: space-between;
}

.pc {
  display: block;
}

.sp {
  display: none;
}

.inner {
  max-width: 1100px;
  margin: auto;
  padding: 0 10px;
}
.inner .box_inn {
  width: 91%;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .inner .box_inn {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
/* 全体設定end */
.h2_title {
  color: #D90052;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.h2_title::before, .h2_title::after {
  content: "";
  height: 1px;
  background: #555;
}
.h2_title.f3::before, .h2_title.f3::after {
  width: calc((100% - 5em) / 2);
}
.h2_title.f4::before, .h2_title.f4::after {
  width: calc((100% - 6em) / 2);
}
.h2_title.f5::before, .h2_title.f5::after {
  width: calc((100% - 7em) / 2);
}
.h2_title.f6::before, .h2_title.f6::after {
  width: calc((100% - 8em) / 2);
}

.h2_title02 {
  border-bottom: 5px solid #D90052;
}
.h2_title02 .h2_inner {
  clip-path: polygon(0 0, 93% 0, 100% 100%, 0% 100%);
  background: #D90052;
  color: #fff;
  font-family: "M PLUS Rounded 1c", sans-serif;
  width: 53%;
  padding: 0 40px;
  box-sizing: border-box;
}
.h2_title02 .h2_inner span {
  font-size: 40%;
  font-weight: 400;
}
@media screen and (max-width: 940px) {
  .h2_title02 .h2_inner {
    width: 80%;
    font-size: 6vw;
  }
}

.but01 a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1em;
  width: clamp(165px, 22vw, 236px);
  color: #E95887;
  border: 2px solid;
  border-radius: 60px;
  line-height: clamp(42px, 5.5vw, 60px);
  white-space: nowrap;
  font-size: clamp(16px, 2vw, 22px);
  font-weight: bold;
  font-family: "游ゴシック", sans-serif;
  box-sizing: border-box;
}
.but01 a::after {
  content: ">";
}

.pink_tit {
  color: #F29C9F;
}

/*　main　*/
main {
  position: relative;
}

#main #breadcrumb {
  background-color: #f0f0f0;
  padding-left: 10px;
  font-size: 12px;
  width: calc(100% - 14px);
  margin-left: 2px;
  margin-bottom: 10px;
  margin-top: 3px;
}

/*　main end　*/
/**************************************************************
header
**************************************************************/
header {
  display: flex;
  gap: min(6.5vw, 125px);
  align-items: center;
  background: #FBF9F3;
  width: 100%;
  padding: 8px 0 3px;
}
header .logo {
  white-space: nowrap;
  line-height: 1;
}
header .logo a {
  display: flex;
  gap: 0.6em;
  align-items: center;
  color: #D90052;
  font-size: min(6vw, 38px);
}
header .logo a span {
  background: #D90052;
  color: #fff;
  font-size: 45%;
  font-weight: normal;
  border-radius: 0 10px 10px 0;
  padding: 10px 23px 10px 18px;
}
header .logo a::after {
  content: "";
  background-image: url("images/icon.svg");
  background-size: contain;
  background-position: 0 0;
  background-repeat: no-repeat;
  width: min(10vw, 69px);
  height: min(10vw, 69px);
}
header #g-nav ul {
  display: flex;
  gap: min(5.2vw, 100px);
}
@media screen and (max-width: 1520px) {
  header {
    gap: 4.5vw;
  }
  header #g-nav ul {
    gap: 3vw;
  }
}
@media screen and (max-width: 1270px) {
  header .logo a {
    gap: 0.2em;
  }
  header .logo a span {
    padding: 5px 10px 5px 10px;
  }
  header #g-nav {
    position: fixed;
    z-index: 999;
    top: 0;
    right: -100%;
    width: 50%;
    height: 100vh;
    background: #fff;
    transition: all 0.6s;
    padding: 90px 2%;
    box-sizing: border-box;
  }
  header #g-nav.panelactive {
    right: 0;
  }
  header #g-nav.panelactive #g-nav-list {
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999;
    width: 50%;
    margin: auto;
    height: 100vh; /*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }
  header #g-nav ul {
    z-index: 999;
    width: 100%;
    flex-direction: column;
    margin-bottom: 2em;
  }
  header #g-nav ul li a {
    padding: 10px;
    display: block;
    border-bottom: solid 1px;
    border-right: unset !important;
  }
}
@media screen and (max-width: 1270px) and (max-width: 767px) {
  header #g-nav {
    width: 100%;
  }
  header #g-nav.panelactive #g-nav-list {
    width: 96%;
  }
}
@media screen and (max-width: 1270px) {
  header .openbtn1 {
    width: 30px;
    height: 25px;
    vertical-align: middle;
    cursor: pointer;
    position: fixed;
    top: min(4vw, 29px);
    right: 15px;
    z-index: 1000;
    display: block;
  }
  header .openbtn1 span {
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #555;
    transition: all 0.5s;
  }
  header .openbtn1 span:nth-of-type(1) {
    top: 0;
  }
  header .openbtn1 span:nth-of-type(2) {
    top: 10px;
  }
  header .openbtn1 span:nth-of-type(3) {
    top: 20px;
  }
  header .openbtn1.active span:nth-of-type(1) {
    top: 5px;
    left: 0;
    transform: translateY(6px) rotate(-45deg);
    width: 100%;
  }
  header .openbtn1.active span:nth-of-type(2) {
    opacity: 0;
  }
  header .openbtn1.active span:nth-of-type(3) {
    top: 17px;
    left: 0;
    transform: translateY(-6px) rotate(45deg);
    width: 100%;
  }
}

@keyframes appear {
  0% {
    opacity: 0;
    top: 50px;
  }
  100% {
    opacity: 1;
    top: 57px;
  }
}
/**************************************************************
footer
**************************************************************/
/*共通*/
address {
  text-align: center;
  background: #D90052;
  line-height: 50px;
  color: #fff;
  font-family: "游ゴシック", sans-serif;
}

/*共通ここまで*/
footer {
  background: #F29C9F;
  color: #fff;
  padding-top: 80px;
}
footer .adress_box {
  display: flex;
  justify-content: center;
  gap: 50px;
  margin-bottom: 120px;
}
footer .adress_box .left {
  margin-top: 20px;
}
footer .adress_box .left img {
  width: 120px;
}
footer .adress_box .right p {
  margin-bottom: 35px;
}
footer .adress_box .right table th {
  width: 5em;
}
footer .f_nav {
  display: flex;
  justify-content: center;
  margin-bottom: 50px;
  font-size: 16px;
  font-family: "游ゴシック", sans-serif;
}
footer .f_nav a {
  padding: 0 1em;
  border-right: 1px solid #fff;
  box-sizing: border-box;
}
footer .f_nav li:last-of-type a {
  border-right: unset;
}
@media screen and (max-width: 850px) {
  footer .f_nav {
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 0.5em 0;
    padding: 0 10px;
  }
  footer .f_nav li {
    width: 50%;
  }
  footer .f_nav li a {
    display: block;
    width: 100%;
    font-size: 14px;
  }
  footer .f_nav li:last-of-type a {
    border-right: 1px solid #fff;
  }
}
@media screen and (max-width: 767px) {
  footer .adress_box {
    flex-direction: column;
    align-items: center;
    gap: 20px;
    margin-bottom: 80px;
  }
  footer .adress_box h2 {
    font-size: 8vw;
  }
  footer .adress_box .right p {
    margin-bottom: 15px;
  }
  footer .adress_box .right table th, footer .adress_box .right table td {
    display: block;
  }
  footer .adress_box .right table td {
    margin-bottom: 15px;
  }
}

/**************************************************************
top
**************************************************************/
.news li a {
  display: flex;
}
.news li a * {
  box-sizing: border-box;
}
.news li a span {
  border-bottom: 2px solid #E95887;
  width: 27%;
  padding: 10px 0.5em;
}
.news li a h3 {
  border-bottom: 2px solid #CCCCCC;
  width: 73%;
  padding: 10px min(10vw, 125px);
  font-weight: normal;
  font-size: inherit;
  word-break: break-all;
}
@media screen and (max-width: 768px) {
  .news li:not(:last-of-type) {
    margin-bottom: 1em;
  }
  .news li a {
    flex-direction: column;
  }
  .news li a span, .news li a h3 {
    width: 100%;
  }
}

.top h2 {
  margin-bottom: 60px;
}
.top .mv {
  margin-bottom: 60px;
}
@media screen and (max-width: 768px) {
  .top .mv img {
    width: 100vw;
  }
}
.top section {
  margin-bottom: 100px;
}
.top .sec01 .box_inn .left {
  width: min(64vw, 635px);
}
.top .sec01 .box_inn .left .text_box {
  margin-bottom: 65px;
}
.top .sec01 .box_inn .left .text_box h3 {
  margin-bottom: 1em;
}
.top .sec01 .box_inn .left .text_box p:not(:last-of-type) {
  margin-bottom: 1em;
}
.top .sec01 .box_inn .left .but01 {
  margin-left: min(8vw, 88px);
}
.top .sec01 .box_inn .right {
  width: min(27vw, 278px);
}
@media screen and (max-width: 768px) {
  .top .sec01 .box_inn {
    flex-direction: column;
  }
  .top .sec01 .box_inn .left, .top .sec01 .box_inn .right {
    width: 100%;
  }
  .top .sec01 .box_inn .left {
    margin-bottom: 50px;
  }
  .top .sec01 .box_inn .left .but01 {
    margin-left: unset;
  }
  .top .sec01 .box_inn .left .but01 a {
    margin: auto;
  }
  .top .sec01 .box_inn .left .text_box h3 {
    font-size: 22px;
  }
  .top .sec01 .box_inn .right {
    text-align: center;
  }
}
.top .sec02 li {
  padding-left: 1.3em;
  font-size: clamp(26px, 3.5vw, 38px);
  line-height: 1.25;
  position: relative;
}
.top .sec02 li:not(:last-of-type) {
  margin-bottom: 40px;
}
.top .sec02 li span {
  font-size: 73%;
}
.top .sec02 li::before {
  content: "";
  width: clamp(26px, 3.6vw, 40px);
  height: clamp(26px, 3.6vw, 40px);
  border: 3px solid #D90052;
  border-radius: 20px;
  box-sizing: border-box;
  position: absolute;
  top: 4px;
  left: 0;
}
.top .sec03 .box_inn table {
  width: min(44vw, 500px);
}
.top .sec03 .box_inn table th {
  width: 27.5%;
  border-bottom: 2px solid #E95887;
  padding: 10px 0.5em;
}
.top .sec03 .box_inn table td {
  width: 72.5%;
  border-bottom: 2px solid #CCCCCC;
  padding: 10px 2.2em;
}
.top .sec03 .box_inn iframe {
  width: min(40vw, 453px);
  aspect-ratio: 1/0.6;
}
@media screen and (max-width: 768px) {
  .top .sec03 .box_inn {
    flex-direction: column;
  }
  .top .sec03 .box_inn table, .top .sec03 .box_inn iframe {
    width: 100%;
  }
  .top .sec03 .box_inn table {
    margin-bottom: 1.5em;
  }
}

.bcnam {
  margin-bottom: 70px;
}
.bcnam .h2_title02 {
  margin-bottom: 67px;
}
.bcnam .but01 a {
  margin: auto;
}
.bcnam ul.box_inn {
  margin-bottom: 74px;
  gap: 40px;
  flex-wrap: wrap;
}
.bcnam ul.box_inn li {
  width: calc((100% - 80px) / 3);
}
.bcnam ul.box_inn li img {
  margin-bottom: 20px;
  object-fit: cover;
  object-position: top;
  width: calc(100% - 7px);
  box-shadow: 7px 7px 0 #CCCCCC;
  aspect-ratio: 1/0.85;
}
.bcnam ul.box_inn li h3 {
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  .bcnam ul.box_inn {
    flex-direction: column;
  }
  .bcnam ul.box_inn li {
    width: 100%;
  }
}

/**************************************************************
topここまで
**************************************************************/
/**************************************************************
page
**************************************************************/
#content.page, #content.category {
  padding: clamp(100px, 14vw, 150px) 0 clamp(56px, 7.5vw, 80px);
}
#content.page .news h1, #content.category .news h1 {
  margin-bottom: 2em;
}

#content.page.profile_page h2 {
  margin-bottom: 60px;
}
#content.page.profile_page .sec01 .box_inn {
  margin-bottom: 65px;
}
#content.page.profile_page .sec01 .box_inn .left {
  width: min(64vw, 635px);
}
#content.page.profile_page .sec01 .box_inn .left .text_box h3 {
  margin-bottom: 1em;
}
#content.page.profile_page .sec01 .box_inn .left .text_box p:not(:last-of-type) {
  margin-bottom: 1em;
}
#content.page.profile_page .sec01 .box_inn .left .but01 {
  margin-left: min(8vw, 88px);
}
#content.page.profile_page .sec01 .box_inn .right {
  width: min(27vw, 278px);
}
@media screen and (max-width: 768px) {
  #content.page.profile_page .sec01 .box_inn {
    flex-direction: column;
  }
  #content.page.profile_page .sec01 .box_inn .left, #content.page.profile_page .sec01 .box_inn .right {
    width: 100%;
  }
  #content.page.profile_page .sec01 .box_inn .left {
    margin-bottom: 50px;
  }
  #content.page.profile_page .sec01 .box_inn .left .but01 {
    margin-left: unset;
  }
  #content.page.profile_page .sec01 .box_inn .left .but01 a {
    margin: auto;
  }
  #content.page.profile_page .sec01 .box_inn .right {
    text-align: center;
  }
}
#content.page.profile_page .sec02 p {
  margin-bottom: 1em;
}
#content.page.profile_page .sec02 dl {
  font-family: "游ゴシック", sans-serif;
}
#content.page.profile_page .sec02 dl:not(:last-of-type) {
  margin-bottom: 2em;
}
@media screen and (max-width: 768px) {
  #content.page.profile_page .sec01 .box_inn .left .text_box h3 {
    font-size: 22px;
  }
}
#content.page.privacy_page h1 {
  text-align: center;
  margin-bottom: 80px;
}
#content.page.privacy_page h2 {
  margin-bottom: 25px;
  font-size: 32px;
}
#content.page.privacy_page section:not(:last-of-type) {
  margin-bottom: 60px;
}

/*個人情報保護方針*/
.privacy h2 {
  font-size: 36px;
  margin: 60px 0 80px;
}

.privacy .text_wrap {
  width: 46vw;
  margin: 0px auto 95px;
}

.privacy .text_box:first-of-type {
  margin: 0 0 72px;
}

.privacy .text_box {
  margin-top: 35px;
}

.privacy .text_box h3 {
  margin-bottom: 43px;
  font-size: 26px;
}

.privacy .text_box ol {
  margin: 30px 0 100px;
}

.privacy .text_box ol h4 {
  font-weight: bold;
  margin-bottom: 10px;
}

.privacy .text_box ol li {
  margin-bottom: 22px;
}

.privacy .text_right p:last-child {
  margin-top: 1.8em;
}

.privacy .last_text_box {
  width: 71%;
  margin: 40px auto 0;
  border: 2px solid #707070;
  padding: 30px 26px 38px 32px;
  background: #fff;
}

.privacy .last_text_box h3 {
  font-size: 16px;
}

.privacy.back::before {
  top: -2%;
}

.privacy.back::after {
  top: 56%;
}

/**************************************************************
category_page
**************************************************************/
/*ページャーcss*/
.pagination {
  margin: 88px 0 116px;
  text-align: center;
  font-family: "游ゴシック", sans-serif;
  color: #E95887;
  font-weight: bold;
}

.pagination a, .pagination span {
  border-radius: 5px;
  padding: 10px 20px;
  border: 1px solid #E95887;
  display: inline-block;
}

.pagination span.current {
  color: #fff;
  background: #E95887;
}

.pagination a {
  background: #fff;
  text-transform: capitalize;
}

.cat_youko .h2_title02 h1 {
  font-size: clamp(35px, 4.6vw, 50px);
}

/*ページャーcss　ここまで*/

.single .inner p:not(:last-of-type){
	margin-bottom:1em;
}
.single .news_btu{
	margin-top:2em;
}
/*# sourceMappingURL=style.css.map */