@charset "UTF-8";
/* ====================================
	フォント設定
 ==================================== */
/* フォント */
.tsukushi-a, .comment-text, .prod-item {
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 700;
	font-style: normal;
}
 @font-face {
 font-family: "KiwiMaru-Light";
 src: url("../fonts/KiwiMaru-Light.ttf") format("truetype");
}
 @font-face {
 font-family: "KiwiMaru-Medium";
 src: url("../fonts/KiwiMaru-Medium.ttf") format("truetype");
}
 @font-face {
 font-family: "KiwiMaru-Regular";
 src: url("../fonts/KiwiMaru-Regular.ttf") format("truetype");
}
/* ====================================
	共通スタイル
 ==================================== */

/* -------------------------------------------------- UTILITY  -------------------------------------------------- */

.mt-10	{ margin-top:-10px !important; }
.mt-5	{ margin-top:-5px !important; }
.mt0	{ margin-top:0px !important; }
.mt5	{ margin-top:5px !important; }
.mt10	{ margin-top:10px !important; }
.mt15	{ margin-top:15px !important; }
.mt20	{ margin-top:20px !important; }
.mt25	{ margin-top:25px !important; }
.mt30	{ margin-top:30px !important; }
.mt40	{ margin-top:40px !important; }
.mt50	{ margin-top:50px !important; }
.mt60	{ margin-top:60px !important; }
.mt100	{ margin-top:100px !important; }

.mr0	{ margin-right:0px !important; }
.mr5	{ margin-right:5px !important; }
.mr10	{ margin-right:10px !important; }
.mr15	{ margin-right:15px !important; }
.mr20	{ margin-right:20px !important; }
.mr25	{ margin-right:25px !important; }
.mr30	{ margin-right:30px !important; }
.mr40	{ margin-right:40px !important; }
.mr50	{ margin-right:50px !important; }
.mr100	{ margin-right:100px !important; }

.mb0	{ margin-bottom:0px !important; }
.mb3	{ margin-bottom:3px !important; }
.mb5	{ margin-bottom:5px !important; }
.mb10	{ margin-bottom:10px !important; }
.mb15	{ margin-bottom:15px !important; }
.mb20	{ margin-bottom:20px !important; }
.mb25	{ margin-bottom:25px !important; }
.mb30	{ margin-bottom:30px !important; }
.mb40	{ margin-bottom:40px !important; }
.mb50	{ margin-bottom:50px !important; }
.mb100	{ margin-bottom:100px !important; }

.ml0	{ margin-left:0px !important; }
.ml2	{ margin-left:2px !important; }
.ml5	{ margin-left:5px !important; }
.ml10	{ margin-left:10px !important; }
.ml15	{ margin-left:15px !important; }
.ml20	{ margin-left:20px !important; }
.ml25	{ margin-left:25px !important; }
.ml30	{ margin-left:30px !important; }
.ml40	{ margin-left:40px !important; }
.ml50	{ margin-left:50px !important; }
.ml100	{ margin-left:100px !important; }


/* -------------------------------------------------- FONT -------------------------------------------------- */

/* defalt font-size */
.f10 { font-size:77% !important; }
.f11 { font-size:85% !important; }
.f12 { font-size:93% !important; }
.f13 { font-size:100% !important; }
.f14 { font-size:108% !important; }
.f15 { font-size:116% !important; }
.f16 { font-size:123.1% !important; }
.f17 { font-size:131% !important; }
.f18 { font-size:138.5% !important; }
.f19 { font-size:146.5% !important; }
.f20 { font-size:153.9% !important; }
.f21 { font-size:161.6% !important; }
.f22 { font-size:167% !important; }
.f23 { font-size:174% !important; }
.f24 { font-size:182% !important; }
.f25 { font-size:189% !important; }
.f26 { font-size:197% !important; }


