@charset "utf-8";
/*----- 空白ユーティリティ（Spacing）start-----*/

.m-0 {
  margin: 0 !important;
}

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

.m-5 {
  margin: 2rem !important;
}

.mt-5,
.my-5 {
  margin-top: 2rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 2rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 2rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 2rem !important;
}


.m-6 {
  margin: 2.5rem !important;
}

.mt-6,
.my-6 {
  margin-top: 2.5rem !important;
}

.mr-6,
.mx-6 {
  margin-right: 2.5rem !important;
}

.mb-6,
.my-6 {
  margin-bottom: 2.5rem !important;
}

.ml-6,
.mx-6 {
  margin-left: 2.5rem !important;
}

.m-7 {
  margin: 3rem !important;
}

.mt-7,
.my-7 {
  margin-top: 3rem !important;
}

.mr-7,
.mx-7 {
  margin-right: 3rem !important;
}

.mb-7,
.my-7 {
  margin-bottom: 3rem !important;
}

.ml-7,
.mx-7 {
  margin-left: 3rem !important;
}

.m-8 {
  margin: 3.5rem !important;
}

.mt-8,
.my-8 {
  margin-top: 3.5rem !important;
}

.mr-8,
.mx-8 {
  margin-right: 3.5rem !important;
}

.mb-8,
.my-8 {
  margin-bottom: 3.5rem !important;
}

.ml-8,
.mx-8 {
  margin-left: 3.5rem !important;
}

.m-9 {
  margin: 5rem !important;
}

.mt-9,
.my-9 {
  margin-top: 5rem !important;
}

.mr-9,
.mx-9 {
  margin-right: 5rem !important;
}

.mb-9,
.my-9 {
  margin-bottom: 5rem !important;
}

.ml-9,
.mx-9 {
  margin-left: 3.5rem !important;
}



.p-0 {
  padding: 0 !important;
}

.pt-0,
.py-0 {
  padding-top: 0 !important;
}

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
  padding-left: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
  padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
  padding-left: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
  padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
  padding-left: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

.pr-3,
.px-3 {
  padding-right: 1rem !important;
}

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
  padding-left: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
  padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
  padding-left: 1.5rem !important;
}

.p-5 {
  padding: 2rem !important;
}

.pt-5,
.py-5 {
  padding-top: 2rem !important;
}

.pr-5,
.px-5 {
  padding-right: 2rem !important;
}

.pb-5,
.py-5 {
  padding-bottom: 2rem !important;
}

.pl-5,
.px-5 {
  padding-left: 2rem !important;
}

.p-6 {
  padding: 2.5rem !important;
}

.pt-6,
.py-6 {
  padding-top: 2.5rem !important;
}

.pr-6,
.px-6 {
  padding-right: 2.5rem !important;
}

.pb-6,
.py-6 {
  padding-bottom: 2.5rem !important;
}

.pl-6,
.px-6 {
  padding-left: 2.5rem !important;
}

.p-7 {
  padding: 3rem !important;
}

.pt-7,
.py-7 {
  padding-top: 3rem !important;
}

.pr-7,
.px-7 {
  padding-right: 3rem !important;
}

.pb-7,
.py-7 {
  padding-bottom: 3rem !important;
}

.pl-7,
.px-7 {
  padding-left: 3rem !important;
}

.p-8 {
  padding: 3.5rem !important;
}

.pt-8,
.py-8 {
  padding-top: 3.5rem !important;
}

.pr-8,
.px-8 {
  padding-right: 3.5rem !important;
}

.pb-8,
.py-8 {
  padding-bottom: 3.5rem !important;
}

.pl-8,
.px-8 {
  padding-left: 3.5rem !important;
}


/*----- 空白ユーティリティ（Spacing）end-----*/
/*=======================================================
 *  oracle---style_ver03.cssに対しスタイル上書き
 ======================================================*/
