@charset "utf-8";
/* CSS Document */
.BrandingImgArea.TopPage {
  position: relative;
}
br.ShowSP {
  display: none;
}
br.HideSP {
  display: inline;
}
.PageTitleStyle3 {
  background-color: #333;
}

.BrandingImgArea.TopPage .Wrapper {
  width: 965px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-flow: column;
  justify-content: space-between;
  align-items: flex-end;
  height: 560px;
}
.BrandingImgArea.TopPage .Inner {
  width: 500px;
  height: 250px;
  padding: 10px 30px 10px 30px;
  margin: 2em 0;

  background-color: rgba(51, 51, 51, 0.7);
  position: absolute;
  left: 0px;
  top: 90px;
}
.BrandingImgArea.TopPage .Info {
  margin: 28em 0;
}
.BrandingImgArea.TopPage .Info a img {
  transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
  opacity: 1;
  border-radius: 4px;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}
.BrandingImgArea.TopPage .Info a:hover img {
  transform: scale(1.02);
  opacity: 0.9;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}

.Grid3.Why table.TableStyleGen02 thead th {
  background-color: #0175ad;
  color: #fff;
}
.Grid3.Why table.TableStyleGen02 tbody th {
  background-color: #f5f1e0;
}

.Grid3 .SmallList li {
  font-weight: bold;
  font-size: 1.05em;
  line-height: 1.3;
  color: #555;
  padding: 0.25em 0 0.25em 2em;
  margin: 0 0 1em 0;
  position: relative;
  background: transparent url(/-/media/ind/sbo/service/image/icon_list.png)
    no-repeat 10px 48% / 20px;
  min-height: 1em;
}
.BrandingImgArea.TopPage {
  margin-bottom: 0;
}

#Contents .Top .MovieArea {
  background: #eeeeee;
  padding-bottom: 120px;
  margin-bottom: 50px;
}
#Contents .Top .MovieArea h2 {
  text-align: center;
  color: #444;
  padding-top: 50px;
  font-size: 250%;
  font-weight: bold;
}
.MovieArea .IntroductionExampleButton {
  display: table;
  text-align: center;
  margin: 0 auto;
  width: 320px;
  background: #626262 url(/-/media/ind/sbo/image/y-triangle.png) no-repeat 100%
    100%;
}
.MovieArea .IntroductionExampleButton a:link,
.MovieArea .IntroductionExampleButton a:visited {
  display: table-cell;
  vertical-align: middle;
  text-decoration: none;
  color: #fff;
}
.MovieArea .IntroductionExampleButton a:link *,
.MovieArea .IntroductionExampleButton a:visited * {
  color: #fff;
}
.MovieArea .IntroductionExampleButton a:link .Inner,
.MovieArea .IntroductionExampleButton a:visited .Inner {
  padding: 20px 0;
  border: solid 1px #444;
  color: #fff;
}
.MovieArea .IntroductionExampleButton a .Inner ul {
  list-style-type: none;
  text-decoration: none;
}
.MovieArea .IntroductionExampleButton a .Inner ul li {
  font-weight: bold;
  text-decoration: none;
  padding-right: 10px;
  background: url(/-/media/ind/sbo/image/arrow.png) no-repeat 75% center / 19px
    19px;
}
.MovieArea .Rotation {
  width: auto;
}
.MovieArea .Rotation .slick-list {
  overflow: visible;
}
.MovieArea .Rotation .slick-dots li button {
  font-size: 1em;
}
.MovieArea .Rotation li {
  text-align: center;
  margin: auto;
}
.MovieArea .Rotation li a:link,
.MovieArea .Rotation li a:visited {
  color: #444;
  font-weight: bold;
}
.MovieArea .Rotation li img {
  border-radius: 5px;
  border: 1px solid #ccc;
  margin: auto;
  text-align: center;
  transform: scale(1);
  transition: 0.08s ease-in;
}
.MovieArea .Rotation li img:hover {
  transform: scale(1.1);
}
.MovieArea .slick-prev {
  left: 0;
}
.MovieArea .slick-prev {
  left: 0;
}
.MovieArea .slick-next {
  right: 0;
}

