@charset "utf-8";
/*************************
共通
*************************/
html {
  -webkit-overflow-scrolling: touch;
}
/* --------▼　MTのみ崩れる箇所の対策　▼-------- */
*, :after, :before, html , a {box-sizing:border-box;} 
figure {margin:0 0 1rem;}
h1, h2, h3, h4, h5, h6 {margin-top:0; margin-bottom:0.5rem;}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {color:inherit; font-family:inherit; font-weight:500; line-height:1.1; margin-bottom:0.5rem;}
/* --------▲　MTのみ崩れる箇所の対策　▲-------- */

main .container {
  width: auto;
  max-width: inherit;
  height: auto;
  padding: 0;
}
body .orihica_main img {
  height: auto;
}
.container .breadcrumbs {
  padding: 12px;
}
.lead_text p, .orihica_main .flex-tx p,
.orihica_main .button a,.orihica_main .topicModuleItem{
   line-height: 2;
   font-size: 14px;
   color: #000;
}
.orihica_main .topicModuleCol2__text {
  color: #000 !important;
}
.orihica_main .topicModuleBanner a:hover,
.flex-img img:hover{
  opacity: .7;
   transition: 0.5s;
}

/* アンカーリンクとび先においてヘッダーが入る高さを考慮した上部の空白
　　※とび先の「id」が入っている箇所に下記classを追加してください*/
.orihica_main .anchorLink-margin {
  margin-top: -35px !important;
  padding-top: 35px !important;
}


/* メインビジュアル */
.orihica_main .mv .mv_img img {
  width: 100%;
  margin: 0 auto;
}

/* リード */
.orihica_main .about {
  line-height: 2.3;
  margin: 0 0 130px;
  padding-top: 40px;
  font-size: 14px;
  text-align: center;
}
.orihica_main .lead_text {
  font-size: 14px;
  text-align: center;
}

/* 見出し */
.orihica_main h1 {
  margin-bottom: 0;  
}
.orihica_main h2 {
  line-height: 1.1;
  margin-bottom: 30px;
   padding-bottom: 40px;
   border-bottom: 1px solid #000;
   font-size: 28px;
  font-weight: bold!important;
}
.num{
   display: block;
   margin-bottom: 30px;
   color: #c95850;
}
.under-line{
   padding: 0 5px;
   background: linear-gradient(transparent 60%, #fbf0ef 50%);
   font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}
.orihica_main .small, small{
     font-weight: bold;
}
.orihica_main h3 {
  line-height: 1.1;
  margin-bottom: 20px;
  font-size: 30px;
  font-weight: bold;
}

  /* anchor */
   .anchor{
      max-width: 890px;
      margin: 65px auto 0;
   }
   .orihica_main .title01{
      margin-bottom: 10px;
      font-size: 16px!important;
      font-weight: bold;
      text-align: center;
   }
.orihica_main .anchor ul {
   display: flex;
   margin: auto;
   margin-top: 70px;
}
.orihica_main .anchor ul li {
   display: flex;
   width: calc(100% /4);
   max-height: 195px;
   box-shadow: 4px 4px 0px 0px #b5625c;
   border: 1px solid #000;
   text-align: center;
    transition-duration: 0.3s;
}
.orihica_main .anchor ul li:hover{
   box-shadow: 2px 2px 0px 0px #b5625c;
   background-color: #fdf4f3;
}
.orihica_main .anchor ul li+li {
   margin-left: 30px;
}
.orihica_main .anchor p {
   margin: auto;
   line-height: 1.5;
   font-size: 14px;
   font-weight: bold;
   }
.orihica_main .anchor img{
   width: auto;
   max-height: 180px;
}
.orihica_main .anchor a {
   display: grid;
   width: 100%;
   grid-template-rows: 185px 40px;
   margin-top: -60px;
   padding: 0 15px 20px;
   color: #000;
}

/* コンテンツ */
.orihica_main .contents_inner {
  max-width: 900px;
  margin: 0 auto;
}
.orihica_main section{
   margin-bottom: 80px;
}
.flex-box{
   display: flex;
   justify-content: space-between;
   align-items: center;
   margin-bottom: 40px;
}
.flex-tx{
   width: 38%;
}
.flex-img{
   width: 59%;
}
.bg{
   padding: 80px 0 20px;
  background-color: #edebec;
}
.bg .under-line{
   background: linear-gradient(transparent 60%, #fff 50%);
}

/* button*/
.button {
   max-width: 530px;
   margin: 0 auto 5px;
   text-align: center;
	}
.button a {
   display: block;
   position: relative;
   margin: 0px auto 60px;
   padding: 18px 23px;
   border: 1px solid #000000;
   background-color: #fff;
   box-shadow: 4px 4px 0px 0 #b5625c;
   font-size: 14px;
   font-weight: bold;
   text-align: center;
   transition: 0.5s;
}
.button a:hover {
  background-color: #fdf4f3;
}
.button a:after {
   content: "";
   margin: auto;
   position: absolute;
   top: 0;
   bottom: 0;
   right: 20px;
   width: 8px;
   height: 8px;
   border-top: 2px solid #333;
   border-right: 2px solid #333;
   transform: rotate(45deg);
   transition: 0.5s;
}
/* flex-img*/
.flex-img a:hover {
	opacity: .8;
	transition: .2s;
}
.flex-img a {
	display: block;
	position: relative;
}
.flex-img a::after {
	position: absolute;
	right: 10px;
	bottom: 10px;
	z-index: 1;
	width: 50px;
	height: 50px;
	border: 2px solid #fff;
	border-radius: 100px;
	background: rgb(1000 1000 1000 / 30%);
	content: "";
}
.flex-img a::before {
	position: absolute;
	right: 31px;
	bottom: 29px;
	z-index: 2;
	transform: rotate(45deg);
	width: 13px;
	height: 13px;
	border-top: #fff 2px solid;
	border-right: #fff 2px solid;
	content: "";
}

/* お役立ちコンテンツ */
.orihica_main #useful_contents ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 140px;
    max-width: 850px;
}
#useful_contents ul li {
    max-width: 400px;
}
#useful_contents a {
    display: block;
}