@media print, screen and (min-width:768px) {
  .portal_header {
      bacKground-image: linear-gradient(to top, #eef9fc, #eef9fc);
      padding-left: 0;
    }
    /* 以下、主にヘッダータイトルにimgを入れるための調整になります */
  .header-inner {
      display: flex;
      justify-content: space-between;
    }
  .menuItem:hover {
    background-color: #cfe8ee;
    color: #333;
    }
  .page-title{
      position: static;
    }
  .page-title a{
    display: block;
    height: 50px;
  }
  .header-inner nav {
    display: block;
    width: 80%;
    height: 53px;
  }
  .product-menu {
    width: 100%;
  }
  .menuItem a {
    color: #333;
    font-weight: bold;
    text-shadow: none;
  }
}

  .logoImg {
    height: 30px;
  }

  nav ul li.menuItem:hover > a  {
  color: #333;
  }
  nav ul li.menuItem.menu-inquiry a {
    text-shadow: none;
    color: #fff;
  }
  .menuItem.menu-inquiry {
    background-color: #0a3d66;
  }
  .menuItem.menu-inquiry:hover {
    background-color: #092f4d;
  }
/*=======================================================
 *  /style_ver03.cssに対しスタイル上書きここまで
 ======================================================*/

/*=======================================================
 *  oracle/index
 ======================================================*/
 .oracle-topBnr {
  position: relative;
}
.containercontentwidth{
	  max-width: 1400px;
    margin: 0 auto 1rem;
}
.bnrTxt-title {
  position: absolute;
  width: 100%;
  font-family: 'M PLUS 1p', sans-serif;
  font-size: 7rem;
  font-size: calc(4.2rem + ((1vw - 7.68px) * 2.4306)); /* 42px~70pxで可変*/
  color: #cf564b;
  top: 15%;
  left: 16%;
  text-shadow:
    white 2px 0px 2px, white -2px 0px 2px,
    white 0px -2px 2px, white -2px 0px 2px,
    white 2px 2px 2px, white -2px 2px 2px,
    white 2px -2px 2px, white -2px -2px 2px,
    white 1px 2px 2px, white -1px 2px 2px,
    white 1px -2px 2px, white -1px -2px 2px,
    white 2px 1px 2px, white -2px 1px 2px,
    white 2px -1px 2px, white -2px -1px 2px,
    white 1px 1px 2px, white -1px 1px 2px,
    white 1px -1px 2px, white -1px -1px 2px;
}
.bnrTxt-title02{
  position: absolute;
  width: 100%;
  font-family: 'M PLUS 1p', sans-serif;
  font-size: 6rem;
  font-size: calc(3.2rem + ((1vw - 7.68px) * 2.4306)); /* 42px~70pxで可変*/
	font-weight: bold;
  color: #000000;
  top: 15%;
  left: -23%;
}
.bnrTxt-title03{
	position: absolute;
  width: 100%;
  font-family: 'M PLUS 1p', sans-serif;
  font-size: 1.5rem;
	text-align: left;
	font-weight: bold;
	font-size: calc(0.2rem + ((1vw - 7.68px) * 2.4306)); /* 42px~70pxで可変*/
  color: #224399;
  top: 57%;
  left: 9.5%;
  text-shadow:
    white 2px 0px 2px, white -2px 0px 2px,
    white 0px -2px 2px, white -2px 0px 2px,
    white 2px 2px 2px, white -2px 2px 2px,
    white 2px -2px 2px, white -2px -2px 2px,
    white 1px 2px 2px, white -1px 2px 2px,
    white 1px -2px 2px, white -1px -2px 2px,
    white 2px 1px 2px, white -2px 1px 2px,
    white 2px -1px 2px, white -2px -1px 2px,
    white 1px 1px 2px, white -1px 1px 2px,
    white 1px -1px 2px, white -1px -1px 2px;
}
.hirameki-top{
	/*max-width: 1200px*/
}
.bnrTxt-title {
    font-family: 'Roboto', sans-serif;
  }
.size-100 {
    width: 100%;
    display: block;
    margin: 0 auto 3rem;
}
.bnrTxt-sub {
  display: block;
  text-shadow: none;
  top: 40%;
  left:22%;
}
.bnrTxt-small {
  position: absolute;
  font-size: calc(1.4rem + ((1vw - 7.68px) * 0.3472)); /* 14px~18pxで可変*/
  line-height: 2;
  color: #fff;
  top: 50%;
  left: 8%;
  z-index: 2;
  width: 45%;
}

.btn-box {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 80%;
  display: flex;
  justify-content: space-around;
  width: 80%;
}


 h3.midashi {
    color: #3071b9; /*文字色*/
    border-radius: 1em;/*角の丸み*/
    width: fit-content;/*幅をコンテンツに合わす*/
    font-weight: bold;
	 	font-size: 3rem;
}

h3.midashi_buy {
    background: #3071b9; /*背景色*/
    padding: 0.25em 2em 0.25em 2em; /*文字周りの余白*/
    color: white;/*文字を白に*/
    border-radius: 1em;/*角の丸み*/
    width: fit-content;/*幅をコンテンツに合わす*/
    font-weight: bold;
}


.contents-area80 {
    margin: auto;
    width: 80%;
}

.contents-container {
    margin: auto;
    display: flex;
    justify-content: space-around;
    /*width: 80%;*/
}

 .midashi_small {
  font-family: 'Quicksand', sans-serif;
  font-size: 2.4rem;
  font-weight: normal;
  color: #555;
 }

 .newsList {
   background-color: #eef9fc;
   padding: 4rem 0;
 }

 .newsItem {
   margin: 0 auto 1.6rem;
   width: 80%;
 }

 .newsList .newsItem a {
   display: block;
   text-decoration: none;
 }

.date {
    font-size: 2rem;
    display: inline-block;
    width: 30%;
    font-weight: bold;
    vertical-align: top;
}

 .outlineTxt {
    font-size: 1.8rem;
    display: block;
    line-height: 1.8;
    /*margin-left: 10%;*/
    /*margin-right: 10%;*/
    /*width: 80%;*/
 }
 
  .copy {
font-size: 2.4rem;
font-weight: bold;
color: #003366;
 }
 
 .newsTxt{
    font-size: 2rem;
    display: inline-block;
    line-height: 2;
    width: 65%;
}

 .newsTxt a:link {
    text-decoration: underline;
}

 .newsTxt a:hover {
    color: #FF8600;
}

.txtbold {
    color: #3071B9;
    font-weight: bold;
}

 .d-flex {
   display: flex;
   margin-bottom: 4.8rem;
 }

 .m-bottom {
   margin-bottom: 10rem;
 }
 .menu-left {
   flex: 0 0 40%;
   position: relative;
 }

 .menu-right {
   flex: 0 0 60%;
   background-color: #eef9fc;
 }

 .menuImg {
   display: block;
   width: 100%;
 }
 .menu-description {
   font-family: "M PLUS 1p", sans-serif;
   width: 100%;
   font-size: calc(3rem + ((1vw - 7.68px) * 2.0833));/*30px~54pxで可変*/
   text-align: center;
   line-height: 1.8;
   color: #fff;
   position: absolute;
   top: 0;
   left: 0;
   background-color: rgb(72 72 82 / 87%);
   text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.8);
 }