.Movie .Thumbnail {
  margin: 0 25px;
}
.Movie .Slide img {
  margin: 1em auto;
  border-radius: 5px;
}
.Movie .Slide li.slick-slide {
  display: flex;
  flex-flow: column;
  justify-content: space-around;
}
@media screen and (max-width: 1200px) {
  .JS br.ShowRWD {
    display: inline;
  }
  .JS .BoxContact_small {
    padding-left: 5px;
    padding-right: 5px;
  }
  .JS #Contents .Top {
    margin-left: -15px;
    margin-right: -15px;
  }

  /** top Branding **/
  .JS .BrandingImgArea.TopPage {
    width: 100%;
  }
  .JS .BrandingImgArea.TopPage .ImgAreaSP {
    background: url(/-/media/ind/sbo/image/new_fig01.jpg) no-repeat center
      center/cover;
    position: relative;
  }
  .JS .BrandingImgArea.TopPage .Wrapper {
    width: 100%;
  }
  .JS .BrandingImgArea.TopPage .Inner {
    width: auto;
    height: auto;
    box-sizing: border-box;
    padding: 10px 30px 30px 30px;
  }
  /*.JS .BrandingImgArea.TopPage h1 {
		padding: 30px 0 15px 0;
	}*/
  .JS .BrandingImgArea.TopPage h1 span.PageTitle {
    font-size: 250%;
  }
  .JS .BrandingImgArea.TopPage p.Lead {
    font-size: 80%;
  }
  .JS .BrandingImgArea.TopPage .Info {
    margin: 28em 0;
  }
  /** h1 **/
  .JS .PageTitleStyle3 h1 {
    background: url(/-/media/ind/sbo/image/g-triangle.png) no-repeat #333333
      right bottom;
  }
  .JS .Concept1 {
    background-image: url(/-/media/ind/sbo/image/concept01_a.jpg);
  }
  .JS .Concept2 {
    background-image: url(/-/media/ind/sbo/image/concept02_a.jpg);
  }
  .JS .Concept1.Concept3 {
    background-image: url(/-/media/ind/sbo/image/concept03_a.jpg);
  }
  .JS .Concept1,
  .JS .Concept2 {
    width: 100%;
    height: auto;
    background-repeat: no-repeat;
    background-size: auto 400px;
    background-position: center top;
    padding-bottom: 270px;
  }
  .JS .Concept1 .BackGround,
  .Concept2 .BackGround {
    width: 100%;
    height: 60px;
    top: 400px;
    left: 0;
  }
  .JS .Concept1 .Text h2,
  .Concept2 .Text h2 {
    width: 100%;
    font-size: 213.5%;
  }
  .JS .Concept1 .Text p.TextStyle1 {
    font-size: 100%;
  }
  .JS .Concept1 .Text,
  .Concept2 .Text {
    width: auto;
    left: 0;
    position: relative;
    top: 230px;
    height: auto;
    margin-left: 40px;
    margin-right: 40px;
    background: rgba(51, 51, 51, 0.8);
  }
  .JS .Trisection {
    height: auto;
    padding: 100px 15px;
  }
  .JS .Trisection .TrisectionBox {
    width: 100%;
  }
  .JS .Trisection .TrisectionBox .ColumnSet {
    margin: 0 0 15px;
  }
  /*.JS .Top div.Section {
		margin-left: -15px;
		margin-right: -15px;
	}*/
  .JS .Concept1 .Img,
  .JS .Concept2 .Img {
    /*position: relative;
		right: 0;
		left: 0;*/
    display: none;
  }
  .JS #Contents .Concept1 .Img img,
  .JS .Concept2 .Img img {
    width: auto;
    height: 100%;
    max-width: max-content;
  }
  .JS .UserVoice {
    padding-bottom: 80px;
    padding-left: 30px;
    padding-right: 30px;
  }
  .JS .UserVoice h2 {
    padding-top: 80px;
  }
  .JS .UserVoice .Text {
    width: 100%;
  }
  .JS .UserVoice .Img2 {
    margin-left: -30px;
    margin-right: -30px;
  }
  /*.JS .UserVoice .IntroductionExampleButton {
		margin-top: 70px;
	}*/

  /** サービス **/
  .JS .Grid3 .Super .ListStyle1 {
    width: 100%;
  }
  .JS .Service .Box.yellow {
    margin-bottom: 15px;
  }
  .JS .Service .ColumnSet {
    margin-bottom: 0;
  }
  .JS .Grid3 .Column1andHalf {
    padding-left: 10px;
  }

  /** FAQ **/
  .JS .Grid3 div.FAQSetStyle div.ImgSet {
    width: calc(100% - 30px);
  }
  .JS .Grid3 div.FAQSetStyle div.ImgSet h3 {
    padding-left: 10px;
  }
  .JS .Grid3 div.FAQSetStyle div.ImgSet p {
    margin-left: 10px;
  }

  /** ホワイトペーパー **/
  .JS div.ImgW200SetStyle p.Img.RightAdjust + div.ImgSet {
    margin-left: -200px;
    float: none;
  }
}
@media screen and (max-width: 767px) {
  /** top Branding **/
  .JS .BrandingImgArea.TopPage {
    width: 100%;
  }
  .JS .BrandingImgArea.TopPage .ImgAreaSP {
    background: url(/-/media/ind/sbo/image/new_fig01_s.jpg) no-repeat center
      center/cover;
    position: relative;
  }
  .JS .BrandingImgArea.TopPage h1 span.PageTitle {
    font-size: 200%;
  }
  .JS .BrandingImgArea.TopPage p.Lead {
    font-size: 80%;
  }
  /** h1 **/
  .JS .PageTitleStyle3 h1 {
    padding-right: 57px;
  }
  .JS .inqLink .Column1andHalf {
    float: left;
    width: 50%;
  }
  .JS .UserVoice h2 {
    font-size: 200%;
  }

  /** サービス **/
  .JS .Grid3 .Column1andHalf {
    width: 50%;
    float: left;
  }

  /** 事例 **/
  .JS .Case .Column1andHalf {
    float: left;
    width: 50%;
  }

  .JS .Grid1 p.ImgOnlyStyle {
    text-align: center;
  }
}
@media screen and (max-width: 579px) {
  .JS br.HideRWD2 {
    display: none;
  }
  .JS br.ShowSP {
    display: inline;
  }
  .JS .BrandingImgArea.TopPage {
    background: none;
    border-bottom: none;
    margin-bottom: 0;
    height: auto;
    padding-bottom: 260px;
  }
  .JS .BrandingImgArea.TopPage .ImgAreaSP {
    background: url(/-/media/ind/sbo/image/new_fig01_s.jpg) no-repeat center
      center/cover;
    height: 360px;
    position: relative;
  }
  .JS .BrandingImgArea.TopPage .Wrapper {
    position: absolute;
    top: 250px;
    background-color: #fff;
    text-align: center;
  }
  .JS .BrandingImgArea.TopPage .Wrapper {
    display: block;
  }
  .JS .BrandingImgArea.TopPage .Inner {
    width: auto;
    height: auto;
    padding: 30px;
    margin: auto;
    top: 250px;
    position: static;
    display: inline-block;
    text-align: left;
    background-color: rgba(51, 51, 51, 0.7);
  }
  .JS .BrandingImgArea.TopPage .Info {
    margin: 1em 0;
  }
  .JS .BrandingImgArea.TopPage h1 span.PageTitle {
    font-size: 200%;
  }
  .JS .BrandingImgArea.TopPage h1,
  .BrandingImgArea.TopPage h1 span {
    padding-top: 0;
  }
  .JS .Concept1,
  .JS .Concept2 {
    background-size: auto 200px;
    padding-bottom: 145px;
  }
  .JS .Concept1 .Text h2,
  .Concept2 .Text h2 {
    font-size: 200.5%;
    margin-bottom: 0;
  }
  .JS .Concept1 .Text,
  .Concept2 .Text {
    padding: 25px;
    top: 108px;
  }

  .JS .Concept1 .Text p.TextStyle1 {
    font-size: 95%;
  }
  .JS .Concept1 .BackGround,
  .Concept2 .BackGround {
    background-color: transparent;
  }

  .JS .ColumnSet .Column1andthird {
    width: 100%;
  }
  .JS .Column1andthird {
    margin-bottom: 15px;
    float: none;
    margin-left: 0;
  }
  .JS .Trisection .TrisectionBox .portalColumn .card a p.ImgOnlyStyle {
    text-align: left;
  }
  .JS .Trisection .TrisectionBox .portalColumn .card .Inner h2 {
    text-align: left;
    margin-top: -67px;
    margin-left: 75px;
  }
  .JS .Trisection .TrisectionBox .portalColumn .card .Inner {
    padding: 20px;
  }
  .JS .UserVoice {
    padding-bottom: 40px;
  }
  /*.JS .UserVoice .IntroductionExampleButton {
		margin-top: 40px;
	}*/

  /** サービス **/
  .JS .Service .Column1andHalf {
    width: 100%;
    float: none;
    text-align: center;
  }
  .JS .Service .Box.yellow {
    margin-bottom: 10px;
  }
  .JS .Service .Box.yellow p span {
    margin-bottom: 0;
    font-size: 120%;
  }
  .JS .Service .Box.yellow p {
    font-size: 85%;
  }
  /*.JS .inqLink .Column1andHalf {
		float: none;
		width: 100%;
		text-align: center;
	}*/
  .JS .Service .award {
    background-image: url("/-/media/ind/sbo/service/image/img_award_sp.png");
  }
  .JS .Service .award h2 {
    font-size: 196%;
    text-shadow: 1px 1px 6px #40363a;
  }
  /** 事例 **/
  .JS .Case .Column1andHalf {
    float: none;
    width: auto;
    max-width: 353px;
    margin-left: auto;
    margin-right: auto;
  }

  /** ホワイトペーパー **/
  .JS .Library div.ImgW170SetStyle p.Img {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    float: none;
  }
  .JS .Library .ImgW170SetStyle .ImgSet {
    margin-left: 0;
  }
  .JS .Library .ImgW170SetStyle .ImgSet .TableStyleGen02 {
    margin-left: 0;
  }
  .JS div.ImgW200SetStyle p.Img.RightAdjust {
    float: none;
  }
  .JS div.ImgW200SetStyle p.Img.RightAdjust + div.ImgSet {
    margin-left: 0;
    float: none;
  }
  .JS .ImgW200SetStyle .ImgSet p {
    margin-left: 0;
  }
}
@media screen and (max-width: 700px) {
  .JS br.HideSP {
    display: none;
  }
  .JS .BrandingImgArea.TopPage h1 span.PageTitle {
    font-size: 160%;
  }
  .JS .BrandingImgArea.TopPage p.Lead {
    font-size: 80%;
  }
  .JS .Concept1 .Text h2,
  .Concept2 .Text h2 {
    font-size: 190%;
  }
  .JS .Concept1 .Text p.TextStyle1 {
    font-size: 90%;
  }
  .JS .Trisection .TrisectionBox .portalColumn .card a p.ImgOnlyStyle img {
    width: 45px;
  }
  .JS .Trisection .TrisectionBox .portalColumn .card .Inner h2 {
    margin-top: -58px;
    margin-left: 56px;
  }
  .JS .UserVoice {
    padding-left: 15px;
    padding-right: 15px;
  }
  .JS .UserVoice .IntroductionExampleButton {
    width: 90%;
  }
  .JS .UserVoice .IntroductionExampleButton a .Inner ul li {
    background-position: 80% center;
  }
  .JS .UserVoice h2 {
    font-size: 200%;
    padding-top: 60px;
  }
  .JS .PageTitleStyle3 h1 {
    font-size: 140%;
    padding: 20px 25px;
  }
  .JS h2.sbo {
    font-size: 115%;
  }
  .JS .Grid3 h3 {
    font-size: 1em;
  }
  .JS .BrandingImgArea.TopPage .Inner {
    padding: 40px 20px;
  }
  /** サービス **/
  .JS .Service .award h2 {
    font-size: 150%;
  }
}

