/* share */
body {
  color: #595757;
  font-family: Noto Sans CJK JP, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.main-visual__title {
  width: 100%;
}
.specialist {
  background-color: #70A8CA1A;
}
.specialist__title {
  color: #171C61;
  font-weight: bold;
}
.specialist__image {
  display: block;
}
.specialist__info-name--large {
  font-weight: bold;
}
.specialist__info-hr {
  border-top: 2px solid #144D9C;
}
.specialist__info-name,
.specialist__info-degree {
  color: #144D9C;
}
.specialist__info-explanation,
.content-text {
  color: #595757;
}
.content-h2,
.content-h3 {
  color: #916B1B;
  font-weight: bold;
}
.content-h2 {
  border-bottom: 2px solid #916B1B;
}
.content-h3 {
  position: relative;
}
.content-h3::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #70A8CA;
  width: 5px;
}
.content-h4 {
  color: #916B1B;
}
.point {
  background-color: #FFF9E3;
}
.point__title {
  color: #916B1B;
  text-align: center;
}
.point__item {
  position: relative;
}
.point__item::before {
  position: absolute;
  content: "";
  display: block;
  background-image: url(/kosodate/hattatsu/_shared/img/check_icon.svg);
  background-size: 100%;
  background-repeat: no-repeat;
}
a.point__item-link {
  color: #595757;
}
.recommend__title {
  color: #916B1B;
  text-align: center;
}
.recommend__list {
  background-color: #F7F7E5;
}
a.recommend__item-link {
  color: #595757;
  position: relative;
  display: block;
}
.recommend__item-link::after {
  position: absolute;
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  border-top: 2px solid #595757;
  border-right: 2px solid #595757;
  transform: rotateZ(45deg);
  right: 3px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.specialist-link__title {
  color: #161E5D;
  text-align: center;
}
.specialist-link__content {
  color: #595757;
  text-align: center;
  margin-bottom: 17px;
}
.specialist-link__link {
  display: block;
  margin: auto;
}
.specialist-link__link:hover {
  opacity: 0.8;
}
.specialist-link__image {
  width: 100%;
}

/* 共通 */
.center {
  text-align: center;
}
.disc-list {
  list-style: disc;
  padding-left: 20px;
}
.decimal-list,
.decimal-child-list {
  list-style: decimal;
  padding-left: 20px;
}
.disc-list,
.decimal-list {
  margin-bottom: 16px;
}
.decimal-list__item,
.decimal-child-list__item {
  padding-left: 5px;
}
.decimal-child-list {
  margin-left: 40px;
}
.decimal-child-list__item:last-child {
  margin-bottom: 8px;
}
.decimal-child-text {
  margin-left: 40px;
}
.point__inner {
  display: flex;
  justify-content:space-between;
  flex-wrap: wrap;
}
.main-visual__date, .content-risk{
  color: #808080;
}
h3.content-text strong{
  color: #A78949;
}

/* PC */
@media (min-width: 741px) {
  #main,
  #contents {
    width: 960px;
  }
  #contents {
    padding-top: 0px;
  }
  .main-visual {
    width: 960px;
    margin-bottom: 40px;
  }
  .main-visual__image {
    font-size: 48px;
    margin-bottom: 20px;
    width: 100%;
  }
  .main-visual__title {
    font-size: 30px;
    margin-bottom: 15px;
  }
  .content-text {
    font-size: 16px;
    margin-bottom: 16px;
  }
  .content-text__main {
    margin-bottom: 60px;
  }
  .image-box {
    font-size: 14px;
    margin-bottom: 25px;
  }
  .image-box__image{
    max-width: 100%;
  }
  .content-h2 {
    font-size: 28px;
    line-height: 1.3em;
    padding-bottom: 12px;
    margin-bottom: 30px;
    margin-top: 75px;
  }
  .content-h3 {
    font-size: 24px;
    padding-left: 14px;
    margin-bottom: 17px;
    margin-top: 40px;
  }
  .content-h3::before {
    height: 1.3em;
  }
  .content-h4 {
    font-size: 20px;
    margin-bottom: 17px;
    margin-top: 36px;
  }
  .specialist {
    padding: 20px 130px;
    margin-top: 80px;
    margin-bottom: 40px;
  }
  .specialist__info {
    display: flex;
    flex-wrap: wrap;
  }
  .specialist__title {
    font-size: 28px;
    text-align: center;
    margin-bottom: 15px;
  }
  .specialist__image {
    width: 96px;
    height: 96px;
    margin-right: 14px;
  }
  .specialist__text-info {
    width: 512px;
  }
  .specialist__info {
    margin-bottom: 20px;
  }
  .specialist__info-name--large {
    font-size: 24px;
    margin-right: 15px;
  }
  .specialist__info-name--large { font-size: 20px; }
  .specialist__info-degree { font-size: 16px; }
  .specialist__info-explanation { font-size: 16px; }
  .specialist__comment {
    font-size: 16px;
    margin-bottom: 16px;
  }
  .point {
    padding: 20px 134px 32px;
  }
  .point__title {
    font-size: 24px;
    margin-bottom: 24px;
  }
  .point__list {
    width: 48%;
  }
  .point__item {
    position: relative;
  }
  .point__item::before {
    position: absolute;
    content: "";
    display: block;
    background-image: url(/kosodate/hattatsu/_shared/img/check_icon.svg);
    background-size: 100%;
    background-repeat: no-repeat;
  }
  .point__item {
    font-size: 18px;
    padding-left: 25px;
    margin-bottom: 14px;
  }
  .point__item::before {
    width: 20px;
    height: 20px;
    left: 0;
    top: 3px;
  }
  .point__item-link {
    color: #595757;
  }
  .recommend__title {
    font-size: 28px;
    margin-bottom: 17px;
  }
  .recommend__list {
    padding: 12px 130px 43px;
    margin-top: 80px;
  }
  .recommend__item {
    font-size: 16px;
  }
  .recommend__item + .recommend__item {
    margin-top: 16px;
  }
  .word {
    margin: 40px 0;
  }
  .word__title {
    font-size: 28px;
    height: 68px;
    line-height: 68px;
  }
  .word__title::before {
    width: 40px;
    height: 40px;
    position: absolute;
    left: 245px;
    top: 0;
    bottom: 0;
    margin: 18px auto 10px;
  }
  .word__list {
    padding: 40px 130px 10px;
  }
  .word__item {
    font-size: 16px;
    width: 215px;
    height: 40px;
    margin-bottom: 30px;
  }
  .word__item::after {
    width: 10px;
    height: 10px;
  }
  .word__item + .word__item {
    margin-left: 27px;
  }
  .word__item:nth-child(4n) {
    margin-left: 0;
  }
  .word__item-link {
    line-height: 40px;
  }
  .specialist-link__title {
    margin-bottom: 17px;
  }
  .specialist-link__title-small {
    font-size: 20px;
    margin-bottom: 8px;
  }
  .specialist-link__title-large {
    font-size: 30px;
  }
  .specialist-link_content {
    font-size: 16px;
  }
  .disp_pc {
    display: block;
  }
  .disp_sp {
    display: none;
  }
  .specialist-link__link {
    max-width: 960px;
  }
  .main-visual__date{
    font-size: 16px;
  }
  .content-risk{
    font-size: 14px;
  }
  .specialist.specialist__lead{
    display: flex;
    align-items: center;
  }
  .specialist__lead .specialist__info{
    margin: 0;
    align-items: center;
  }
  .specialist__lead .specialist__title{
    margin: 0 16px 0 0;
    font-size: 20px;
  }
  .specialist__lead .specialist__info-name--large{
    font-size: 24px;
  }
}