.menu-description.txt-ja {
  font-size: calc(3rem + ((1vw - 7.68px) * 1.2153));/*英字無いと大きく見える。30px~50pxで可変*/
  line-height: 2;
}
.description_small {
  display: block;
  font-size: calc(1.6rem + ((1vw - 7.68px) * 0.6944));/*16px~24pxで可変*/
  margin-bottom: 1rem;
}

.menu-txt {
  padding: 2rem 5rem;
  line-height: 2;
}

.link-box {
  justify-content: space-between;
}

.link-item {
  flex: 0 0 30%;

}

.link-item a{
  display: block;
  border: 5px solid #3d6191;
  border-radius: 10px;
  text-decoration: none;
  text-align: center;
  color: #3d6191;
  transition: 0.3s;
}

.link-item a:hover {
  border: 5px dotted #a2d0fa;
  opacity: 0.8;
}

.link-description {
  font-weight: bold;
  font-size: 2rem;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
  padding-bottom: 2rem;
}
.link-item a img {
  display: block;
  margin: 0 auto;
  padding-top: 2rem;
}


.pricebox {
    width: 48%;
    position: relative;
    margin: 2em 2em 0 0;
    padding: 0.5em 1em;
    border: solid 1px #3071b9;
}
.pricebox:last-child{
	margin-right:0em;
}
.pricebox .box-title {
    position: absolute;
    display: inline-block;
    top: -30px;
    left: -1px;
    padding: 0 9px;
    height: 30px;
    line-height: 32px;
    font-size: 17px;
    background: #3071b9;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.pricebox p {
    margin: 0; 
    padding: 0;
}