/*------------------------*/
/* 20240228 add */
#Contents br.pc {
  display: inline;
}
#Contents br.sp {
  display: none;
}
.GridSet.sbo_top {
  width: 100%;
  /*margin-bottom: -65px;*/
}
.GridSet.sbo_top .Section {
  padding: 120px 0;
}
.GridSet.sbo_top .Section.bgcol1 {
  background-color: #f2f2f2;
}
.GridSet.sbo_top .Inner {
  max-width: 965px;
  margin: 0 auto;
}
.GridSet.sbo_top .btn {
  height: 60px;
  width: 300px;
  background-color: #333;
  background-image: url(/-/media/ind/sbo/image/icon_btnarrow_wt.svg);
  background-repeat: no-repeat;
  background-position: calc(100% - 20px) center;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  box-sizing: border-box;
}
.GridSet.sbo_top .btn:hover {
  text-decoration: none;
  opacity: 0.6;
}
.GridSet.sbo_top .btn.doc {
  color: #333;
  background-color: #fff;
  background-image: url(/-/media/ind/sbo/image/icon_btnarrow_bk.svg);
}
.GridSet.sbo_top .btn.inquiry {
  color: #333;
  background-color: #fdb814;
  background-image: url(/-/media/ind/sbo/image/icon_btnarrow_bk.svg);
}
.GridSet.sbo_top .btn.detail {
  box-sizing: border-box;
  border: 1px solid #fdb814;
  background-color: transparent;
  color: #333;
  height: 40px;
  width: 142px;
  font-size: 14px;
  background-image: url(/-/media/ind/sbo/image/icon_btnarrow_og.svg);
  background-position: calc(100% - 15px) center;
  margin: 0 0 0 auto;
}
.GridSet.sbo_top h2 {
  font-size: 32px;
  font-weight: bold;
  color: #333;
  line-height: 2;
  position: relative;
  text-align: center;
  padding-bottom: 30px;
  margin-bottom: 60px;
}
.GridSet.sbo_top h2::after {
  content: "";
  width: 80px;
  height: 3px;
  background-color: #b1000e;
  position: absolute;
  left: calc(50% - 40px);
  bottom: 0;
}

/* sec_fv */
.sbo_top .Section.sec_fv {
  height: 565px;
  width: 100%;
  background-color: #333;
  background-image: url(/-/media/ind/sbo/image/img_fv_top.jpg);
  background-size: cover;
  background-position: center center;
  position: relative;
  padding: 0;
  color: #fff;
  text-align: center;
  display: flex;
  align-items: center;
}
.sbo_top .Section.sec_fv h1 {
  font-size: 54px;
  font-weight: bold;
}
.sbo_top .Section.sec_fv h1 .subtit {
  font-size: 24px;
  font-weight: bold;
  display: block;
  line-height: 1;
}
.sbo_top .Section.sec_fv .lead {
  font-size: 18px;
  line-height: 2;
  margin-bottom: 60px;
}
.sbo_top .Section.sec_fv .cta_btns {
  display: flex;
  justify-content: center;
}
.sbo_top .Section.sec_fv .cta_btns .btn {
  letter-spacing: 0.1em;
  margin: 0 20px;
}
/* sec_award */
.sbo_top .Section.sec_award {
  color: #fff;
  padding: 60px 0;
}
.sbo_top .Section.sec_award .layoutbox {
  display: flex;
  justify-content: center;
	
}
.sbo_top .Section.sec_award .layoutbox .img {
  /*max-width: 240px;*/
	width: 100%;
}
.sbo_top .Section.sec_award .layoutbox .texts {
margin-bottom: 2em;
 /* padding-left: 15px; */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
	    color: #333;
}
.texts span { /*トピックのラベル*/
    font-size: 1rem;
    font-weight: bold;
	color: #fdb814;
}