.B	{ font-weight:bold; }
.blue	{ color:#2c8ed2; }
.gray	{ color:#777; }
.red	{ color:#e6002d; }
.black	{ color:#000000; }
.white	{ color:#ffffff; }

.caption {
	margin-top: 30px;  
}

.caption li {
	margin-top: 8px;  
}


.pc { display: block !important; }
.sp { display: none !important; }
@media only screen and (max-width: 767px) {
.pc { display: none !important; }
.sp { display: block !important; }
}


.alpha .bg-white:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.relative {
  position: relative;
}

.absolute {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
}

article {
  overflow: hidden;
  font-weight: 400;
  position: relative;
  z-index: 10;
  background-color: #fff;
  background-image:
    radial-gradient(#3fa3ef 30%, transparent 30%);
  background-size: 3px 3px;
}

.caption-r {
  font-size: 1.2rem;
  text-align: right;
}

.ma {
  margin-left: auto;
  margin-right: auto;
}

.center {
  text-align: center;
}

.orange {
  color: #FB7B40;
}

/* アローボタン */
.btn-container {
  margin: 9rem 0;
}

.btn-arrow {
  max-width: 490px;
}

.btn-arrow a {
  display: block;
  width: 100%;
  height: 100%;
  padding: .7em 1.5em .7em 2.5em;
  font-size: inherit;
  line-height: inherit;
  text-align: center;
  background-color: #535353;
  background-image: url(/products/common/images/chevron-right-solid-w.svg);
  background-repeat: no-repeat;
  background-position: left .7em center;
  background-size: auto 1em;
  color: #fff;
  text-decoration: none;
}

/* メインビジュアル */
.mv-img {
  position: relative;
}

.mv-img .mv-illust {
  position: absolute;
  width: 60%;
  right: 0;
  z-index: 1;
}

.mv-container {
  margin-top: 3rem;
  margin-bottom: 5rem;
}

.mv-container .mv-title .text {
  background-color: #000;
  color: #fff;
  padding: .4rem 2rem;
  display: inline-block;
  font-weight: 600;
}

.mv-container .mv-title .title .dot {
  padding-bottom: .6rem;
  background-image: linear-gradient(to right, #FF7B40, #FF7B40 4px, transparent 4px, transparent 9px);
  background-size: 7px 3px;
  background-repeat: repeat-x;
  background-position: left bottom;
}

.mv-container .mv-title .title .underline {
  padding-bottom: 0;
  background: linear-gradient(transparent 80%, #f0e600 80%);
  display: inline-block;
  color: #0054ff;
  font-family: "KiwiMaru-Medium", serif;
}

.mv-container .mv-title .title .underline.ch {
  font-size: 80%;
  font-family: "KiwiMaru-Regular", serif;
}

.mv-container .mv-title .title .underline.t1 {
  margin-left: -1em;
}

.mv-container .mv-title .title .underline.t2 {
  margin-left: 1em;
}

.maru {
  border-radius: 50%;
  text-align: center;
  background-color: #1eb8ff;
  display: flex;
  justify-content: center;
  align-items: center;
}

.maru p {
  color: #fff;
  line-height: 120%;
  font-family: "KiwiMaru-Regular", serif;
}

.box-shadow1 {
  box-shadow: 9px 9px #f0e600;
  background-color: #f680af;
  display: inline-block;
  margin-bottom: 15px;
}

.box-shadow1 p {
  color: #fff;
  padding: 12px 17px 15px;
  font-family: "KiwiMaru-Regular", serif;
}

.box-shadow2 {
  box-shadow: 9px 9px #f0e600;
  background-color: #0054ff;
  display: inline-block;
  margin-top: 20px;
}

.box-shadow2 p {
  color: #fff;
  padding: 10px 30px 15px;
  font-family: "KiwiMaru-Regular", serif;
}

.title-img {
  width: 100%;
  max-width: 420px;
  margin-bottom: -5px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  justify-content: center;
}

.title-box {
  margin-top: -20px;
}

.title-box p {
  background-color: #0054ff;
  display: inline-block;
  color: #fff;
  padding: 2px 30px 6px;
  font-family: "KiwiMaru-Regular", serif;
  margin-top: -50px;
}

/* 動画エリア */


h3 {
  font-family: "KiwiMaru-Medium", serif;
  padding: 0.4em 1.2em;
  color: #0054ff;
  font-size: 138.5%;
  background: #f4f4f4;
  border-left: solid 5px #f0e600;
  border-bottom: solid 3px #d7d7d7;
  border-right: solid 3px #d7d7d7;
  margin-top: 2rem;
  margin-bottom: 1rem;
  display: inline-block;
}

.date-text {
  font-size: 1.3rem;
  color: #a0a0a0;
  margin-top: 0.25em;
}

.flex-container>.flex-item {
  margin-bottom: 3rem;
  text-align: center;
}

.flex-item img {
  border: 1px solid #d9d9d9;
}

.bg-white {
  background-color: #fff;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.arrow-link {
  text-align: center;
}

a.btn-detail::before {
  left: 2em;
  margin-top: -0.4em;
}

a.btn-detail::before {
  font-family: "Font Awesome 5 Free";
  font-size: 2rem;
  font-weight: 900;
  content: "\f105";
  display: inline-block;
  position: absolute;
  top: 53%;
  left: 0.5em;
  margin-top: -0.5em;
  margin-left: 1.2rem;
}

.flex-container.banner {
  display: flex;
  flex-wrap: wrap;
  margin-top: 0em;
}

.search-category-options {
  background: #F5F5F5;
}

.search-category-ttl {
  font-weight: 500;
}

.product-category .open-drop-down {
  opacity: 0;
  display: none;
}

.product-category .open-drop-down.visible {
  opacity: 1;
  display: block;
}

ul.list-search-options>li {
  position: relative;
}

ul.list-search-options>li>a {
  display: block;
  width: 100%;
  padding: 0.5em 1.5em 0.5em 1em;
  font-size: 1.2rem;
  font-weight: 500;
  background: #fff;
  position: relative;
  cursor: pointer;
}

ul.list-search-options>li>a::before {
  font-family: "Font Awesome 5 Free";
  font-size: 1.8rem;
  line-height: 1;
  font-weight: 900;
  content: "\f107";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 0.5em;
  margin-top: -0.5em;
}

ul.list-drop-down>li:first-child {
  margin-top: 0;
}

ul.list-drop-down>li>a {
  display: block;
  width: 100%;
  padding: 0.5em 0;
  font-size: 1.4rem;
  cursor: pointer;
}

ul.list-search-options a.open-drop-down:hover,
ul.list-search-options a.open-drop-down {
  color: #a0a0a0;
}

ul.list-search-options a.open-drop-down[data-select] {
  background: #d9d9d9;
  color: #000;
}

.drop-down-container {
  background: #fff;
  box-shadow: 0px 0px 20px 2px rgba(0, 0, 0, 0.2);
  display: none;
  z-index: 1;
}

sup {
  color: #00a0e9;
}

.products-sub-title {
  font-weight: 300;
  border-top-width: 1px;
  border-top-style: solid;
  border-top-color: #a0a0a0;
}

.flex-item .edition {
  font-weight: 500;
  color: #0054ff;
  margin: 0 0 0.4em 0;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  justify-content: center;
}

.flex-item .ttl {
  font-weight: 600;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  justify-content: center;
  display: flex;
  align-items: center;
  min-height: 6em;
}

.youtube-container {
  background-color: #fff;
  z-index: 3;
  position: relative;
  max-width: 1200px;
  margin-top: 40px;
  margin-left: auto;
  margin-right: auto;
  margin-top: -5rem;
}

.youtube-container .text {
  margin-top: 0.5em;
}

.container_block {
  display: flex;
  width: 100%;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
}

.container_block .contents_l {
  width: calc(100% - 51%);
}

.container_block .contents_r {
  flex: 1;
  width: 49%;
  margin-left: 2%;
}

.col_block {
  width: 100%;
  max-width: 1020px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-wrap: wrap;
}

.col_block>div {
  width: 48.5%;
  margin-right: 3%;
}

.col_block>div:nth-child(2n) {
  margin-right: 0;
}

.col_block>div:nth-child(n+3) {
  margin-top: 2.5rem;
}

.flex-item .p-box {
  position: relative;
}

.flex-item .photo {
  z-index: 10;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 5.0vw;
  height: 5.0vw;
  max-width: 82px;
  max-height: 82px;
  min-width: 60px;
  min-height: 60px;
  background: url("../images/n_btn_movie_play2.png") no-repeat center center;
  background-size: 100% 100%;
}

.flex-item:hover .photo {
  z-index: 10;
  position: absolute;
  overflow: hidden;
  background: url("../images/n_btn_movie_play2.png") no-repeat center center;
  background-size: 100% 100%;
}


/* スライドショー */
.swiper {
  max-inline-size: 1920px;
  margin-inline: auto;
  padding-bottom: 60px;
}

.mv-pagination-wrap {
  display: grid;
  justify-items: center;
  grid-template-columns: 1fr 25px;
  column-gap: 25px;
  block-size: 35px;
  padding-inline: 25px;
  background-color: rgba(255, 255, 255, .9);
  border-radius: var(--border-radius-large);
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 100;
  bottom: 0px;
}

.mv-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
}

.mv-pagination .mv-bullet {
  inline-size: 30px;
  block-size: 30px;
  position: relative;
}

.mv-pagination .mv-bullet::before {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  content: '';
  display: block;
  inline-size: 12px;
  block-size: 12px;
  background: var(--steel-gray);
  border-radius: 50%;
}

.mv-pagination .mv-bullet-active::before {
  background-color: #ccc;
}

.mv-pagination .mv-bullet:not(:first-child) {
  margin-left: 1rem;
}

.btn-swiper-control {
  display: flex;
  justify-content: center;
  align-items: center;
  inline-size: 35px;
}

.btn-swiper-control img:not(.is-active) {
  display: none;
}

.btn-swiper-control img.is-active {
  display: block;
  inline-size: 15px;
}


button {
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
	color: #000;
}

/* お役立ちコンテンツ */

[class^="list-tips-"] {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	column-gap: 4%;
	row-gap: 3rem;
}
[class^="list-tips-"] .has-arrow-left {
	margin-top: 1em;
}

[class^="list-tips-"]>li {
	background: linear-gradient(180deg,rgba(0,0,0,0) 50%,rgba(255,255,255,1) 50%);
}

[class^="list-tips-"]>li.is-hidden {
	display: none;
}

/* お役立ちコンテンツ・もっと見るボタン */

.button-area {
	margin-bottom: 3rem;
	width: 100%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	justify-content: center;

}

[class^="btn-open-more"] {
	display: block;
	inline-size: 100%;
	max-inline-size: 240px;
	margin-top: 3rem;
	margin-inline: auto;
	padding: .4em 1em;
	border: 1px solid #000;
	border-radius: var(--border-radius-medium);
	font-size: 1.4rem;
	transition: background-color .3s ease, color .3s ease;
	border-radius: 20px;
	background-color: #fff;
}



[class^="btn-open-more"] svg {
	inline-size: 1em;
	block-size: 1em;
	margin-right: .5em;
}





/* AQUOS Tacty’s Room */

.base-room {
	width: 100%;
	background-color: #137cd6;
}
.base-blue {
	width: 100%;
	background-color: #9dd4f7;
	margin-top: -30px;
}

.container_block-room {
	display: flex;
	padding: 20px 0;
}
.container_block-room .contents_l {
	width: 320px;
	margin-right: 30px;
	
}
.container_block-room .contents_r {
	width: calc(100% - 350px);
	margin-top: auto;
	margin-bottom: auto;
	vertical-align: middle;
	align-items: center;
	display: flex;
}
.container_block-room img {
	max-width: 320px;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	justify-content: center;
}
.container_block-room p {
	color: #fff;
	font-size: 108%;
	line-height: 140%;
}

.room-area {
	display: block;
}

.room-title {
	font-family: "EB Garamond", serif;
	font-weight: 500;
	font-size: 4.5rem !important;
	margin-bottom: 0.2em;
}	

/* ====================================
	スマートフォン専用スタイル
===================================== */
@media only screen and (max-width: 767px) {
  article {
    font-size: 1.4rem;
    line-height: 1.6;
  }

  .mts {
    margin-top: 2rem;
  }

  .prod-caption {
    text-align: left;
    font-size: 1.3rem;
    margin-top: 3rem;
    text-indent: -7.5rem;
    padding-left: 7.5rem;
  }

  .text-container,
  .img-container {
    margin-top: 4rem;
  }



  /* アローボタン・左 */
  .btn-container {
    margin: 5rem 0;
    font-size: 1.4rem;
  }

  /* メインビジュアル */
  #mainVisual {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
  }

  .mv-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
  }

  .maru-area {
    width: 220px;
    margin-top: -10px;
    margin-left: auto;
    margin-right: auto;
  }

  .maru {
    height: 90px;
    width: 90px;
    margin-left: auto;
  }

  .maru p {
    font-size: 19px;
    margin-top: 0px;
  }

  .box-shadow1 p {
    font-size: 17px;
  }

  .box-shadow2 {
    margin: 25px 0;
  }

  .box-shadow2 p,
  .title-box p {
    font-size: 21px;
  }

  .title-box {
    margin-top: -5px;
    margin-bottom: 20px;
  }

  .mv-container .mv-title .title {
    font-size: 4.5rem;
    line-height: 1.4;
    max-width: 250px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }

  .mv-container .mv-title .text {
    font-size: 1.5rem;
    padding: 0.4rem 1.4rem;
  }

  .mv-container .mv-img {
    width: 100%;
    border-radius: 0;
  }

  .mv-container .mv-title {
    width: 100%;
    text-align: center;
    margin-bottom: 6rem;
    margin-top: 1rem;
  }

  .mv-img .mv-illust {
    width: 80%;
    right: 20px;
    bottom: -40px;
  }

  .mv-container .mv-title .title .dot {
    padding-bottom: 0.2rem;
    margin-top: 0rem;
  }

  .mv-container .mv-title .title .underline {
    padding-bottom: 0.2rem;
  }

  .mv-container .mv-title .title .dot.small-text {
    padding-bottom: 0.8rem;
  }

  .navi-title {
    display: flex;
    align-items: center;
    padding-left: 8px;
  }

  .scroll-fix-wrap.passed .navi-title {
    background-color: rgba(253, 243, 239, 0.9);
    width: 96px;
    padding-left: 8px;
  }

  .navi-logo {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 100%;
    padding-right: 6px;
    padding-left: 10px;
    font-size: 2rem;
    color: #000;
    text-decoration: none;
  }

  .navi-btn-menu {
    padding-left: 12px;
  }

  .btn-trigger {
    width: 18px;
    padding-top: 110%;
    cursor: pointer;
    position: relative;
  }

  .btn-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #FC7C4B;
    border-radius: 4px;
  }

  .btn-trigger,
  .btn-trigger span {
    display: block;
    transition: all .5s;
    box-sizing: border-box;
  }

  .btn-trigger span:nth-of-type(1) {
    top: 2px;
  }

  .btn-trigger span:nth-of-type(2) {
    top: 44%;
  }

  .btn-trigger span:nth-of-type(3) {
    bottom: 2px;
  }

  .open .btn-trigger span {
    background-color: #fff;
  }

  .open .btn-trigger span:nth-of-type(1) {
    transform: translateY(7px) rotate(45deg);
  }

  .open .btn-trigger span:nth-of-type(2) {
    opacity: 0;
  }

  .open .btn-trigger span:nth-of-type(3) {
    transform: translateY(-7px) rotate(-45deg);
  }



  /* 動画エリア */


  .products-sub-title {
    margin-top: 1em;
    padding-top: 2em;
    margin-bottom: 2rem;
    padding-bottom: 0.2em;
    font-size: 1.8rem;
  }

  .sp-center {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    justify-content: center;
  }

  h3 {
    margin-top: 3rem;
    margin-bottom: 3rem;
  }

  .title-container {
    text-align: center;
    padding-top: 4rem;
  }

  .title-container .page-title-text {
    font-size: 1.4rem;
  }

  .title-container .page-title {
    font-size: 3rem;
  }

  .date-text {
    font-size: 1.2rem;
    margin-top: 0.25em;
  }

  .sub-section {
    margin: 0 auto;
    padding: 0 20px;
  }
  .sub-section .base-width {
    padding: 2rem 0;
  }
  #sub02 .sub-section .base-width {
    border-bottom-color: #0066b6;
    border-bottom-style: dotted;
    border-bottom-width: 4px;
  }

  .flex-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .flex-container>.flex-item {
    margin-bottom: 2rem;
  }

  .flex-container.sp-column2 {
    font-size: 1.4rem;
  }

  .flex-container.sp-column2 .ttl {
    margin-top: 0.25em;
  }

  .flex-container.sp-column2 .text {
    margin-top: 0.25em;
  }

  .flex-container.sp-column2>.flex-item {
    width: 48%;
    margin-top: 2rem;
  }

  .flex-container.sp-column2>.flex-item:nth-of-type(-n+2) {
    margin-top: 0;
  }

  .banner {
    margin-top: 2rem;
  }

  a.btn-detail {
    background: #535353;
    color: #fff;
    display: inline-block;
    padding: 1.3em 0;
    font-size: 1.4rem;
    line-height: 1;
    text-align: center;
    position: relative;
    text-decoration: none;
    width: 100%;
  }

  .arrow-link {
    margin-bottom: 1em;
  }

  ul.list-search-options>li {
    margin-top: 1rem;
    padding: 0 5%;
    background: #F5F5F5;
  }

  ul.list-search-options>li:first-child {
    margin-top: 0;
  }

  .drop-down-container {
    width: 90%;
    padding: 2rem 3rem;
    position: absolute;
    top: 4rem;
    left: 50%;
    margin-left: -45%;
  }

  .search-category-options {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }

  .search-category-ttl {
    text-align: center;
  }

  ul.list-search-options {
    margin-top: 1em;
  }

  .flex-item .edition {
    font-size: 108%;
  }

  .flex-item .ttl {
    font-size: 100% !important;
    padding: 8px 5px 15px;
  }

  .container_block {
    display: block;
  }

  .container_block .contents_l {
    width: 100%;
  }

  .container_block .contents_r {
    width: 100%;
    margin-left: 0%;
    margin-top: 2.5rem;
  }

  .col_block>div {
    width: 100%;
    margin-right: 0%;
    margin-top: 2.5rem;
  }



  /* 注釈セクション */
  .caption-section {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  #mainVisual .swiper-container {
    margin-top: -3rem;
  }
  
  /* AQUOS Tacty’s Room */
  
	.base-blue {
		margin-top: 0;
	}
  
	.container_block-room {
		display: block;
		padding: 30px 0;
	}
	.container_block-room .contents_l {
		width: 100%;
		text-align: center;
		margin-left: auto;
		margin-right: auto;
		justify-content: center;
	}
	.container_block-room .contents_r {
		width: 100%;
		margin-left: 0%;
		margin-top: 1rem;
		text-align: center;
		margin-left: auto;
		margin-right: auto;
		justify-content: center;
	}
	
	.room-title {
		font-size: 3.5rem !important;
	}
}

/* ====================================
	PC&タブレット、印刷専用スタイル
===================================== */
@media print,
screen and (min-width: 768px) {
  article::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: url(images/bg.gif)repeat repeat center center;
    position: absolute;
    top: 0;
    left: 0;
    opacity: .25;
    z-index: -1;
  }

  .mts {
    margin-top: 4rem;
  }

  .prod-caption {
    font-size: 1.4rem;
    margin-top: 4.5rem;
  }

  .text-container,
  .img-container {
    margin-top: 6rem;
  }

  /* 最大幅 */
  .maxw750 {
    max-width: 750px;
  }

  .maxw860 {
    max-width: 860px;
  }

  .maxw890 {
    max-width: 890px;
  }

  .maxw900 {
    max-width: 900px;
  }

  .pc-maxw1200 {
    max-width: 1200px;
  }

  .pd-outer {
    padding-left: 1.5%;
    padding-right: 1.5%;
  }

  /* メインビジュアル */

  #mainVisual {
    width: 100%;
    /* height: calc(100vh - 122px); */
    overflow: hidden;
    position: relative;
  }

  .mv-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    margin-top: 5rem;
  }

  .mv-container .mv-title {
    width: 38%;
    position: absolute;
    top: 5px;
    z-index: 2;
    text-align: center;
    margin-top: -20px;
  }

  .maru {
    height: 14vw;
    width: 14vw;
    margin-left: auto;
  }

  .maru p {
    font-size: 3.2vw;
    margin-top: 0px;
  }

  .box-shadow1 p {
    font-size: 2.0vw;
  }

  .box-shadow2 p,
  .title-box p {
    font-size: 2.8vw;
  }

  .title-box {
    margin-top: -10px;
  }

  .mv-container .mv-title .text {
    font-size: 2.0vw;
  }

  .mv-container .mv-title .title {
    font-size: 6.8vw;
    line-height: 1.2;
  }

  .mv-container .mv-img {
    width: 60%;
    position: relative;
    margin-left: auto;
  }

  .mv-img {
    position: relative;
    border-radius: 20px;
  }




  /* メインタイトル */
  .main-title {
    margin: 8rem 0 0;
    font-size: 3.2rem;
    line-height: 1.4;
  }

  .inner-title {
    display: inline-block;
    padding: 0.3rem 5.4rem;
    font-size: 1.8rem;
    font-weight: 500;
    margin-bottom: 8rem;
    background-color: #000;
    color: #fff;
  }



  /* 動画エリア */



  .global-page-title {
    padding-top: 0rem;
  }

  figure {
    float: right;
    margin: 0 0 15px 40px;
  }

  figure img {
    width: 420px;
  }

  .title-container {
    text-align: center;
    padding-top: 2em;
  }

  .title-container .page-title {
    font-size: 4rem;
    padding-top: 0.2em;
  }

  .products-sub-title {
    font-size: 2rem;
    margin-top: 4em;
    padding-top: 2em;
  }

  .sub-section {
    width: 100%;
    max-width: 1200px;
    margin: 3rem auto 0;
    padding: 0 20px;
  }

  .sub-section .base-width {
    width: 100%;
    padding: 5rem 0;
  }
  
  #sub02 .sub-section .base-width {
    border-bottom-color: #0066b6;
    border-bottom-style: dotted;
    border-bottom-width: 4px;
  }

  .flex-container {
    display: flex;
    flex-wrap: wrap;
    margin-top: 2.0rem;
    font-size: 1.5rem;
  }

  .flex-item .edition {
    font-size: 116%;
  }

  .flex-item .ttl {
    margin-top: 0.5em;
    font-size: 1.6rem;
    padding: 5px 6px 15px;
  }

  .flex-item .text {
    margin-top: 0.25em;
    font-size: 1.4rem;
  }

  a.btn-detail {
    display: block;
    width: 100%;
    padding: 1.3em 0 1.3em;
    font-size: 1.6rem;
    line-height: 1;
    background: #535353;
    color: #fff;
    text-align: center;
    position: relative;
    text-decoration: none;
  }

  .banner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 4rem;
  }

  .banner .arrow-link {
    width: 49%;
  }

  .search-category-options {
    padding-top: 26px;
    padding-bottom: 26px;
  }

  .search-category-options .inner-box {
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
  }

  .search-category-ttl {
    display: flex;
    align-items: center;
    width: 24%;
    font-size: 1.4rem;
  }

  ul.list-search-options {
    width: 76%;
  }

  ul.list-search-options {
    display: flex;
    justify-content: space-between;
  }

  ul.list-search-options>li {
    width: 330px;
  }

  ul.list-search-options>li>a {
    padding: 0.5em 30px 0.5em 0;
    font-size: 1.4rem;
    text-align: center;
  }

  ul.list-search-options>li>a::before {
    font-size: 2.4rem;
  }

  .drop-down-container {
    width: 100%;
    padding: 2rem 3rem;
    position: absolute;
    top: 4rem;
    left: 0;
  }

  .flex-container>.flex-item {
    width: 31%;
    margin-left: 3.4%;
    margin-top: 3rem;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 50%, rgba(255, 255, 255, 1) 50%);
  }

  .flex-container>.flex-item:nth-of-type(3n-2) {
    margin-left: 0;
  }

  .flex-container>.flex-item:nth-of-type(-n+3) {
    margin-top: 0;
  }

  /**/
  ul.list-search-options>li {
    width: 49%;
  }

  /* 注釈セクション */
  .caption-section {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }

  .swiper-container {
    margin: 2%;
  }



  /* スライドショー */
  .swiper {
    padding-bottom: 80px;
  }
  
	/* お役立ちコンテンツ */

	[class^="list-tips-"] {
		grid-template-columns: repeat(3, 1fr);
		column-gap: 3%;
		row-gap: 5rem;
	}

	/* お役立ちコンテンツ・もっと見るボタン */
	
	.button-area {
		margin-bottom: 4rem;
	}
	
	[class^="btn-open-more"] {
		max-inline-size: 600px;
		margin-top: 6rem;
		padding: .4em 1em;
		font-size: 1.8rem;
	}
	[class^="btn-open-more"]:hover {
		background-color:#000;
		color: #fff;
	}

  
}