/* SP */
@media (max-width: 740px) {
  #main {
    padding-top: 0px;
  }
  .m-hdr__keywords {
    display: none;
  }
  .main-visual, .main-text, .content-h2, .content-h3,
  .content-text, .point,
  .specialist, .recommend, .word, .specialist-link {
    margin: 0 16px;
  }
  .main-visual {
    margin-bottom: 40px;
  }
  .main-visual__image {
    display: block;
    width: 100%;
    margin-bottom: 20px;
  }
  .main-visual__title {
    font-size: 20px;
    margin-bottom: 20px;
  }
  .content-text {
    font-size: 16px;
    margin-bottom: 16px;
  }
  .content-text__main {
    margin-bottom: 60px;
  }

  .image-box {
    font-size: 14px;
    margin: 0 16px 25px;
  }
  .image-box__image{
    max-width: 100%;
  }
  .content-h2 {
    font-size: 20px;
    margin-bottom: 20px;
    margin-top: 56px;
  }
  .content-h3 {
    font-size: 18px;
    margin-bottom: 8px;
    padding-left: 10px;
  }
  .content-h3::before {
    height: 1.3em;
  }
  .specialist {
    margin-top: 80px;
    margin-bottom: 40px;
    padding: 25px 25px 35px;
  }
  .specialist__title {
    font-size: 16px;
    margin-bottom: 18px;
    text-align: center;
  }
  .specialist__image {
    width: 90px;
    height: 90px;
    margin: 0 auto 10px;
  }
  .specialist__info-name {
    position: relative;
    height: 40px;
  }
  .specialist__info-name--large {
    font-size: 15px;
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
    width: fit-content;
  }
  .specialist__info-name--small {
    font-size: 12px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: fit-content;
  }
  .specialist__info-hr {
    margin-top: 0;
    margin-bottom: 8px;
  }
  .specialist__info-degree {
    font-size: 14px;
    margin-bottom: 25px;
  }
  .specialist__info-explanation { font-size: 16px; }
  .specialist__comment {
    font-size: 16px;
  }
  .specialist__comment + .specialist__comment {
    margin-top: 16px;
  }
  .point__title {
    font-size: 18px;
    margin-bottom: 32px;
  }
  .point {
    padding: 25px 44px 6px;
  }
  .point__list {
    width: 100%;
  }
  .point__item {
    font-size: 16px;
    margin-bottom: 32px;
    padding-left: 26px;
  }
  .point__item::before {
    width: 20px;
    height: 20px;
    left: 0;
    top: 2px;
  }
  .recommend {
    margin-top: 56px;
  }
  .recommend__title {
    font-size: 18px;
    text-align: center;
    margin-bottom: 12px;
  }
  .recommend__list {
    padding: 15px 18px;
  }
  .recommend__item {
    font-size: 14px;
  }
  .recommend__item + .recommend__item {
    margin-top: 20px;
  }
  .recommend__item-link {
    padding-right: 20px;
  }
  .recommend__item-link::after {
    bottom: auto;
    top: 5px;
  }
  .disp_pc {
    display: none;
  }
  .disp_sp {
    display: block;
  }
  .disc-list,
  .decimal-list {
    margin: 0 16px 16px;
  }
  .decimal-child-list {
    margin-left: 20px;
  }
  .decimal-child-text {
    margin-left: 20px;
  }
  .main-visual__date{
    font-size: 16px;
  }
  .content-risk{
    font-size: 14px;
    margin-left: 16px;
  }
  .specialist.specialist__lead{
    padding: 16px 16px 13px;
    margin: 80px auto 40px;
    width: 100%;
    max-width: 343px;
    box-sizing: border-box;
  }
  .specialist__lead .specialist__info-degree{
    margin: 0;
  }
  .specialist__lead .specialist__info{
    margin: 0;
    align-items: center;
    display: flex;
  }
  .specialist__lead .specialist__title{
    margin: 0 16px 0 0;
    font-size: 20px;
  }
  .specialist__lead .specialist__info-name--large{
    font-size: 16px;
    position: relative;
  }
  .specialist__lead .specialist__info-name--small{
    position: relative;
    font-size: 11px;
    margin-left: 10px;
  }
  .specialist__lead .specialist__image{
    width: 60px;
    height: 60px;
    margin-right: 10px;
  }
  .specialist__lead .specialist__info-name{
    height: auto;
  }
}