.sbo_top .Section.sec_award .layoutbox .texts p {
  /*line-height: 2;*/
  font-size: 14px;
}
.sbo_top .Section.sec_award .layoutbox p.TextStyle1{
	position: absolute;
	bottom: 1em;
	right: 1em;
	margin: 0;
}
.sbo_top .Section.sec_award .layoutbox p.TextStyle1 a:link,
.sbo_top .Section.sec_award .layoutbox p.TextStyle1 a:visited{
	color: #333;
font-size: 14px;
    font-weight: bold;
	background-image: url(/-/media/ind/sbo/image/icon_btnarrow_og.svg);
    background-position: right center;
    background-repeat: no-repeat;
    padding-right: 20px;
	
	
}
.sbo_top .Section.sec_award .layoutbox p.TextStyle1 a:hover{
	text-decoration: none;
}
.sbo_top .Section.sec_award .layoutbox .texts .caption {
  line-height: 1;
  font-size: 18px;
  font-weight: bold;
  /*color: #fdb814;*/
}
.sbo_top .Section.sec_award .layoutbox .texts .award {
  /*font-size: 16px;*/
  font-weight: bold;
}
/* sec_achievement */
.sbo_top .Section.sec_achievement .Inner {
  max-width: 893px;
}
.sbo_top .Section.sec_achievement h2 {
  background-image: url(/-/media/ind/sbo/image/img_achievement_h2.svg);
  background-repeat: no-repeat;
  background-position: center top;
  display: table;
  padding: 80px 40px 20px 40px;
  margin: 0 auto 10px auto;
  font-size: 54px;
  line-height: 1;
}
.sbo_top .Section.sec_achievement h2::after {
  background-color: transparent;
  background-image: url(/-/media/ind/sbo/image/img_achievement_h2_dots.svg);
  width: 100%;
  left: 0;
}
.sbo_top .Section.sec_achievement .lead {
  text-align: center;
  font-size: 14px;
  line-height: 2;
  margin-bottom: 60px;
}
.sbo_top .Section.sec_achievement ul.records {
  display: flex;
  justify-content: space-evenly;
  margin-bottom: 40px;
}
.sbo_top .Section.sec_achievement ul.records li {
  width: 242px;
  height: 153px;
  background-repeat: no-repeat;
  background-position: center center;
  text-align: center;
  color: #fdb814;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.sbo_top .Section.sec_achievement ul.records li p {
  font-size: 48px;
  font-weight: bold;
  line-height: 1;
}
.sbo_top .Section.sec_achievement ul.records li p.qty {
  font-size: 14px;
  font-weight: normal;
  line-height: 1;
  color: #333;
  display: block;
  margin-bottom: 20px;
}
.sbo_top .Section.sec_achievement ul.records li.record_client {
  background-image: url(/-/media/ind/sbo/image/img_achievement_01.svg);
}
.sbo_top .Section.sec_achievement ul.records li.record_site {
  background-image: url(/-/media/ind/sbo/image/img_achievement_02.svg);
}
.sbo_top .Section.sec_achievement ul.records li.record_countory {
  background-image: url(/-/media/ind/sbo/image/img_achievement_03.svg);
}
.sbo_top .Section.sec_achievement ul.records li.record_countory p.qty {
  margin-bottom: 10px;
}
.sbo_top .Section.sec_achievement ul{
  margin-bottom: 20px;
}
.sbo_top .Section.sec_achievement ul.clients {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.sbo_top .Section.sec_achievement ul.clients li {
  width: 33.3333%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sbo_top .Section.sec_achievement ul.clients li img {
  transform: scale(0.5);
}
.sbo_top .Section.sec_achievement .note1{
  text-align: right;
  font-size: 14px;
  margin-bottom: 30px;
}
.sbo_top .Section.sec_achievement .note2{
  text-align: center;
  font-size: 16px;
}
/* sec_solve */
.sbo_top .Section.sec_solve ul.problems {
  background-color: #fff;
  padding: 40px;
  margin-bottom: 110px;
  position: relative;
}
.sbo_top .Section.sec_solve ul.problems::after {
  content: "";
  width: 100%;
  height: 30px;
  background: url(/-/media/ind/sbo/image/icon_down.svg) center bottom no-repeat;
  position: absolute;
  left: 0;
  bottom: -70px;
}
.sbo_top .Section.sec_solve ul.problems li {
  font-size: 20px;
  font-weight: bold;
  background: url(/-/media/ind/sbo/image/icon_checked.svg) left center no-repeat;
  padding-left: 45px;
  margin-bottom: 20px;
}
.sbo_top .Section.sec_solve ul.problems li:last-child {
  margin-bottom: 0;
}
.sbo_top .Section.sec_solve .solve {
  text-align: center;
}
.sbo_top .Section.sec_solve .solve p {
  font-size: 31px;
  font-weight: bold;
  line-height: 1.2;
  background-image: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 55%,
    rgba(253, 184, 20, 0.2) 55%
  );
  display: inline;
}
/* sec_about */
.sbo_top .Section.sec_about {
  background-color: #fff8e7;
  padding-top: 0;
  padding-bottom: 60px;
  overflow: visible;
}
.sbo_top .Section.sec_about h2 {
  color: #f5be00;
  font-size: 54px;
  line-height: 1;
  padding-bottom: 0;
  margin-bottom: 30px;

  position: relative;
  top: -24px;
}
.sbo_top .Section.sec_about h2::after {
  content: none;
}
.sbo_top .Section.sec_solve {
  margin-bottom: 0px;
}
.sbo_top .Section.sec_about .layoutbox {
  display: flex;
}
.sbo_top .Section.sec_about .layoutbox .texts {
  padding-left: 80px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.sbo_top .Section.sec_about .layoutbox .texts p {
  margin-bottom: 2em;
  line-height: 2;
}
.sbo_top .Section.sec_about .layoutbox .texts p:last-child {
  margin-bottom: 0;
}
/* sec_feature */
.sbo_top .Section.sec_feature ol.features {
  margin-top: 0;
  padding: 0;
  list-style: none;
}
.sbo_top .Section.sec_feature ol.features li {
  padding-bottom: 60px;
  border-bottom: 3px solid #e5e5e5;
  margin-bottom: 40px;
}
.sbo_top .Section.sec_feature ol.features li:last-child {
  padding-bottom: 0px;
  border-bottom: none;
  margin-bottom: 0px;
}
.sbo_top .Section.sec_feature ol.features li h3 {
  font-size: 24px;
  background-color: transparent;
  padding: 0;
  margin: 0;
  border: none;
  margin-bottom: 30px;
}
.sbo_top .Section.sec_feature ol.features li h3 em {
  font-style: normal;
  color: #b1000e;
}
.sbo_top .Section.sec_feature ol.features li h3 .index {
  font-size: 22px;
  background-color: #fdb814;
  border-radius: 5px;
  margin-right: 10px;
  line-height: 50px;
  display: inline-block;
  width: 180px;
  text-align: center;
}
.sbo_top .Section.sec_feature ol.features .layoutbox {
  display: flex;
}
.sbo_top .Section.sec_feature ol.features .img {
  text-align: center;
}
.sbo_top .Section.sec_feature ol.features .layoutbox .img {
  width: 455px;
}
.sbo_top .Section.sec_feature ol.features .layoutbox .texts {
  padding-left: 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.sbo_top .Section.sec_feature ol.features li p {
  line-height: 2;
  margin-bottom: 2em;
}
.sbo_top .Section.sec_feature ol.features li p:last-of-type {
  margin-bottom: 0;
}
/* sec_cta */
.sbo_top .Section.sec_cta {
  background-color: #333;
  color: #fff;
  padding: 60px 0;
}
.sbo_top .Section.sec_cta .lead {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  line-height: 2;
  margin-bottom: 40px;
}
.sbo_top .Section.sec_cta h2 {
  padding: 0;
  margin: 0;
  font-size: 36px;
  color: #fdb814;
  margin-bottom: 60px;
}
.sbo_top .Section.sec_cta h2::after {
  content: none;
}
.sbo_top .Section.sec_cta h2 span {
  background-color: transparent;
  font-size: 18px;
  font-weight: normal;
  padding: 0;
}
.sbo_top .Section.sec_cta .cta_btns {
  display: flex;
  justify-content: center;
}
.sbo_top .Section.sec_cta .cta_btns .btn {
  letter-spacing: 0.1em;
  margin: 0 20px;
}
/* sec_case */
.sbo_top .Section.sec_case .cards {
  margin-bottom: 80px;
}
.sbo_top .Section.sec_case .cards a.card {
  background-color: #fff;
  padding: 20px;
  display: flex;
  color: #333;
  margin-bottom: 40px;
  position: relative;
  padding-bottom: 60px;
}
.sbo_top .Section.sec_case .cards a.card::after {
  content: "詳しく観る";
  font-size: 14px;
  font-weight: bold;
  position: absolute;
  right: 20px;
  bottom: 20px;
  line-height: 1;
  background-image: url(/-/media/ind/sbo/image/icon_btnarrow_og.svg);
  background-position: right center;
  background-repeat: no-repeat;
  padding-right: 20px;
}
.sbo_top .Section.sec_case .cards a.card * {
  color: inherit;
}
.sbo_top .Section.sec_case .cards a.card:hover,
.sbo_top .Section.sec_case .cards a.card:hover * {
  text-decoration: none;
}
.sbo_top .Section.sec_case .cards a.card:hover {
  opacity: 0.6;
}
.sbo_top .Section.sec_case .cards .card .img {
  width: 320px;
}
.sbo_top .Section.sec_case .cards .card .texts {
  padding-left: 40px;
}
.sbo_top .Section.sec_case .cards .card .texts h3 {
  border: none;
  padding: 0;
  margin: 0;
  background: none;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 20px;
}
.sbo_top .Section.sec_case .cards .card .texts ul.tags {
  margin-bottom: 20px;
}
.sbo_top .Section.sec_case .cards .card .texts ul.tags li {
  display: inline-block;
  background-color: #fdb814;
  border-radius: 100vw;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  padding: 10px 10px;
  margin-right: 10px;
}
.sbo_top .Section.sec_case .cards .card .texts p {
  line-height: 2;
}
/* sec_useful */
.sbo_top .Section.sec_useful .cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
}
.sbo_top .Section.sec_useful .cards a.card {
  background-color: #fff;
  color: #333;
  display: block;
  width: 300px;
  position: relative;
  padding-bottom: 60px;
  border: 1px solid #f2f2f2;
  box-shadow: 2px 2px 0px 0px rgba(0, 0, 0, 0.16);
  box-sizing: border-box;
  margin-bottom: 40px;
}
.sbo_top .Section.sec_useful .cards::after {
  content: "";
  width: 300px;
}
.sbo_top .Section.sec_useful .cards a.card::after {
  content: "資料をダウンロード";
  font-size: 14px;
  font-weight: bold;
  position: absolute;
  right: 20px;
  bottom: 20px;
  line-height: 20px;
  background-image: url(/-/media/ind/sbo/image/icon_download.svg);
  background-position: right center;
  background-repeat: no-repeat;
  padding-right: 30px;
}
.sbo_top .Section.sec_useful .cards a.card * {
  color: inherit;
}
.sbo_top .Section.sec_useful .cards a.card:hover,
.sbo_top .Section.sec_useful .cards a.card:hover * {
  text-decoration: none;
}
.sbo_top .Section.sec_useful .cards a.card:hover {
  opacity: 0.6;
}
.sbo_top .Section.sec_useful .cards .card .img {
  max-width: 100%;
}
.sbo_top .Section.sec_useful .cards .card .texts {
  padding: 20px;
  padding-bottom: 0;
}
.sbo_top .Section.sec_useful .cards .card .texts h3 {
  border: none;
  padding: 0;
  margin: 0;
  background: none;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
}

/* sec_column */
.sbo_top .Section.sec_column {
  background-color: #FFF8E7;
}
.sbo_top .Section.sec_column .cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
}
.sbo_top .Section.sec_column .cards a.card {
  background-color: #fff;
  color: #333;
  display: block;
  width: 300px;
  position: relative;
  padding-bottom: 60px;
  border: 1px solid #f2f2f2;
  box-shadow: 2px 2px 0px 0px rgba(0, 0, 0, 0.16);
  box-sizing: border-box;
  margin-bottom: 40px;
}
.sbo_top .Section.sec_column .cards::after {
  content: "";
  width: 300px;
}
.sbo_top .Section.sec_column .cards a.card::after {
  content: "詳しく読む";
  font-size: 14px;
  font-weight: bold;
  position: absolute;
  right: 20px;
  bottom: 20px;
  line-height: 1;
  background-image: url(/-/media/ind/sbo/image/icon_btnarrow_og.svg);
  background-position: right center;
  background-repeat: no-repeat;
  padding-right: 20px;
}
.sbo_top .Section.sec_column .cards a.card * {
  color: inherit;
}
.sbo_top .Section.sec_column .cards a.card:hover,
.sbo_top .Section.sec_column .cards a.card:hover * {
  text-decoration: none;
}
.sbo_top .Section.sec_column .cards a.card:hover {
  opacity: 0.6;
}
.sbo_top .Section.sec_column .cards .card .img {
  max-width: 100%;
}
.sbo_top .Section.sec_column .cards .card .texts {
  padding: 20px;
  padding-bottom: 0;
}
.sbo_top .Section.sec_column .cards .card .texts h3 {
  border: none;
  padding: 0;
  margin: 0;
  background: none;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
}

/* sec_movie */
.sbo_top .Section.sec_movie .cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.sbo_top .Section.sec_movie .cards a.card {
  background-color: #fff;
  color: #333;
  display: block;
  width: 300px;
  border: 1px solid #f2f2f2;
  box-shadow: 2px 2px 0px 0px rgba(0, 0, 0, 0.16);
  box-sizing: border-box;
  margin-top: 40px;
}
.sbo_top .Section.sec_movie .cards a.card:nth-child(1),
.sbo_top .Section.sec_movie .cards a.card:nth-child(2),
.sbo_top .Section.sec_movie .cards a.card:nth-child(3) {
  margin-top: 0;
}
.sbo_top .Section.sec_movie .cards::after {
  content: "";
  width: 300px;
}
.sbo_top .Section.sec_movie .cards a.card * {
  color: inherit;
}
.sbo_top .Section.sec_movie .cards a.card:hover,
.sbo_top .Section.sec_movie .cards a.card:hover * {
  text-decoration: none;
}
.sbo_top .Section.sec_movie .cards a.card:hover {
  opacity: 0.6;
}
.sbo_top .Section.sec_movie .cards .card .img {
  max-width: 100%;
}
.sbo_top .Section.sec_movie .cards .card .texts {
  padding: 20px;
}
.sbo_top .Section.sec_movie .cards .card .texts h3 {
  border: none;
  padding: 0;
  margin: 0;
  background: none;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
}
/* sec_faq */
.sbo_top .Section.sec_faq .faq_list {
  font-size: 18px;
  margin-bottom: 60px;
}
.sbo_top .Section.sec_faq .faq_list > li {
  padding: 30px 0 30px 30px;
  border-bottom: 1px solid #757374;
}
.sbo_top .Section.sec_faq .faq_list .question,
.sbo_top .Section.sec_faq .faq_list .answer {
  position: relative;
  display: flex;
  justify-content: space-between;
}
.sbo_top .Section.sec_faq .faq_list .question {
  cursor: pointer;
}
.sbo_top .Section.sec_faq .faq_list .question::before,
.sbo_top .Section.sec_faq .faq_list .answer::before {
  font-size: 24px;
  font-weight: bold;
  padding-right: 10px;
  position: absolute;
  left: 0px;
}
.sbo_top .Section.sec_faq .faq_list .question::before {
  content: "Q.";
}
.sbo_top .Section.sec_faq .faq_list .answer::before {
  content: "A.";
  color: #fdb814;
}
.sbo_top .Section.sec_faq .faq_list .answer {
  display: none;
  overflow: hidden;
  padding-top: 30px;
}
.sbo_top .Section.sec_faq .faq_list .answer a {
  text-decoration: underline;
}
.sbo_top .Section.sec_faq .faq_list .answer a.btn {
  text-decoration: none;
  width: auto;
  height: auto;
  border: none;
  padding-right: 35px;
  display: table;
}
.sbo_top .Section.sec_faq .faq_list .body {
  padding-left: 60px;
}
.sbo_top .Section.sec_faq .faq_list .question .body {
  font-weight: bold;
  padding-right: 10px;
}
.sbo_top .Section.sec_faq .faq_list .answer .body {
  padding-right: 40px;
}
.sbo_top .Section.sec_faq .faq_list .body ol li {
  list-style: decimal;
}
.sbo_top .Section.sec_faq .faq_list .body ol li {
  margin-bottom: 1em;
}
.sbo_top .Section.sec_faq .faq_list .body p {
  margin-bottom: 1em;
  line-height: 2;
}
.sbo_top .Section.sec_faq .faq_list .body ol li:last-child,
.sbo_top .Section.sec_faq .faq_list .body p:last-child {
  margin-bottom: 0;
}
.sbo_top .Section.sec_faq .faq_list .icon {
  width: 30px;
  height: 30px;
  min-width: 30px;
  position: relative;
}
.sbo_top .Section.sec_faq .faq_list .icon::before,
.sbo_top .Section.sec_faq .faq_list .icon::after {
  content: "";
  background-color: #fdb814;
  position: absolute;
}
.sbo_top .Section.sec_faq .faq_list .icon::before {
  width: 30px;
  height: 2px;
  left: 0;
  top: 14px;
}
.sbo_top .Section.sec_faq .faq_list .icon::after {
  width: 2px;
  height: 30px;
  left: 14px;
  top: 0px;
  transition: transform 0.6s ease;
}
.sbo_top .Section.sec_faq .faq_list .open .icon::after {
  transform: rotate(270deg);
}
/* sec_topics */
.sbo_top .Section.sec_topics ul.news_list {
  margin-bottom: 60px;
}
.sbo_top .Section.sec_topics ul.news_list li {
  padding-bottom: 20px;
  border-bottom: 1px solid #b1b1b1;
  margin-bottom: 20px;
  display: flex;
  align-items: baseline;
}
.sbo_top .Section.sec_topics ul.news_list li p {
  line-height: 2;
}
.sbo_top .Section.sec_topics ul.news_list li .date {
  font-size: 14px;
  flex-shrink: 0;
  padding-top: 2px;
  margin-right: 15px;
}
.sbo_top .Section.sec_topics ul.news_list li .category {
  font-size: 12px;
  font-weight: bold;
  flex-shrink: 0;
  margin-right: 30px;
  background-color: #333;
  color: #fff;
  border-radius: 100vw;
  padding: 2px 12px;
}
.sbo_top .Section.sec_topics ul.news_list li .category.category_news {
  background-color: #06417e;
}
.sbo_top .Section.sec_topics ul.news_list li .category.category_seminar {
  background-color: #b1000e;
}
.sbo_top .Section.sec_topics ul.news_list li .body {
  padding-right: 80px;
  position: relative;
}
.sbo_top .Section.sec_topics ul.news_list li .body a {
  display: block;
}
.sbo_top .Section.sec_topics ul.news_list li .body a::after {
  content: "";
  position: absolute;
  right: 0;
  top: 6px;
  width: 18px;
  height: 18px;
  background: url(/-/media/ind/sbo/image/icon_link.svg) center center no-repeat;
  background-size: contain;
}

/* sec_navi */
.sbo_top .Section.sec_navi {
  background-color: #fff8e7;
}
.sbo_top .Section.sec_navi .cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.sbo_top .Section.sec_navi .cards a.card {
  background-color: #fff;
  color: #333;
  display: block;
  width: 226px;
  position: relative;
  padding-bottom: 60px;
  border: 1px solid #f2f2f2;
  box-shadow: 2px 2px 0px 0px rgba(0, 0, 0, 0.16);
  box-sizing: border-box;
}
.sbo_top .Section.sec_navi .cards::after {
  content: "";
  width: 226px;
}
.sbo_top .Section.sec_navi .cards a.card::after {
  content: "詳しくはこちら";
  font-size: 14px;
  font-weight: bold;
  position: absolute;
  right: 20px;
  bottom: 20px;
  line-height: 20px;
  background-image: url(/-/media/ind/sbo/image/icon_btnarrow_og.svg);
  background-position: right center;
  background-repeat: no-repeat;
  padding-right: 20px;
}
.sbo_top .Section.sec_navi .cards a.card * {
  color: inherit;
}
.sbo_top .Section.sec_navi .cards a.card:hover,
.sbo_top .Section.sec_navi .cards a.card:hover * {
  text-decoration: none;
}
.sbo_top .Section.sec_navi .cards a.card:hover {
  opacity: 0.6;
}
.sbo_top .Section.sec_navi .cards .card .img {
  max-width: 100%;
  display: block;
  margin: 20px auto 0 auto;
}
.sbo_top .Section.sec_navi .cards .card .texts {
  padding: 20px;
  padding-bottom: 0;
}
.sbo_top .Section.sec_navi .cards .card .texts h3 {
  text-align: center;
  border: none;
  padding: 0;
  margin: 0;
  background: none;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 15px;
}
.sbo_top .Section.sec_navi .note{
  font-size: 12px;
  text-align: center;
  margin-top: 40px;
}

/* sbo_column */
.GridSet.sbo_column{
  width: 100%;
}
.sbo_column .Section{
  padding-bottom: 0;
}
.sbo_column .Section .Inner{
  max-width: 768px;
  margin: 0 auto;
  padding: 60px 0;
}
.sbo_column .Section .Inner img{
  max-width: 100%;
}
/* column_head */
#Contents .Section.column_head {
  background: url(/-/media/ind/sbo/column/image/img_column_head.jpg) center center no-repeat #000;
  background-size: cover;
}
#Contents .Section.column_head .Inner {
  max-width: 965px;
  min-height: 115px;
  display: flex;
  align-items: center;
  padding: 0;
}
#Contents .Section.column_head .title {
  color: #fff;
  font-size: 2em;
  font-weight: bold;
  line-height: 1;
}
/* column_body */
#Contents .Section.column_body.bgcol1{
  background-color: #F2F2F2;
}
#Contents .Section.column_body h1 {
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 2;
  text-align: inherit;
}
#Contents .Section.column_body .releasedate {
  color: #757374;
  font-size: 14px;
  padding-bottom: 0;
  margin-bottom: 20px;
  text-align: right;
}
#Contents .Section.column_body .main_img {
  margin-bottom: 40px;
}
#Contents .Section.column_body .main_img img{
  width: 100%;
}
#Contents .Section.column_body h2 {
  font-size: 24px;
  font-weight: bold;
  padding: 0;
  padding-left: 20px;
  line-height: 2;
  text-align: inherit;
  margin-top: 60px;
  margin-bottom: 40px;
  position: relative;
}
#Contents .Section.column_body h2::before {
  content: "";
  width: 8px;
  height: 100%;
  background: linear-gradient(180deg, #FDB814,#FDB814);
  position: absolute;
  left: 0;
}
#Contents .Section.column_body h2.sec_title{
  font-size: 24px;
  text-align: center;
  padding: 0 0 20px 0;
  margin: 0 0 40px 0;
}
#Contents .Section.column_body h2.sec_title::before{
  width: 80px;
  height: 3px;
  background:  #B1000E;
  bottom: 0;
  left: calc(50% - 40px);
}
#Contents .Section.column_body h3 {
  font-size: 20px;
  font-weight: bold;
  padding: 0;
  padding-bottom: 10px;
  line-height: 2;
  text-align: inherit;
  margin-bottom: 1em;
  margin-top: 1em;
  position: relative;
  border: none;
  background-color: transparent;
}
#Contents .Section.column_body h3::before {
  content: "";
  width: 50px;
  height: 5px;
  background: linear-gradient(90deg, #FDB814, #FDB814);
  position: absolute;
  left: 0;
  bottom: 0;
}
#Contents .Section.column_body h4 {
  color: inherit !important;
  font-size: 18px;
  font-weight: bold;
  padding: 0;
  line-height: 2;
  text-align: inherit;
  margin-top: 1em;
  margin-bottom: 0.5em;
}
#Contents .Section.column_body p {
  line-height: 2;
  text-align: inherit;
  padding-bottom: 1em;
}
#Contents .Section.column_body p:last-child {
  margin-bottom: 0;
}
#Contents .Section.column_body li {
  line-height: inherit;
  margin-top: 0.5em;
}
#Contents .Section.column_body li:first-child {
  margin-top: 0;
}
#Contents .Section.column_body li li:first-child {
  margin-top: 0.5em;
}
#Contents .Section.column_body ul {
  line-height: 1.5;
  margin-bottom: 40px;
}
#Contents .Section.column_body ul ul{
  margin-bottom: 0;
}
#Contents .Section.column_body ul > li {
  text-indent: -1.5em;
  padding-left: 1.4em;
}
#Contents .Section.column_body ul > li::before {
  content: "●";
  padding-left: 0.3em;
  padding-right: 0.6em;
  color: #FDB814;
}
#Contents .Section.column_body ol {
  margin: 0 auto;
  list-style: decimal;
  line-height: 1.5;
  margin-bottom:40px;
  padding-left: 1.5em;
}
#Contents .Section.column_body ol li::marker {
  color: #FDB814;
  font-weight: bold;
}