/* ====================================
	768px以上1023以下専用スタイル
===================================== */
@media screen and (min-width: 768px) and (max-width: 1023px) {}

/* ====================================
	1024px以上1199px以下専用スタイル
===================================== */
@media print,
screen and (min-width: 1024px) and (max-width: 1199px) {

  /* 個別改行 */
  .pc-large {
    display: none;
  }

  /* メインビジュアル */
  #nav {
    margin-top: 100px;
  }
}

/* ====================================
	768ppx以上1079px以下専用スタイル
===================================== */

@media print,
screen and (min-width:768px) and (max-width:1079px) {
  .global-page-title {
    padding-left: 0rem;
  }
}

/* ====================================
1023以下専用スタイル（メインビジュアル）
===================================== */
@media screen and (max-width: 1023px) {}

/* ====================================
1024以上専用スタイル 
===================================== */
@media screen and (min-width: 1024px) {}

/* ====================================
1080以上専用スタイル 
===================================== */
@media print,
screen and (min-width: 1080px) {
  .global-page-title {
    padding-left: 0rem;
  }
}

/* ====================================
	1200px以上専用スタイル
===================================== */
@media screen and (min-width: 1200px) {

  /* 個別改行 */
  .pc-small {
    display: none;
  }

  /* メインビジュアル */

  .mv-container .mv-title {
    margin-top: -10px;
  }

  .mv-container .mv-title .title {
    font-size: 8.0rem;
    line-height: 1.2;
  }

  .maru {
    height: 170px;
    width: 170px;
    margin-left: auto;
  }

  .maru p {
    font-size: 3.8rem;
    margin-top: 0px;
  }

  .box-shadow1 p {
    font-size: 26px;
  }

  .box-shadow2 p,
  .title-box p {
    font-size: 32px;
  }

  .mv-container .mv-title .text {
    font-size: 2.2rem;
  }

  /* ナビ */
  #nav {
    margin-top: 100px;
  }
}


/* ====================================
	1500px以上専用スタイル
===================================== */
@media screen and (min-width: 1500px) {
  /* メインビジュアル */

}

/* ====================================
	IE印刷専用スタイル
===================================== */
@media all and (-ms-high-contrast: none) {}