.pricebox p .price {
font-size: 2rem;
font-weight: bold;
}
.campaign01{
	margin-top: 1rem;
	font-size: 2rem;
	font-weight: bold;
	color: #990000;
}
.xd-target_list li{
	margin-left: 0;
	font-weight: bold;
}
.pricebox p .campaign {
    font-size: 2rem;
    font-weight: bold;
    color: #990000;
}

.pricebox p .campaignprice {
    font-size: 4rem;
    font-weight: bold;
    color: #990000;
}



.t-num {
  font-size: 3rem;
  /*margin-right: 5rem;*/
  line-height: 0;
  color: #33cc33;
  text-align: center;
}

.t-num::before {
    content: '';
    display: inline-block;
    background-image: url("img/icon_phone.svg");
    width: 4rem;
    height: 4rem;
    background-size: cover;
    background-repeat: no-repeat;
    margin-right: 0rem;
    margin-top: 0rem;
}

.t-email {
  font-size: 3rem;
  /*margin-right: 5rem;*/
  line-height: 0;
  color: #33cc33;
  text-align: center;
}

.t-email::before {
    content: '';
    display: inline-block;
    background-image: url("img/icon_mail.svg");
    width: 4rem;
    height: 4rem;
    background-size: cover;
    background-repeat: no-repeat;
    margin-right: 1rem;
    margin-top: 0rem;
}



 /*=======================================================
 *  end of oracle/index
 ======================================================*/


/* フッター前お問い合わせボタン */
.btn-box-f {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  top: 80%;
  display: flex;
  justify-content: space-around;
  width: 100%;
}

.btn-box-f a {
  /*flex: 0 0 40%;*/
  display: block;
  border-radius: 1rem;
  padding: 2rem 2rem 1.8rem;
  text-align: center;
  text-decoration: none;
  background-color: #31c631;
  border: 2px solid #31c631;
  color: #fff;
  font-size: 2.8rem;
  font-size: calc(2rem + ((1vw - 7.67px) * 0.6938));
  font-weight: bold;
  letter-spacing: 0.5rem;
  box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
  transition: 0.3s;
}
a.buyBtn-f {
  background-color: #31c631;
  border: 2px solid #31c631;
}

.btn-box-f a:hover {
  border: 2px solid #31c631;
  background-color: #fff;
  color: #31c631;
}

a.buyBtn-f:hover {
  border: 2px solid #31c631;
  background-color: #fff;
  color: #31c631;
}

 /* 斜め背景 */
.bg-wrapper {
  /*background-color: rgba(228, 222, 222, 0.5);*/
  padding: 10rem 0;
  margin-bottom: 7rem;
  position: relative;
  z-index: 0;
}