#Contents .Section.column_body strong {
  font-weight: bold;
}
#Contents .Section.column_body a {
  color: #0071bc;
}

#Contents .Section.column_body table {
  width: 100%;
  font-size: 16px;
  margin-bottom: 80px;
}
#Contents .Section.column_body table th {
  font-size: inherit;
  padding: 8px 10px;
  border: 1px solid #fff;
  background-color: #FDB814;
  color: #333;
}
#Contents .Section.column_body table td {
  font-size: inherit;
  padding: 8px 10px;
  border: 1px solid #fff;
  background-color: #f2f2f2;
}
#Contents .Section.column_body table.color_gray th {
  background-color: #757374;
  color: #fff;
}

#Contents .Section.column_body figure {
  margin: 0;
  margin-bottom: 10px;
}
#Contents .Section.column_body figcaption {
  font-size: 14px;
  color: #757374;
  margin-top: 10px;
}

/* block_strong */
#Contents .Section.column_body .block_strong {
  background: linear-gradient(90deg, #FFF8E7, #FFF8E7);
  padding: 40px;
  margin-bottom: 80px;
}
#Contents .Section.column_body .block_strong p:last-child{
  padding-bottom: 0;
}

/* block_index */
#Contents .Section.column_body .block_index {
  border: 1px solid #FDB814;
  border-radius: 10px;
  padding: 40px;
  margin-bottom: 80px;
}
#Contents .Section.column_body .block_index .title {
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px solid #FDB814;
}
#Contents .Section.column_body .block_index ol#index ol,
#Contents .Section.column_body .block_index ol#index {
  list-style: none;
  margin: 0;
  margin-left: 0;
  padding: 0;
}
#Contents .Section.column_body .block_index ol#index li {
  display: table;
  margin-top: 1em;
  font-weight: bold;
}
#Contents .Section.column_body .block_index ol#index li li {
  font-weight: normal;
  padding-left: 2em;
}
#Contents .Section.column_body .block_index ol#index li a {
  display: inline-block;
}