/*
==============================

  2023/3/31追加

==============================
*/
/* PC */
@media (min-width: 741px) {
  .specialist__sns {
    display: flex;
    gap: 10px;
    justify-content: end;
    margin-top: -40px;
  }
  .specialist__sns--link {
    display: inline-block;
  }
  .specialist__sns--img {
    width: 36px;
    height: 36px;
  }
  .specialist__list {
    margin-top: 24px;
  }
  .specialist__listItem--link {
    font-size: 14px;
    line-height: 24px;
    color: #144D9C !important;
    position: relative;
    display: block;
  }
  .specialist__listItem--link::after {
    content: "";
    display: block;
    position: absolute;
    background-image: url(/expert/_assets/img/20230324/right-arrow.png);
    background-size: cover;
    width: 6px;
    height: 10px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  .specialist__info-book {
    font-size: 12px;
    color: #595757;
    line-height: 1.5;
    margin-top: 10px;
    display: flex;
  }
}
/* SP */
@media (max-width: 740px) {
  .specialist__sns {
    display: flex;
    gap: 2vw;
    justify-content: end;
    margin-top: -25vw;
    margin-bottom: 17vw;
  }
  .specialist__sns--link {
    display: inline-block;
  }
  .specialist__sns--img {
    width: 10.13vw;
    height: 10.13vw;
  }
  .specialist__list {
    margin-top: 6.4vw;
  }
  .specialist__listItem--link {
    font-size: 3.73vw;
    line-height: 1.64;
    color: #144D9C !important;
    position: relative;
    display: block;
    padding-right: 4vw;
  }
  .specialist__listItem--link::after {
    content: "";
    display: block;
    position: absolute;
    background-image: url(/expert/_assets/img/20230324/right-arrow.png);
    background-size: cover;
    width: 6px;
    height: 10px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  .specialist__info-book {
    font-size: 3.2vw;
    color: #595757;
    line-height: 1.5;
    margin-bottom: 3.2vw;
  }
}
/*
==============================

  ハブページ制作 2023/6/16追加

==============================
*/
/* PC */
@media (min-width: 741px) {
  .hub-area{
    margin: 53px 0 0 0;
  }
  .hub-area__ttl{
    font-size: 18px;
    font-weight: bold;
    border-left: 3px solid #2C8CDD;
    padding-left: 6px;
    line-height: 18px;
  }
  .hub-area__link-wrap{
    margin: 17px 0 0 0;
  }
  .hub-area__link{
    padding-left: 22px;
    position: relative;
  }
  .hub-area__link::before{
    position: absolute;
    content: "";
    width: 14px;
    height: 14px;
    background-image: url(/_shared/img/hub_page/arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
  .hub-area__link a{
    font-weight: 500;
  }
}
/* SP */
@media (max-width: 740px) {
  .hub-area{
    margin: 53px 16px 0;
  }
  .hub-area__ttl{
    font-size: 18px;
    font-weight: bold;
    border-left: 3px solid #2C8CDD;
    padding-left: 6px;
    line-height: 18px;
  }
  .hub-area__link-wrap{
    margin: 17px 0 0 0;
  }
  .hub-area__link{
    padding-left: 22px;
    position: relative;
  }
  .hub-area__link::before{
    position: absolute;
    content: "";
    width: 14px;
    height: 14px;
    background-image: url(/_shared/img/hub_page/arrow.svg);
    background-repeat: no-repeat;
    background-size: contain;
    top: 10%;
    left: 0;
  }
  .hub-area__link a{
    font-weight: 500;
  }
}

/*
==============================

  まるぐらんど記事ページ 2023/10/06追加

==============================
*/
/* PC */
@media (min-width: 741px) {
  .content-experience{
    background-color: #FFF9E3;
    width: 100%;
    margin-top: 30px;
    padding: 15px 20px;
    margin-bottom: 30px;
  }
  .content-experience__inner{
    display: flex;
    align-items: center;
  }
  .content-experience__inner img{
    width: 54px;
  }
  .content-experience--people{
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    color: #595757;
    margin-left: 15px;
    display: flex;
  }
  .content-experience--people-name{
    margin-left: 16px;
  }
  .content-experience__txt{
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    margin-top: 15px;
  }
}
/* SP */
@media (max-width: 740px) {
  .content-experience{
    background-color: #FFF9E3;
    width: 100%;
    margin-top: 30px;
    padding: 15px 20px;
    box-sizing: border-box;
    margin-bottom: 30px;
  }
  .content-experience__inner{
    display: flex;
    align-items: center;
  }
  .content-experience__inner img{
    width: 54px;
  }
  .content-experience--people{
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    color: #595757;
    margin-left: 15px;
  }
  .content-experience__txt{
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    margin-top: 15px;
  }
}