.bg-wrapper::before {
  content: '';
  display: block;
  background-color: rgba(228, 222, 222, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.bg-wrapper::before {
  transform: skewY(-5deg);
  top: 1.6rem;
}

/* サイドボタン（お問い合わせ） */
.sideBtn {
	  position:fixed;
	  top:50%;
	  right:0;
    transform: translateY(-50%);
    z-index: 20;
    font-size: 24px;
  }
  .sideBtn_inquiry {
    display:block;
    text-decoration:none;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    color: #fff;
    border-radius: 5px 0 0 5px;
    border: none;
  }
  .sideBtn_inquiry{
    background: #0a3d66;
    padding: 2rem 1rem 2rem;
    transition: 0.3s;
  }

  .sideBtn_inquiry:hover {
    background: #092f4d;
    color: #fff;
  }
.sideBtn_inquiry::before {
  display: none;
}

/*=======================================================
   レスポンシブ対応（max-width:768pxは最下部に）
 ======================================================*/
@media screen and (min-width:1920px){
  .bnrTxt {
    font-size: 3.6rem;
  }
  .bnrTxt-title {
    font-size: 7rem;
  }
  .bnrTxt-sub {
    top: 40%;
    left:24%;
}
  .bnrTxt-small {
    font-size: 1.8rem;
  }
  .btn-box a {
    font-size: 2.8rem;
  }
  .menu-description {
    font-size: 5.4rem;
  }
  .menu-description.txt-ja {
    font-size: 4.4rem;
    line-height: 2;
  }
  .description_small {
    font-size: 2.4rem;
  }
  .menu-txt {
    font-size: 1.8rem;
    padding: 2rem 3rem;
  }

	.br-pc{
		display: block
	}
	.menuBtn.cvBtn{
		background: #31c631;
    color: #fff;
		text-decoration: none;
		padding: 11px;
		border: 2px solid #31c631;
		font-weight: bold;
    letter-spacing: 0.5rem;
    box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
    transition: 0.3s;
	}
	.menuBtn.cvBtn:hover{
    border: 2px solid #31c631;
    background-color: #fff;
    color: #31c631;
}
	}

@media screen and (max-width:1200px) {
  .bnrTxt-small {
    line-height: 1.5;
  }
  .menu-right {
    flex: 0 0 50%;
  }
  .menu-left {
    flex: 0 0 50%
  }
  .menu-txt {
    line-height: 1.6;
    padding: 2rem 5rem 2rem 1rem;
  }
  .bnrTxt-sub {
    left: 21%;
  }
  .newsItem {
    width: 80%;
  }
  .date,
  .newsTxt {
    width: 100%;
    font-size: 1.6rem;
  }
}
.content_erea01{
	max-width: 1120px;
	margin: 0 auto
}
.content02_wrapper{
	display: flex;
	justify-content: center;
}
.content02_wrapper div{
	width: 50%;
	margin-right: 4rem;
}
.content02_wrapper div:last-child{
	margin-right: 0;
}
.content_erea01{
	padding: 4rem 2rem 6rem;
	max-width: 1120px;
	margin: 0 auto;
}
.content_erea02{
	background-color: #f4f4f4;
	padding: 4rem 2rem 6rem;
	max-width: 1120px;
	margin: 0 auto;
}
.content_erea02_wrapper{
	background-color: #f4f4f4;
}
.content_erea03{
	max-width: 1120px;
	margin: 0 auto;
	padding: 6rem 2rem;
}
.content_erea02-01{
	background-color: #fff;
	box-shadow: 0 10px 25px 0 rgba(0,0,0,.5);
	border-radius: 20px;
	padding: 20px;
}
.content_erea05{
	max-width: 1120px;
	margin: 0 auto;
	padding: 6rem 2rem;
}
.xd-list{
	display: flex;
	flex-wrap: wrap;
	justify-content:flex-start; 
	margin: 0 auto;
}
.xd-list figure{
	width: 20%;
	margin-bottom: 4rem;
}
.xd-list figcaption{
	margin-top: 1rem;
}
.xd-target_title{
	margin-top: 2rem;
	font-weight: bold;
}
.img_sp{
		display: none;
	}
	.img_pc{
		display: block;
	}
.menuBtn.cvBtn{
		background: #31c631;
    color: #fff;
		text-decoration: none;
		padding: 11px;
		border: 2px solid #31c631;
		font-weight: bold;
    letter-spacing: 0.5rem;
    box-shadow: inset 0 2px 0 rgba(255,255,255,0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
    transition: 0.3s;
	}
	.menuBtn.cvBtn:hover{
    border: 2px solid #31c631;
    background-color: #fff;
    color: #31c631;
}
@media screen and (max-width:992px) {
			.bnrTxt-title03{
			display: none;
			}
  .bnrTxt-small {
    line-height: 1.5;
  }
  .btn-box a {
    padding: 0.7rem 0.5rem 0.3rem;
  }
  .d-flex {
    display: block;
  }
  .menuImg {
    width: 60%;
    margin: 0 auto;
  }
  .menu-description {
    width: 60%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  .menu-right {
    width: 60%;
    margin: 0 auto;
    background: transparent;
  }
  .menu-txt {
    padding: 1.6rem 0 0;
  }
  .link-item {
    margin-bottom: 2rem;
  }

}
.sideBtn02{
	  top:30%;
	  right:0;
    font-size: 1.2rem;
  }
.sideBtn_buy,
  .sideBtn_inquiry02 {
    /*width: 2.4rem;*/
    
    padding: 1.8rem 0.5rem 1.8rem 0.3rem;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }
.sideBtn_inquiry02{
    /*height: 10.6rem;:*/
    padding: 1.6rem 0.3rem 1.6rem 0;
  }
  .sideBtn_buy::before,
  .sideBtn_inquiry02::before {
    display: none;
  }
.sideBtn02{
	  position:fixed;
	  top:50%;
	  right:0;
    transform: translateY(-50%);
    z-index: 20;
    font-size: 24px;
  }
  .sideBtn_inquiry02{
    display:block;
    text-decoration:none;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    color: #fff;
    border-radius: 5px 0 0 5px;
    border: none;
  }
  .sideBtn_inquiry02{
    background: #0a3d66;
    padding: 2rem 1rem 2rem;
    transition: 0.3s;
  }
/*================================================
 *  スマートフォン向けデザイン
 ================================================*/
@media screen and (max-width:768px) {
	.br-pc{
		display: none;
	}
  .menuItem {
    border-top: none;
    border-bottom:1px solid #dcdcdc;
  }
	.content_erea02{
		padding:4rem 0 6rem;
	}
  .outlineTxt {
    font-size: 1.6rem;
    line-height: 1.6;
  }
  .bnrTxt-title {
    font-size: 2rem;
    top: 13%;
  }
  .bnrTxt-sub {
    left: 3%;
  }
  .bnrTxt {
    font-size: 1.3rem;
    line-height: 1.3;
    top: 6%;
  }

  .bnrTxt-small {
    font-size: 1.6rem;
    font-weight: bole;
    position: static;
    line-height: 1.6;
    color: #333;
    width: 80%;
    letter-spacing: 0.05em;
  }

  .btn-box {
    top: 23%;
    padding: 1rem;
    justify-content: space-between;
		width: 90%;
  }
  .m-bottom {
    margin-bottom: 4rem;
  }
  .portal_header {
    padding: 0;
  }
  .page-title a {
    display: block;
    padding-left: 0;
  }
  .logoImg {
    height: 60px;
  }
  #spMenu {
    top: 15px;
    right: 15px;
  }
  h3.secondpagemidashi {
    width: 80%;
    margin: 0 auto 2rem;
    font-size: 3rem;
  }
  .newsItem {
    width: 80%;
  }
  .date,
  .newsTxt {
    width: 100%;
    font-size: 1.6rem;
  }
  .menu-left {
    position: relative;
  }
  .menuImg {
    width: 100%;
  }
  .menu-description {
    width: 100%;
    font-size: 3rem;
  }
  .description_small {
    font-size: 1.6rem;
  }
  .menu-right {
    width: 80%;
  }
  .bg-wrapper {
    padding: 0;
  }

  .bg-wrapper::before {
    top: -4rem;
    height: 107%;
  }

  .btn-box-f {
    display: block;
    width: 90%;
  }
  
  
.contents-container {
    flex-direction: column;
    justify-content: space-around;
}
    
.pricebox {
    width: 100%;
}  
	.content_erea02_wrapper{
		padding:0 10%;
	}
	.content_erea03{
		padding:6rem 10%;
	}
	.content_erea05{
		padding:6rem 10%;
	}
	.content02_wrapper{
		display: block;
	}
	.content02_wrapper div{
		width: 100%;
		margin-right: 0;
	}
	.content_erea02-01{
		margin-bottom: 2rem;;
	}
	.content_erea02-01>img{
		width: 90%;
	}
	.xd-list{
		
	}
	.xd-list figure{
		width: 46%;
		margin-right: 1rem;
	}
	.xd-list figure>img{
		width: 100%;
	}
	.containerMaxwidth{
		margin: 0;
	}
	.img_sp{
		display: block;
		margin: 0 auto;
	}
	.img_pc{
		display: none;
	}
	.content_erea01{
		padding: 0 10%;
	}
	.bnrTxt-title02{
  position: absolute;
  width: 100%;
  font-family: 'M PLUS 1p', sans-serif;
  font-size: 5rem;
  font-size: calc(2.2rem + ((1vw - 7.68px) * 2.4306)); /* 42px~70pxで可変*/
	font-weight: bold;
  color: #000000;
  top: 15%;
  left: -20%;
}
	.bnrTxt-title03{
display: none;
}
  /*================================================
  *  お問い合わせ・ご購入ボタン（位置固定）
   ================================================*/
    .sideBtn {
        top: 50%;
        right: 0;
        font-size: 1.4rem;
    }
    .sideBtn_inquiry {
        padding: 1.6rem 0.2rem 1.6rem 0;
        width: 2.5rem;
        /*height: 11.8rem;*/
    }

}
/* /スマートフォン向けデザイン */