/* block_layout */
#Contents .Section.column_body .texts {
  margin-bottom: 40px;
}
#Contents .Section.column_body .block_layout {
  margin-bottom: 80px;
}
#Contents .Section.column_body .block_layout.col2 {
  display: flex;
  justify-content: space-between;
}
#Contents .Section.column_body .block_layout.col2.rev {
  flex-direction: row-reverse;
}
#Contents .Section.column_body .block_layout.col2 .image {
  width: calc(50% - 20px);
  margin-bottom: 0;
}
#Contents .Section.column_body .block_layout.col2 .texts {
  width: calc(50% - 20px);
}

/* sns_btns */
#Contents .Section.column_body .sns_btns {
  display: flex;
  justify-content: center;
  margin-top: 80px;
}
#Contents .Section.column_body .sns_btns .sns_btn {
  margin: 0 20px;
}

/* block_writer */
#Contents .Section.column_body .block_writer {
  border: 2px solid #FDB814;
  border-radius: 10px;
  padding: 40px 26px;
  display: flex;
  align-items: center;
  width: 384px;
  box-sizing: border-box;
  margin:80px auto 0 auto ;
}
#Contents .Section.column_body .block_writer .photo {
  max-width: 120px;
}
#Contents .Section.column_body .block_writer .profile {
  padding-left: 15px;
}
#Contents .Section.column_body .block_writer .profile p{
  padding-bottom: 0;
  line-height: 1.5;
}
#Contents .Section.column_body .block_writer .writer_head {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 20px;
}
#Contents .Section.column_body .block_writer .writer_name {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}
#Contents .Section.column_body .block_writer .writer_title {
  font-size: 16px;
}
/* btn */
#Contents .Section.column_body .btn {
  height: 60px;
  width: 300px;
  background-color: #333;
  background-image: url(/-/media/ind/sbo/image/icon_btnarrow_wt.svg);
  background-repeat: no-repeat;
  background-position: calc(100% - 20px) center;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  box-sizing: border-box;
  margin-top: 40px;
}
#Contents .Section.column_body .btn:hover {
  text-decoration: none;
  opacity: 0.6;
}
/* related_wp */
#Contents .Section.column_body .related_wps{
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-bottom: 120px;
}
#Contents .Section.column_body .related_wp{
  background-color: #fff;
  padding: 30px;
}
#Contents .Section.column_body .related_wp .layout{
  display: flex;
  gap: 30px;
}
#Contents .Section.column_body .related_wp .layout .image{
  min-width: calc(300 / 708 * 100%);
}
#Contents .Section.column_body .related_wp .layout .image img{
  width: 100%;
}
#Contents .Section.column_body .related_wp .layout .texts{
  margin: 0;
}
#Contents .Section.column_body .related_wp .layout .texts>p{
  line-height: 1.5;
  padding-bottom: 0;
}
#Contents .Section.column_body .related_wp .layout .title{
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
}
#Contents .Section.column_body .related_wp .layout .targets{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 20px;
}
#Contents .Section.column_body .related_wp .layout .target{
  font-size: 12px;
  border: 1px solid #CCC;
  border-radius: 100px;
  padding: 5px 10px; 
  line-height: 1.5;
  display: inline-block;
}
#Contents .Section.column_body .related_wp .layout .summary{
  font-size: 16px;
}
#Contents .Section.column_body .related_wp .btn{
  color: #333;
  background-color: #FDB814;
  background-image: url(/-/media/ind/sbo/image/icon_btnarrow_bk.svg);
  padding-left: 25px;
  display: flex;
  justify-content: flex-start;
}
/* cards */
#Contents .Section.column_body .cards{
  display: flex;
  gap: 30px;
}
#Contents .Section.column_body .cards a{
  padding-bottom: 60px;
}
#Contents .Section.column_body .cards a *{
  color: #333;
}
#Contents .Section.column_body .cards a:hover{
  opacity: 0.6;
}
#Contents .Section.column_body .cards a:hover,
#Contents .Section.column_body .cards a:hover *{
  text-decoration: none;
}
#Contents .Section.column_body .cards .card{
  position: relative;
  background-color: #fff;
  box-sizing: border-box;
}
#Contents .Section.column_body .cards .card .image img{
  width: 100%;
}
#Contents .Section.column_body .cards .card .texts{
  margin-bottom: 0;
}
#Contents .Section.column_body .cards .card .texts p{
  padding: 0;
  line-height: 1.5;
}
#Contents .Section.column_body .cards a.card::after {
  content: "もっと";
  color: #333;
  font-size: 14px;
  font-weight: bold;
  line-height: 20px;
  background: right center no-repeat;
  padding-right: 20px;
  position: absolute;
  right: 20px;
  bottom: 20px;
}
#Contents .Section.column_body .cards.other_wp .card{
  border: 1px solid #f2f2f2;
  box-shadow: 2px 2px 0px 0px rgba(0, 0, 0, 0.16);
}
#Contents .Section.column_body .cards.other_wp .card .texts{
  padding: 20px 20px 0px 20px;
}
#Contents .Section.column_body .cards.other_wp a.card::after {
  content: "資料をダウンロード";
  background-image: url(/-/media/ind/sbo/image/icon_download.svg);
  padding-right: 30px;
}
#Contents .Section.column_body .cards.other_column .card{
  padding-top: 20px;
  padding-left: 20px;
  padding-right: 20px;
  border: 2px solid #FDB814;
}
#Contents .Section.column_body .cards.other_column .card .texts{
  padding-top: 20px;
}
#Contents .Section.column_body .cards.other_column a.card::after {
  content: "もっと読む";
  background-image: url(/-/media/ind/sbo/image/icon_btnarrow_og.svg);
}
#Contents .Section.column_body .cards.col3{
  flex-wrap: wrap;
}
#Contents .Section.column_body .cards.col3 .card{
  width: calc((100% - 60px) / 3);
}
/* block_cta */
#Contents .Section.column_body .block_cta{
  background: url(/-/media/ind/sbo/column/image/img_column_cta.jpg) center center no-repeat #000;
  background-size: cover;
  padding: 60px;
  color: #fff;
  margin-bottom: 120px;
  text-align: center;
}
#Contents .Section.column_body .block_cta h3{
  color: #FDB814;
  font-size: 36px;
  font-weight: bold;
  padding: 0;
  margin: 0;
  line-height: 1;
  margin-bottom: 20px;
}
#Contents .Section.column_body .block_cta h3::before{
  content: none;
}
#Contents .Section.column_body .block_cta .description{
  line-height: 2;
  font-size: 18px;
  font-weight: bold;
  padding-bottom: 0;
}
#Contents .Section.column_body .block_cta .cta_btns{
  display: flex;
  margin-top: 40px;
}
#Contents .Section.column_body .block_cta .cta_btns .btn{
  margin-top: 0;
  color: #333;
  background-image: url(/-/media/ind/sbo/image/icon_btnarrow_bk.svg);
  background-color: #fff;
}
#Contents .Section.column_body .block_cta .cta_btns .btn.contact{
  background-color: #FDB814;
}