/*************************
PC only
*************************/
@media screen and (min-width: 862px) {
  .orihica_main .sp {
    display: none;
  }
}

/*************************
tablet only
*************************/
@media screen and (max-width: 1232px) {

}

/*************************
SP only
*************************/
@media screen and (max-width: 861px) {
  .orihica_main .pc {
    display: none;
  }
  /* アンカーリンクとび先においてヘッダーが入る高さを考慮した上部の空白 */
	.orihica_main .anchorLink-margin {
    margin-top: -50px !important;
    padding-top: 50px !important;
	}
.orihica_main #sec01.anchorLink-margin,
.orihica_main #sec03.anchorLink-margin{
    margin-top: -120px !important;
    padding-top: 120px !important;
	}
   
  /* リード */
  .orihica_main .about {
    margin-bottom: 30vw;
    padding-top: 20px;
  }
  .orihica_main .about .lead_text {
    font-size: 3.7vw;
    text-align: left;
  }

  /* 見出し */
  .orihica_main h2 {
     margin-bottom: 20px;
     padding: 0px;
    font-size: 6.2vw;
     border-bottom: none;
  }
   .num{
      display: inline-block;
      margin-right: 15px;   
      margin-bottom: 0;
      font-size: 5.5vw;
   }

  /* anchor */
   .anchor{
      margin: 40px auto;
   }
   .orihica_main .title01{
      font-weight: bold;
      font-size: 16px;
   }
   .orihica_main .anchor ul{
      flex-wrap: wrap;
       margin-top: 65px;
   }
   .orihica_main .anchor ul li{
    width: calc(100% / 2 - 20px);
    max-height: 83.2vw;
   }
   .orihica_main .anchor ul li:nth-child(2n+1){
      margin-left: 0;
   }
   .orihica_main .anchor ul li+li:nth-child(n+3){
      margin-top: 65px;
   }
   .orihica_main .anchor p{
       font-size: 3vw;
   }
    .orihica_main .anchor .title01{
      font-size: 3.8vw;
   }
   .orihica_main .anchor a{
    grid-template-rows: 42vw 10vw;
    margin-top: -60px;
    padding: 0 5px 10px;
   }
   .orihica_main .anchor img{
    max-height: 40vw;
   }
   
  /* コンテンツ */
  .orihica_main .contents_inner,
  main .topicModuleBanner {
    padding: 0 16px;
    box-sizing: border-box;
  }
  .orihica_main .contents_inner {
    width: 100%;
  }
   .flex-box{
      display: block;
   }
   .flex-tx,.flex-img{
      width: auto;   
   }
   .flex-tx{
      margin-bottom: 15px;
   }
   .button{
      max-width: 340px;
       margin: 0px auto;
   }
   .button a{
      padding: 18px 15px 18px 0px;
   }
   .button a:after{
      right: 13px;
   }
	.flex-img a::after {
		width: 45px;
		height: 45px;
	}
	.flex-img a::before {
		right: 27px;
		bottom: 26px;
		width: 14px;
		height: 14px;
	}

   
   /* お役立ちコンテンツ */
    .orihica_main #useful_contents ul li + li {
        margin-top: 5vw;
   }
/*module*/
.orihica_main .topicModuleCol4{
   margin-bottom: 20px;
}
}