@media screen and (max-width: 994px) {
  #Contents br.pc {
    display: none;
  }
  #Contents br.sp {
    display: inline;
  }

  .Under995 #Contents,
  .Under995 .Grid4 {
    padding: 0;
  }
  .JS .GridSet {
    margin-left: 0;
  }
  .Under995 #Contents .Section .Inner {
    padding: 0 15px;
    width: auto;
    max-width: 100%;
  }
  .GridSet.sbo_top{
    margin-bottom: 0;
  }
  .GridSet.sbo_top h2 {
    font-size: 28px;
    line-height: 1.5;
  }
  #FloatingContacts ul{
    display: block !important;
  }
  /* sec_cta */
  .sbo_top .Section.sec_cta .cta_btns {
    display: block;
  }
  .sbo_top .Section.sec_cta .cta_btns .btn {
    width: auto;
    margin: 0 0 15px 0;
  }
  .sbo_top .Section.sec_cta .cta_btns .btn:last-child {
    margin-bottom: 0;
  }
  /* sec_fv */
  .sbo_top .Section.sec_fv {
    background-image: url(/-/media/ind/sbo/image/img_fv_top_sp.jpg);
  }
  .sbo_top .Section.sec_fv h1 {
    font-size: 36px;
  }
  .sbo_top .Section.sec_fv h1 .subtit {
    font-size: 20px;
  }
  .sbo_top .Section.sec_fv .lead {
    font-size: 16px;
  }
  .sbo_top .Section.sec_fv .cta_btns {
    display: block;
  }
  .sbo_top .Section.sec_fv .cta_btns .btn {
    margin: 0;
    margin-bottom: 20px;
    width: auto;
  }
  /* sec_award */
  .sbo_top .Section.sec_award .layoutbox {
    display: block;
  }
  .sbo_top .Section.sec_award .layoutbox .img {
    width: 100%;
    margin-bottom: 20px;
  }
  .sbo_top .Section.sec_award .layoutbox .texts {
    padding-left: 0;
  }
  .sbo_top .Section.sec_award .layoutbox .texts .caption {
    margin-bottom: 10px;
  }
  /* sec_achievement */
  .sbo_top .Section.sec_achievement h2 {
    font-size: 36px;
  }
  .sbo_top .Section.sec_achievement ul.records {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
  }
  .sbo_top .Section.sec_achievement ul.records li {
    width: calc(160 / 345 * 100%);
    height: 110px;
    margin-bottom: 20px;
    background-size: contain;
  }
  .sbo_top .Section.sec_achievement ul.records li p {
    font-size: 28px;
  }
  .sbo_top .Section.sec_achievement ul.records li p.qty{
    margin-bottom: 10px;
  }
  .sbo_top .Section.sec_achievement ul.clients {
    display: flex;
  }
  .sbo_top .Section.sec_achievement ul.clients li {
    width: 48%;
    margin-right: 4%;
    margin-top: 40px;
  }
  .sbo_top .Section.sec_achievement ul.clients li:nth-child(1),
  .sbo_top .Section.sec_achievement ul.clients li:nth-child(2) {
    margin-top: 0;
  }
  .sbo_top .Section.sec_achievement ul.clients li:nth-child(2n) {
    margin-right: 0;
  }
  .sbo_top .Section.sec_achievement ul.clients li img{
    transform: none;
  }
  /* sec_about */
  .sbo_top .Section.sec_about h2 {
    font-size: 28px;
    top: -14px;
  }
  .sbo_top .Section.sec_about .layoutbox {
    display: block;
  }
  .sbo_top .Section.sec_about .layoutbox .img {
    width: 100%;
    margin-bottom: 20px;
  }
  .sbo_top .Section.sec_about .layoutbox .texts {
    padding-left: 0;
  }
  /* sec_feature */
  .sbo_top .Section.sec_feature ol.features li h3 .index {
    display: block;
    margin-bottom: 10px;
  }
  .sbo_top .Section.sec_feature ol.features .layoutbox {
    display: block;
  }
  .sbo_top .Section.sec_feature ol.features .layoutbox .img {
    width: 100%;
    margin-bottom: 20px;
  }
  .sbo_top .Section.sec_feature ol.features .layoutbox .texts {
    padding-left: 0;
  }
  /* sec_case */
  .sbo_top .Section.sec_case .cards a.card {
    display: block;
  }
  .sbo_top .Section.sec_case .cards .card .img {
    width: 100%;
    margin-bottom: 20px;
  }
  .sbo_top .Section.sec_case .cards .card .texts {
    padding-left: 0;
  }
  /* sec_useful */
  .sbo_top .Section.sec_useful .cards {
    display: block;
  }
  .sbo_top .Section.sec_useful .cards a.card {
    width: auto;
  }
  .sbo_top .Section.sec_useful .cards .card .img {
    width: 100%;
  }
  /* sec_column */
  .sbo_top .Section.sec_column .cards {
    display: block;
  }
  .sbo_top .Section.sec_column .cards a.card {
    width: auto;
  }
  .sbo_top .Section.sec_column .cards a.card:last-child {
    margin-bottom: 0;
  }
  .sbo_top .Section.sec_column .cards .card .img {
    width: 100%;
  }

  /* sec_movie */
  .sbo_top .Section.sec_movie .cards {
    display: block;
  }
  .sbo_top .Section.sec_movie .cards a.card {
    width: auto;
  }
  .sbo_top .Section.sec_movie .cards .card .img {
    width: 100%;
  }
  .sbo_top .Section.sec_movie .cards a.card:nth-child(1),
  .sbo_top .Section.sec_movie .cards a.card:nth-child(2),
  .sbo_top .Section.sec_movie .cards a.card:nth-child(3) {
    margin-bottom: 40px;
  }
  /* sec_topics */
  .sbo_top .Section.sec_topics ul.news_list li {
    flex-wrap: wrap;
  }
  .sbo_top .Section.sec_topics ul.news_list li .body {
    padding-right: 20px;
  }
  .sbo_top .Section.sec_navi .cards {
    display: block;
  }
  .sbo_top .Section.sec_navi .cards a.card {
    width: auto;
    margin-bottom: 20px;
  }

  /* sbo_column */
  #Contents .Section.column_body .btn{
    width: 100%;
  }
  #Contents .sbo_column .Section.column_body .Inner{
    padding-top: 60px;
    padding-bottom: 60px;
  }
  #Contents .Section.column_body h1{
    font-size: 24px;
  }
  #Contents .Section.column_body h2{
    font-size: 20px;
  }
  #Contents .Section.column_body h3{
    font-size: 18px;
  }
  #Contents .Section.column_body .Overflow{
    margin-bottom: 80px;
  }
  #Contents .Section.column_body .Overflow table{
    margin-bottom: 10px;
    min-width: 200vw;

  }
  #Contents .Section.column_body .block_layout.col2{
    display: block;
  }
  #Contents .Section.column_body .block_layout.col2 .image{
    width: 100%;
    margin-bottom: 20px;
  }
  #Contents .Section.column_body .block_layout.col2 .texts{
    width: 100%;
  }

  /* block_writer */
  #Contents .Section.column_body .block_writer{
    width: 100%;
  }
  /* related_wp */
  #Contents .Section.column_body .related_wp{
    padding: 20px;
  }
  #Contents .Section.column_body .related_wp .layout{
    display: block;
  }
  #Contents .Section.column_body .related_wp .layout .image{
    margin-bottom: 20px;
  }
  /* cards */
  #Contents .Section.column_body .cards{
    flex-direction: column;
    flex-wrap: nowrap;    
  }
  #Contents .Section.column_body .cards.col3{
    flex-wrap: nowrap;    
  }
  #Contents .Section.column_body .cards.col3 .card{
    width: auto;
  }
  /* block_cta */
  #Contents .Section.column_body .block_cta{
    padding-left: 15px;
    padding-right: 15px;
  }
  #Contents .Section.column_body .block_cta .cta_btns{
    flex-direction: column;
    gap: 20px;
  }
  #Contents .Section.column_body .block_cta h3{
    font-size: 30px;
  }
  #Contents .Section.column_body .block_cta .description{
    text-align: left;
  }
}
.Section.sec_award .Inner{
	display: flex;
    flex-wrap: wrap;
	gap: 1rem;
}
.GridSet.sbo_top .sec_award .tile3 {
    width: calc((100% / 3) - 1rem);
    background: #fff;/*#5f5f5f;*/
	position: relative;
	border: 1px solid #f2f2f2;
    box-shadow: 2px 2px 0px 0px rgba(0, 0, 0, 0.16);
}
.GridSet.sbo_top .sec_award .Inner .layoutbox{
	flex-direction: column;
	padding: 1em;
}
.GridSet.sbo_top .sec_award .Inner .layoutbox .img{
	margin: 0 0 1em;
}


.sbo_top .Section.sec_case .cards a.card {
	position: relative;
}
.sbo_top .Section.sec_case .cards a.card img.NEW {
    position: absolute;
    width: 40px;
    height: auto;
    top: 0;
    right: 0;
	transform: rotate(90deg);
}
@media screen and (max-width: 994px) {
	.GridSet.sbo_top .sec_award .tile3 {
    width: 100%;
}
	.sbo_top .Section.sec_case .cards a.card img.NEW {
    width: 10vw;
    height: auto;

}
}