@charset "UTF-8";
/*-------------------------------------------------------------------------------------------------------
*********************************************************************************************************
*********************************************************************************************************
******
****** SPスタイル
******
*********************************************************************************************************
*********************************************************************************************************
-------------------------------------------------------------------------------------------------------*/
html {
  font-size: 2.6666666667vw;
}

/*----------------------------------------------------------------------------
******************************************************************************
** common class
******************************************************************************
----------------------------------------------------------------------------*/
.pc {
  display: none !important;
}

.clearfix::after {
  content: "";
  clear: both;
  display: block;
}

.container_bg {
  width: 100%;
  padding: 5rem 1.4rem;
  overflow: hidden;
}
.container_bg.sub {
  padding-top: 2.0rem;
}
.container_bg.bg_gray {
  background-color: #f5f5f5;
}
.container_bg.bg_img {
  background: url(../images/dummy04.jpg) no-repeat center/cover;
}
.container_bg .container {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
}
.container_bg.w100 {
  padding-left: 0;
  padding-right: 0;
}
.container_bg.w100 .container {
  max-width: initial;
  max-width: auto;
}

.common_btn01.center {
  text-align: center;
}
.common_btn01 a {
  display: inline-block;
  width: 90%;
  max-width: 32rem;
  background: #62b5e5;
  border-radius: 6px;
  text-align: center;
  padding: 1.8rem 0;
  text-decoration: none;
  position: relative;
}
.common_btn01 a::after {
  content: "";
  width: 11px;
  height: 11px;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 50%;
  right: 2.0rem;
  transform: translate(0,-60%) rotate(45deg);
  transition: .3s;
}
.common_btn01 a span {
  font-size: 1.6rem;
  line-height: 1;
  color: #fff;
}

/*----------------------------------------------------------------------------
******************************************************************************
** header
******************************************************************************
----------------------------------------------------------------------------*/
.hd {
  width: 100%;
  padding-left: 1.4rem;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}
.hd .hd_container {
  width: 100%;
  height: 6.4rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.hd .hd_container .hd_logo {
  width: 32rem;
}
.hd .hd_container .hd_logo img {
  max-width: 16.5rem;
}
.hd .hd_container .hd_logo .hd_logo_txt {
  font-size: .9rem;
  font-weight: 700;
  line-height: 1;
  color: #929597;
  margin-top: 10px;
}
.hd .hd_container .hd_navi {
  width: calc(100% - 10rem);
  height: 100%;
  display: flex;
  justify-content: flex-end;
  padding-right: 5rem;
  position: relative;
}
.hd .hd_container .hd_navi .hd_navi_menu_trigger {
  width: 6.4rem;
  height: 6.4rem;
  background-color: #62b5e5;
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
}
.hd .hd_container .hd_navi .hd_navi_menu_trigger span {
  width: 3.7rem;
  height: 0.2rem;
  background-color: #fff;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  transition: 0.4s;
}
.hd .hd_container .hd_navi .hd_navi_menu_trigger span:nth-of-type(1) {
  top: calc(50% - 0.9rem);
}
.hd .hd_container .hd_navi .hd_navi_menu_trigger span:nth-of-type(2) {
  top: 50%;
}
.hd .hd_container .hd_navi .hd_navi_menu_trigger span:nth-of-type(3) {
  top: calc(50% + 0.9rem);
}
.hd .hd_container .hd_navi .hd_navi_menu_trigger.active span {
  top: 50%;
}
.hd .hd_container .hd_navi .hd_navi_menu_trigger.active span:nth-of-type(1) {
  transform: translate(-50%, -50%) rotate(25deg);
}
.hd .hd_container .hd_navi .hd_navi_menu_trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.hd .hd_container .hd_navi .hd_navi_menu_trigger.active span:nth-of-type(3) {
  transform: translate(-50%, -50%) rotate(-25deg);
}
.hd .hd_container .hd_navi .hd_navi_menu {
  width: 100%;
  height: 100%;
  padding: 5rem 2rem;
  background-color: #62b5e5;
  overflow-y: scroll;
  position: fixed;
  right: -100%;
  top: 6.4rem;
  transition: 0.6s;
  z-index: 100;
}
.hd .hd_container .hd_navi .hd_navi_menu.open {
  right: 0;
}
.hd .hd_container .hd_navi .hd_navi_menu .side_nav_ttl {
  margin-bottom: 2.0rem;
}
.hd .hd_container .hd_navi .hd_navi_menu .side_nav_ttl.open {
  margin-bottom: 0;
}
.hd .hd_container .hd_navi .hd_navi_menu .bn_list {
  margin-bottom: 2.0rem;
}
.hd .hd_container .hd_navi .hd_navi_menu .sns_list {
  margin-bottom: 3.0rem;
}
.hd .hd_container .hd_navi .hd_navi_menu .ft_navi_menu {
  margin-bottom: 5.0rem;
}
.hd .hd_container .hd_navi .hd_navi_menu .ft_navi_menu li {
  border-bottom: 1px solid #fff;
}
.hd .hd_container .hd_navi .hd_navi_menu .navi_menu_list li {
  width: 100%;
  margin-top: 1.5rem;
}
.hd .hd_container .hd_navi .hd_navi_menu .navi_menu_list li:first-of-type {
  margin-top: 0;
}
.hd .hd_container .hd_navi .hd_navi_menu .navi_menu_list li a {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  display: inline-block;
}
.hd .hd_container .hd_navi .hd_navi_menu .navi_menu_cv {
  width: 100%;
  margin-top: 5rem;
}
.hd .hd_container .hd_navi .hd_navi_cv {
  width: 10rem;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_cv_btn {
  width: 5rem;
  height: 100%;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_cv_btn a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 1rem 0;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_cv_btn a span {
  font-size: 1rem;
  color: #fff;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  position: relative;
  padding-top: 2.2rem;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_cv_btn a span::before {
  content: "";
  width: 1.8rem;
  height: 1.8rem;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  filter: brightness(0) invert(1);
  z-index: 1;
}




.hd .hd_container .hd_navi .hd_navi_cv {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_search {
  width: 100%;
  padding: 1.0rem 1.4rem;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_search form {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_search form > * {
  border: none;
  outline: none;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_search form select {
  width: 31%;
  padding-left: 1.0rem;
  padding-right: 1.0rem;
  border-radius: 6px 0 0 6px;
  height: 54px;
  font-size: 1.6rem;
  color: #fff;
  background: #8c8f91;
  -webkit-appearance: none; /* Chrome, Safari */
  -moz-appearance: none;    /* Firefox */
  appearance: none;         /* 標準 */
    border: none;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_search form select::-ms-expand {
  display: none;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_search form select:focus {
  outline: none;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_search form input[type="text"] {
  width: 69%;
  font-size: 1.6rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  border-radius: 0 6px 6px 0;
  background: #f3f5f6;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_search form button {
  width: 52px;
  height: 52px;
  text-indent: -9999px;
  background:url(../images/common/common_icon_search.png) no-repeat center center;
  background-size: auto;
  position: absolute;
  right: 0;
  top: 0;
}

.hd .hd_container .hd_navi .hd_navi_cv .navi_btn {
  width: 7.8rem;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_btn a {
  width: 100%;
  height: 80%;
  margin-top: 10%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.hd .hd_container .hd_navi .hd_navi_cv .navi_btn a span {
  font-size: 1.4rem;
  color: #65686a;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  position: relative;
  margin-top: 1rem;
}


.hd_navi_cv.sp {
  margin-top: 6.4rem;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  border-top: 1px solid #d6d8d9;
}
.hd_navi_cv.sp .navi_btn {
  width: 20%;
  border-bottom: 1px solid #d6d8d9;
}
.hd_navi_cv.sp .navi_btn:nth-last-of-type(n+2) {
  border-right: 1px solid #d6d8d9;
}
.hd_navi_cv.sp .navi_btn a {
  width: 100%;
  padding-top: .5rem;
  padding-bottom: .5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.hd_navi_cv.sp .navi_btn.info a img {
  padding-top: 7px;
  padding-bottom: 7px;
}
.hd_navi_cv.sp .navi_btn.logout a img {
  padding-top: 6px;
  padding-bottom: 4px;
}
.hd_navi_cv.sp .navi_btn.login a img {
  padding-top: 6px;
  padding-bottom: 4px;
}
.hd_navi_cv.sp .navi_btn.history a img {
  padding-top: 0px;
  padding-bottom: 1px;
}
.hd_navi_cv.sp .navi_btn.mypage a img {
  padding-top: 6px;
  padding-bottom: 3px;
}
.hd_navi_cv.sp .navi_btn.cart a img {
  padding-top: 7px;
  padding-bottom: 1px;
}
.hd_navi_cv.sp .navi_btn.contact a img {
  padding-top: 9px;
  padding-bottom: 2px;
}
.hd_navi_cv.sp .navi_btn a span {
  font-size: 1.1rem;
  color: #65686a;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  position: relative;
  margin-top: .5rem;
}

.hd_navi_cv.sp .navi_login_sp {
  width: 100%;
  padding: 1.2rem 1.4rem 0;
  text-align: center;
}
.hd_navi_cv.sp .navi_login_sp .txt {
  font-size: 1.2rem;
  color: #65686a;
}
.hd_navi_cv.sp .navi_login_sp .txt a {
  color: #62b5e5;
}

.hd_navi_cv.sp .navi_search {
  width: 100%;
  padding: 1.0rem 1.4rem;
  position: relative;
}
.hd_navi_cv.sp .navi_search label ,
.hd_navi_cv.sp .navi_search .none {
  display: none;
}
.hd_navi_cv.sp .navi_search > * {
  border: none;
  outline: none;
}
.hd_navi_cv.sp .navi_search .search-area {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  position: relative;
}
.hd_navi_cv.sp .navi_search .search-area .search_category {
  order: 1;
  width: 31%;
}
.hd_navi_cv.sp .navi_search .search-area .search_keyword {
  order: 2;
  width: 69%;
}
.hd_navi_cv.sp .navi_search .select_wrap {
  width: 100%;
  position: relative;
}
.hd_navi_cv.sp .navi_search .select_wrap::after {
  content: "";
  width: 10px;
  height: 10px;
  line-height: 0;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: calc( 50% - 2px );
  right: 1.2rem;
  transform: translate(0,-50%) rotate(135deg);
}
.hd_navi_cv.sp .navi_search select {
  width: 100%;
  padding-left: 1.0rem;
  padding-right: 1.0rem;
  border-radius: 6px 0 0 6px;
  height: 42px;
  font-size: 1.4rem;
  color: #fff;
  background: #8c8f91;
  -webkit-appearance: none; /* Chrome, Safari */
  -moz-appearance: none;    /* Firefox */
  appearance: none;         /* 標準 */
    border: none;
}
.hd_navi_cv.sp .navi_search select::-ms-expand {
  display: none;
}
.hd_navi_cv.sp .navi_search select:focus ,
.hd_navi_cv.sp .navi_search input[type="text"]:focus {
  outline: none;
}
.hd_navi_cv.sp .navi_search input[type="text"] {
  width: 100%;
  font-size: 1.6rem;
  padding: 8px 3.5rem 9px 1.5rem;
  border-radius: 0 6px 6px 0;
  background: #f3f5f6;
  border: none;
}
.hd_navi_cv.sp .navi_search .search-btn {
  width: 40px;
  height: 40px;
  text-indent: -9999px;
  background:url(../images/common/common_icon_search.png) no-repeat center center;
  background-size: auto;
  position: absolute;
  right: 1.4rem;
  top: 50%;
  transform: translate(0,-50%);
}

/*----------------------------------------------------------------------------
******************************************************************************
** keyword
******************************************************************************
----------------------------------------------------------------------------*/
.keyword {
  background: #62b5e5;
  padding: 1.2rem;
}
.keyword .container {
  overflow-x: scroll;
  flex-direction: column;
}
.keyword .container .keyword_txt {
  font-size: 1.4rem;
  font-weight: 600;
  color: #fff;
  margin-bottom: .5rem;
}
.keyword .container .keyword_list {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.keyword .container .keyword_list li {
  font-size: 1.6rem;
  font-weight: 500;
  color: #fff;
  flex: 0 0 auto;   /* 折り返し防止 */
  white-space: nowrap;
}
.keyword .container .keyword_list li:nth-last-child(n+2)::after {
  content: "/";
  font-size: 1.6rem;
  color: #fff;
  margin-right: 1.0rem;
  margin-left: 1.0rem;
}

/*----------------------------------------------------------------------------
******************************************************************************
** mv
******************************************************************************
----------------------------------------------------------------------------*/
.main {
  width: 100%;
  overflow: hidden;
  padding: 0 0 3.5rem;
}
.main_slider {
  position: relative;
  height: 100%;
}
.main_slider .swiper-wrapper {
  height: 100%;
}
.main_slider .swiper-wrapper .swiper-slide {
  height: 100%;
}
.main_slider .swiper-wrapper .swiper-slide-prev ,
.main_slider .swiper-wrapper .swiper-slide-next {
  opacity: .5;
}
.main_slider .swiper-wrapper .swiper-slide a {
  width: 100%;
  height: 100%;
  display: block;
}
.main_slider .swiper-wrapper .swiper-slide picture {
  width: 100%;
  height: 100%;
  position: relative;
  display: block;
}
.main_slider .swiper-button-prev ,
.main_slider .swiper-button-next {
  width: 44px;
  height: 44px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 44px;
}
.main_slider .swiper-button-prev::after ,
.main_slider .swiper-button-next::after {
  content: none;
}
.main_slider .swiper-button-prev {
  background-image: url(../images/top/main_arrow_prev.png);
}
.main_slider .swiper-button-next {
  background-image: url(../images/top/main_arrow_next.png);
}
.main_slider .swiper-slide-active {
}
.main_slider.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: -3.5rem;
}
.main_slider.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background: #b8bdbe;
  opacity: 1;
  margin: 0 10px;
}
.main_slider.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet-active {
  background: #62b5e5;
}

.cv_btn {
  width: 100%;
  margin-top: 1rem;
}
.cv_btn:first-of-type {
  margin-top: 3rem;
}
.cv_btn a {
  max-width: 30rem;
  height: 5.2rem;
  padding: 0.5rem 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1rem;
  margin: 0 auto;
}
.cv_btn a span {
  font-size: 1.4rem;
  color: #fff;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  position: relative;
}
.cv_btn a span::before {
  content: "";
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: calc(50% + 0.1rem);
  left: 0;
  transform: translateY(-50%);
  filter: brightness(0) invert(1);
  z-index: 1;
}
.cv_btn.document a {
  background-color: #444;
}
.cv_btn.document a span {
  padding-left: 2.7rem;
}
.cv_btn.document a span::before {
  background: url(../images/common/document_icon.png) no-repeat center/contain;
  background: url(../images/common/document_icon.svg) no-repeat center/contain;
}
.cv_btn.contact a {
  background-color: #111;
}
.cv_btn.contact a span {
  padding-left: 2.9rem;
}
.cv_btn.contact a span::before {
  background: url(../images/common/contact_icon.png) no-repeat center/contain;
  background: url(../images/common/contact_icon.svg) no-repeat center/contain;
}

.simple_btn {
  width: 100%;
  text-align: right;
}
.simple_btn a {
  display: inline-block;
}
.simple_btn a span {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.05em;
  display: inline-block;
  padding-right: 4rem;
  position: relative;
}
.simple_btn a span::before {
  content: "";
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: 50%;
  right: 1rem;
  transform: translateY(-50%);
  z-index: 1;
  background: url(../images/common/link_arrow.png) no-repeat center/contain;
  transition: 0.2s;
}
.simple_btn a:hover span::before {
  right: 0;
}

.common_section_ttl {
  width: 100%;
  text-align: center;
  margin-bottom: 3rem;
}
.common_section_ttl .jp {
  width: 100%;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  display: block;
}
.common_section_ttl .en {
  width: 100%;
  font-family: "Roboto";
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  display: block;
  margin-top: 1rem;
}
.common_section_ttl.left {
  text-align: left;
}
.common_section_ttl.white .jp {
  color: #fff;
}
.common_section_ttl.white .en {
  color: #fff;
}

.common_flex_list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.common_flex_list.sp_column_1 > * {
  width: 100%;
  margin-top: 2rem;
}
.common_flex_list.sp_column_1 > *:first-of-type {
  margin-top: 0;
}
.common_flex_list.sp_column_2 > * {
  width: calc((100% - 1rem) / 2);
  margin-top: 2rem;
}
.common_flex_list.sp_column_2 > *:nth-of-type(-n + 2) {
  margin-top: 0;
}
.common_flex_list.both {
  justify-content: space-between;
}
.common_flex_list.center {
  justify-content: center;
}

.common_box {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  padding: 3rem 2rem;
  background-color: #fff;
}
.common_box .common_box_ttl {
  width: 100%;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: center;
  margin-top: 2rem;
  order: 2;
}
.common_box .common_box_img {
  width: 100%;
  text-align: center;
  order: 1;
}
.common_box .common_box_txt {
  width: 100%;
  order: 3;
  margin-top: 1rem;
}

.common_txt_size_16 {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.05em;
}
.common_txt_size_16.white {
  color: #fff;
}
.common_txt_size_16.white a {
  color: #fff;
}

.common_txt_size_14 {
  width: 100%;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.05em;
}
.common_txt_size_14.white {
  color: #fff;
}
.common_txt_size_14.white a {
  color: #fff;
}

.common_more_btn {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 5rem;
}
.common_more_btn a {
  max-width: 30rem;
  height: 5.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem 7rem;
  border: solid 0.1rem #000;
  position: relative;
  margin: 0 auto;
}
.common_more_btn a::before {
  content: "";
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: 50%;
  right: 3rem;
  transform: translateY(-50%);
  z-index: 1;
  background: url(../images/common/link_arrow.png) no-repeat center/contain;
  transition: 0.2s;
}
.common_more_btn a span {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
  position: relative;
}
.common_more_btn a:hover::before {
  right: 2rem;
}
.common_more_btn.sp_left a {
  margin-left: 0;
}
.common_more_btn.white a {
  border: solid 0.1rem #fff;
}
.common_more_btn.white a::before {
  filter: brightness(0) invert(1);
}
.common_more_btn.white a span {
  color: #fff;
}

.common_column_2_wrap {
  margin-top: 4rem;
}
.common_column_2_wrap .common_column_2_block {
  width: 100%;
  position: relative;
  margin-top: 4rem;
}
.common_column_2_wrap .common_column_2_block:first-of-type {
  margin-top: 0;
}
.common_column_2_wrap .common_column_2_block .column_2_block_wrap .column_2_block_ttl {
  margin-bottom: 2rem;
}
.common_column_2_wrap .common_column_2_block .column_2_block_wrap .column_2_block_img {
  width: 100%;
  margin-bottom: 2rem;
}
.common_column_2_wrap .common_column_2_block .column_2_block_wrap .column_2_block_img picture {
  width: 100%;
  padding-top: 52%;
  position: relative;
  display: block;
}
.common_column_2_wrap .common_column_2_block .column_2_block_wrap .column_2_block_img picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.common_column_2_wrap .common_column_2_block .column_2_block_wrap .column_2_block_btn {
  margin-top: 3rem;
}

.common_block_ttl {
  width: 100%;
}
.common_block_ttl .jp {
  width: 100%;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  display: block;
}
.common_block_ttl .en {
  width: 100%;
  font-family: "Roboto";
  font-size: 1.6rem;
  color: #808080;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  display: block;
  margin-top: 1rem;
}

.common_slider .swiper-wrapper .swiper-slide {
  height: auto;
}

.common_post_box {
  width: 100%;
  height: 100%;
}
.common_post_box a {
  width: 100%;
  height: 100%;
  padding: 66.6666% 1rem 2rem;
  background-color: #fff;
  position: relative;
}
.common_post_box a .post_box_ttl {
  width: 100%;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  margin-top: 2rem;
}
.common_post_box a .post_box_img {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.common_post_box a .post_box_img picture {
  width: 100%;
  padding-top: 66.6666%;
  display: block;
  position: relative;
}
.common_post_box a .post_box_img picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.common_post_box a .post_box_category {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  margin-top: 1.5rem;
}
.common_post_box a .post_box_category li {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.05em;
  padding: 0.2rem 1rem;
  border: solid 0.1rem #000;
}
.common_post_box a .post_box_txt {
  margin-top: 1.5rem;
}

.common_cv_section {
  width: 100%;
  padding: 0;
}
.common_cv_section .container {
  max-width: initial;
  max-width: auto;
}
.common_cv_section .container .cv_section_block {
  width: 100%;
}
.common_cv_section .container .cv_section_block .cv_section_box {
  width: 100%;
  padding: 5rem 2rem;
}
.common_cv_section .container .cv_section_block .cv_section_box:first-of-type {
  background-color: #e9e9e9;
}
.common_cv_section .container .cv_section_block .cv_section_box:first-of-type .cv_section_box_wrap {
  margin-left: auto;
}
.common_cv_section .container .cv_section_block .cv_section_box .cv_section_box_wrap {
  max-width: 77rem;
}

.breadcrumb {
  width: 100%;
  padding: 1.5rem;
}
.breadcrumb .breadcrumb_list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  margin: 0 auto;
}
.breadcrumb .breadcrumb_list a,
.breadcrumb .breadcrumb_list span {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

.common_archive_list {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3rem 1rem;
}

.sub_main {
  width: 100%;
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #ddd;
}
.sub_main .sub_main_container {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sub_main .sub_main_container h1 {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
}

.all_category {
  width: 100%;
  margin-bottom: 5rem;
}
.all_category .all_category_list {
  width: 100%;
  margin-top: 3rem;
}
.all_category .all_category_list:first-of-type {
  margin-top: 0;
}
.all_category .all_category_list .category_label {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
.all_category .all_category_list .category_list {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 1rem;
}
.all_category .all_category_list .category_list li {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.05em;
  padding: 0.2rem 1rem;
  border: solid 0.1rem #000;
}

/*----------------------------------------------------------------------------
******************************************************************************
** single
******************************************************************************
----------------------------------------------------------------------------*/
.single_page_title {
  width: 100%;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  padding-bottom: 1rem;
  border-bottom: solid 0.2rem #111;
}

.single_date {
  width: 100%;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.05em;
  text-align: right;
  margin-top: 1rem;
}

.mokuji_box {
  width: 100%;
  margin-top: 3rem;
}
.mokuji_box .mokuji_title {
  width: 100%;
  font-size: 1.8rem;
  color: #fff;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.05em;
  padding: 0.5rem 5rem;
  text-align: center;
  background-color: #111;
}
.mokuji_box .mokuji {
  width: 100%;
  padding: 3rem 2rem;
  border: solid 0.2rem #111;
}
.mokuji_box .mokuji .mokujiinner {
  width: 100%;
}
.mokuji_box .mokuji .mokujiinner .chapter {
  width: 100%;
  list-style-type: none;
}
.mokuji_box .mokuji .mokujiinner > .chapter > li {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  margin-top: 2rem;
}
.mokuji_box .mokuji .mokujiinner > .chapter > li:first-of-type {
  margin-top: 0;
}
.mokuji_box .mokuji .mokujiinner > .chapter > .chapter {
  padding-left: 1.6rem;
  margin-top: 1rem;
}
.mokuji_box .mokuji .mokujiinner > .chapter > .chapter > li {
  width: 100%;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.05em;
  margin-top: 1rem;
}
.mokuji_box .mokuji .mokujiinner > .chapter > .chapter > li:first-of-type {
  margin-top: 0;
}

.thumbnail {
  width: 100%;
  margin-top: 3rem;
}
.thumbnail picture {
  width: 100%;
  display: block;
}
.thumbnail picture img {
  width: 100%;
}

.editor_area {
  width: 100%;
  margin-top: 3rem;
}
.editor_area h2 {
  width: 100%;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  padding-left: 1rem;
  border-left: solid 0.4rem #111;
  margin-top: 3rem;
  margin-bottom: 2rem;
}
.editor_area h3 {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  padding-bottom: 0.5rem;
  border-bottom: solid 0.1rem #111;
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.editor_area h4 {
  width: 100%;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.05em;
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.editor_area p {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.05em;
  margin-top: 1rem;
}
.editor_area a {
  text-decoration: underline;
}
.editor_area ul {
  width: 100%;
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.editor_area ul li {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.05em;
  margin-top: 0.5rem;
}
.editor_area ol {
  width: 100%;
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.editor_area ol li {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.05em;
  margin-top: 0.5rem;
}
.editor_area table {
  width: 100%;
  table-layout: fixed;
  border: solid 0.1rem #000;
  margin-top: 2rem;
  margin-bottom: 2rem;
}
.editor_area table th {
  padding: 1rem;
  font-size: 1.6rem;
  color: #fff;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.05em;
  background-color: #111;
}
.editor_area table td {
  padding: 1rem;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.05em;
}

.single_navigation {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.05em;
  text-align: center;
  position: relative;
  margin-top: 5rem;
}
.single_navigation .prev_post {
  position: absolute;
  top: 0;
  left: 0;
}
.single_navigation .next_post {
  position: absolute;
  top: 0;
  right: 0;
}

.w1000 {
  max-width: 100rem !important;
}

/*----------------------------------------------------------------------------
******************************************************************************
** footer
******************************************************************************
----------------------------------------------------------------------------*/
.ft {
  width: 100%;
  padding-bottom: 1rem;
}
.ft .ft_block01 {
  width: 100%;
  background: #f3f5f6;
}
.ft .ft_block01 .container {
  width: 100%;
}
.ft .ft_block01 .container .ft_info {
  background: #f3f5f6;
}
.ft .ft_block01 .container .ft_info dl dt {
  font-size: 1.6rem;
  font-weight: 600;
  color: #65686a;
  padding-top: .8rem;
  padding-bottom: .8rem;
  border-bottom: 1px solid #bec1c3;
  cursor: pointer;
  position: relative;
}
.ft .ft_block01 .container .ft_info dl dt::after {
  content:"＋";
  font-size: 1.8rem;
  line-height: 0;
  color: #65686a;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0,-50%);
}
.ft .ft_block01 .container .ft_info dl dt.open::after {
  content:"－";
}
.ft .ft_block01 .container .ft_info dl dd {
  display: none;
  padding-top: 2.0rem;
  padding-bottom: 3.0rem;
}
.ft .ft_block01 .container .ft_info dl dd .info_box {
  padding: 2.0rem;
  background: #fafbfc;
  margin-top: 2.0rem;
}
.ft .ft_block01 .container .ft_info dl dd .info_box .ttl {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 1.5rem;
}
.ft .ft_block01 .container .ft_info dl dd .info_box .image_card {
  margin-top: 1.0rem;
}
.ft .ft_block02 {
  width: 100%;
  padding: 2.0rem 1.4rem;
  overflow: hidden;
}
.ft .ft_block02 .container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  background: #fff;
}
.ft .ft_block02 .container .ft_logo {
  width: 100%;
  order: 2;
}
.ft .ft_block02 .container .ft_logo a {
  text-align: center;
}
.ft .ft_block02 .container .ft_logo a:nth-of-type(1) {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2.0rem;
  display: block;
}
.ft .ft_block02 .container .ft_logo a:nth-of-type(2) {
  width: 40%;
  margin-left: auto;
  margin-right: auto;
  display: block;
}
.ft .ft_block02 .container .ft_logo .ft_logo_txt {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
  color: #929597;
  margin-top: 10px;
}
.ft .ft_block02 .container .ft_navi_menu {
  order: 1;
  width: 100%;
  margin-bottom: 3.0rem;
}
.ft .ft_block02 .container .ft_navi_menu ul {
  width: 100%;
}
.ft .ft_block02 .container .ft_navi_menu li {
  border-bottom: 1px solid #e2e5e6;
}
.ft .ft_block02 .container .ft_navi_menu li a {
  color: #65686a;
  padding: 1.0rem;
  display: block;
}
.ft .copyright {
  font-family: "Lato", sans-serif;
  width: 100%;
  text-align: center;
  background: #62b5e5;
  font-size: 1.4rem;
}


.pagetop {
  width: 4rem;
  height: 4rem;
  background-color: #62b5e5;
  border-radius: 50%;
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  cursor: pointer;
  transition: 0.2s;
  opacity: 0;
  pointer-events: none;
  z-index: 100;
}
.pagetop::before {
  content: "";
  width: 1.2rem;
  height: 1.2rem;
  border-top: solid 0.2rem #fff;
  border-right: solid 0.2rem #fff;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -14.65%) rotate(-45deg);
  /**45degの中央揃え**/
  /**45deg=141.4%**/
  /**75% 斜めなので 半分の半分**/
  /**41.4%の半分20.7%の半分50%(斜めによって生じた%なので斜め計算(75%)ではなく半分(50%)) = 10.35%**/
  /**75% + 10.35% = 85.35% **/
}
.pagetop.show {
  opacity: 1;
  pointer-events: auto;
}
.pagetop.show:hover {
  opacity: 0.7;
  transition: 0.2s;
}

/**webp非対応デバイス用class
.no-webp {

}
**/
/**background webp
background: image-set(url(../webp) 1x, url(../@2x.webp) 2x) no-repeat center / cover;
**/
/**IE用css
@media all and (-ms-high-contrast: none) {

}


/**  TOP **/
.contents .container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.contents .container .side_contents {
  width: 100%;
  order: 2;
}
.contents .container .main_contents {
  width: 100%;
  order: 1;
  padding-bottom: 6.0rem;
}
.common_section_ttl01 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
  background: url(../images/common/common_ttl_icon01.png) no-repeat left top 4px;
  background-size: 18px;
  padding-left: 30px;
  padding-bottom: 1.2rem;
  border-bottom: 1px solid #ced1d2;
  position: relative;
  margin-bottom: 3.0rem;
}
.common_section_ttl01::after {
  content: "";
  display: block;
  width: 140px;
  height: 2px;
  background: #62b5e5;
  position: absolute;
  left: 0;
  bottom: -1px;
  z-index: 2;
}
.common_section_ttl01 .en {
  font-family: "Lato", sans-serif;
  font-size: 2.4rem;
  font-weight: 500;
  color: #62b5e5;
  line-height: 1;
}
.common_section_ttl01 .jp {
  font-size: 1.2rem;
  font-weight: 600;
  color: #858889;
  margin-left: 1.0rem;
  line-height: 1;
}
.common_section_ttl02 {
  font-size: 1.8rem;
  line-height: 160%;
  color: #fff;
  background: url(../images/common/common_ttl_icon01w.png) no-repeat left 20px top 1em #62b5e5;
  background-size: auto;
  border-radius: 6px;
  padding: 1.2rem 1.2rem 1.2rem 52px;
  margin-bottom: 3.0rem;
}
.common_section_ttl03 {
  font-size: 1.6rem;
  line-height: 160%;
  color: #65686a;
  padding-bottom: 1.0rem;
  border-bottom: 1px solid #797c7e;
  margin-bottom: 3.0rem;
}


.side_nav_ttl {
  background-position: left 20px center;
  background-repeat: no-repeat;
  background-size: auto;
  background-color: #f3f5f6;
  cursor: pointer;
  position: relative;
  border-radius: 6px;
}
.side_nav_ttl.open {
  border-radius: 6px 6px 0 0;
}
.side_nav_ttl.category {
  background-image: url(../images/common/common_ttl_icon0201.png);
}
.side_nav_ttl.purchase {
  background-image: url(../images/common/common_ttl_icon0202.png);
}
.side_nav_ttl button {
  text-align: left;
  font-size: 1.6rem;
  font-weight: 600;
  color: #65686a;
  line-height: 1;
  width: 100%;
  padding: 2.0rem 2.0rem 2.0rem 60px;
  position: relative;
  z-index: 2;
}

.side_nav_ttl::after {
  content:"＋";
  font-size: 1.8rem;
  line-height: 0;
  color: #65686a;
  position: absolute;
  right: 2.0rem;
  top: 50%;
  transform: translate(0,-60%);
  z-index: 1;
}
.side_nav_ttl.open::after {
  content:"－";
}
.side_nav {
  margin-bottom: 2.0rem;
}
.side_list {
  display: none;
  margin-bottom: 2.0rem;
}
.side_list li {
  border-bottom: 1px solid #d9ddde;
}
.side_list li a {
  display: block;
  font-size: 1.4rem;
  font-weight: 500;
  color: #858889;
  background: #e8ebec;
  text-decoration: none;
  padding: 1.6rem 1.0rem 1.6rem 2.0rem;
  position: relative;
}
.side_list li a::after {
  content: "";
  width: 11px;
  height: 11px;
  border: 0;
  border-top: solid 2px #999c9d;
  border-right: solid 2px #999c9d;
  position: absolute;
  top: 50%;
  right: 2.5rem;
  transform: translate(0,-50%) rotate(45deg);
}
.bn_list {
  width: 80%;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2.0rem;
}
.bn_list a {
  width: 100%;
}
.bn_list a:nth-last-of-type(n+2) {
  display: block;
  margin-bottom: 2.0rem;
}
.bn_list a img {
  width: 100%;
  max-width: 600px;
}
.sns_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.sns_list a:nth-last-of-type(n+2) {
  margin-right: 2.5rem;
}

.products_list {
  padding-bottom: 3.5rem;
}
.products_list li {
  width: 48.5%;
  margin-right: 3%;
  margin-bottom: 4.0rem;
}
.products_list li:nth-child(2n) {
  margin-right: 0;
}
.products_list li img {
  border: 1px solid #e2e5e6;
  border-radius: 6px;
}
.products_list li .name {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 160%;
  color: #65686a;
  padding-top: 1.5rem;
  margin-bottom: 1.0rem;
}
.products_list li .price {
  line-height: 1;
  color: #65686a;
}
.products_list li .price .amount {
  line-height: 1;
  font-size: 1.6rem;
  font-weight: 700;
}
.products_list li .price .tax {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
}

.products_list.cartbtn_on li {
  display: flex;
  flex-direction: column;
}
.products_list li .cartin {
  padding: 2.5rem 10px 0;
  margin-top: auto;
}
.products_list li .cartin a ,
.products_list li .cartin .soldout {
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  display: block;
  background: #62b5e5;
  border-radius: 6px;
  line-height: 1;
  padding: 1.2rem 0;
  text-align: center;
}
.products_list li .cartin .soldout {
  background: #8f8f8f;
}
.products_list li .cartin a .icon {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  margin-right: 8px;
}
.products_list li .cartin a .icon img {
  border: none;
  border-radius: 0;
}

.top_news .top_news_list {
  padding-bottom: 4.0rem;
}
.top_news .top_news_list li {
  border-bottom: 1px solid #e2e5e6;
}
.top_news .top_news_list li:nth-child(n+4) {
  display: none;
}
.top_news .top_news_list li a {
  text-decoration: none;
  display: flex;
  flex-wrap: wrap;
  padding: 2.0rem 0;
  width: 100%;
}
.top_news .top_news_list li a .date {
  font-family: "Lato", sans-serif;
  width: 100%;
  margin-bottom: 10px;
  font-size: 1.6rem;
  line-height: 1;
  color: #babbbb;
}
.top_news .top_news_list li a .ttl {
  width: 100%;
  font-size: 1.6rem;
  color: #65686a;
}



.breadcrumb {
  padding: 0 0 2.0rem;
}
.breadcrumb ol li {
  list-style: none;
  font-size: 1.4rem;
  line-height: 170%;
  color: #65686a;
  position: relative;
}
.breadcrumb ol li a {
  font-size: 1.4rem;
  line-height: 170%;
  color: #62b5e5;
  border-bottom: 1px solid #62b5e5;
  padding-bottom: 2px;
}
.breadcrumb ol li:nth-last-child(n+2) {
  margin-right: 32px;
}
.breadcrumb ol li:nth-last-child(n+2)::after {
  content: "";
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 2px #62b5e5;
  border-right: solid 2px #62b5e5;
  position: absolute;
  top: 51%;
  right: -20px;
  transform: translate(0, -50%) rotate(45deg);
}

.category_main {
  padding: 0 0 4.0rem;
  width: calc(100% + 2.8rem);
  margin-left: -1.4rem;
}

.pager-wrap {
  text-align: center;
  padding-top: 4.0rem;
}
.pager-wrap .pager {
  justify-content: center;
}
.pager-wrap .pager li {
  border: 1px solid #62b5e5;
  border-radius: 6px;
  overflow: hidden;
  margin: 0 .6rem
}
.pager-wrap .pager li span {
  font-size: 1.6rem;
  line-height: 1;
  padding: 1.0rem;
  display: block;
}
.pager-wrap .pager li .current {
  color: #fff;
  background: #62b5e5;
}
.pager-wrap .pager li a {
  background: #fff;
}
.pager-wrap .pager li a span {
  color: #62b5e5;
}

.list_total_sort {
  align-items: center;
  padding-bottom: 4.0rem;
}
.list_total_sort .total {
  font-size: 1.4rem;
  line-height: 1;
  color: #65686a;
}
.list_total_sort .sortlist {
  width: auto;
  border-left: 1px solid #e2e5e6;
}
.list_total_sort .sortlist li {
  border-right: 1px solid #e2e5e6;
}
.list_total_sort .sortlist li a {
  font-size: 1.4rem;
  line-height: 1;
  color: #65686a;
  text-decoration: none;
  display: block;
  padding: 2px 1.5rem;
}

.product_detail_image {
  width: 100%;
  margin: 0 0 2rem;
}
.product_detail_image .swiper-slide {
	margin-bottom: 30px;
	line-height: 0;
	display: flex;
	align-items: center;
  padding: 1px;
}
.product_detail_image .swiper-slide img {
	width: 100%;
  border: 1px solid #e2e5e6;
  border-radius: 6px;
}
.product_detail_image .product_detail_image-large {
}
.product_detail_image .product_detail_image-large .swiper-button-prev svg,
.product_detail_image .product_detail_image-large .swiper-button-next svg {
  display: none;
}
.product_detail_image .product_detail_image-large .swiper-button-prev ,
.product_detail_image .product_detail_image-large .swiper-button-next {
  width: 40px;
  height: 40px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 40px;
  z-index: 50;
}
.product_detail_image .product_detail_image-large .swiper-button-prev::after ,
.product_detail_image .product_detail_image-large .swiper-button-next::after {
  content: none;
}
.product_detail_image .product_detail_image-large .swiper-button-prev {
  left: 0;
  background-image: url(../images/top/main_arrow_prev.png);
}
.product_detail_image .product_detail_image-large .swiper-button-next {
  right: 0;
  background-image: url(../images/top/main_arrow_next.png);
}
.product_detail_image .product_detail_image-small {
  display: none;
}
.product_detail_info {
  width: 100%;
  padding-bottom: 3.5rem;
}
.product_detail_info .product_name {
  font-size: 1.8rem;
  font-weight: 500;
  color: #65686a;
  line-height: 180%;
  margin-bottom: 2.0rem;
}
.product_detail_info .product_code {
  font-size: 1.4rem;
  font-weight: 500;
  color: #65686a;
  margin-bottom: 1.0rem;
}
.product_detail_info .item-price {
  margin-bottom: 2.0rem;
}
.product_detail_info .item-price .price {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1;
  color: #65686a;
}
.product_detail_info .item-price .tax {
  font-size: 1.4rem;
  font-weight: 500;
  color: #65686a;
  margin-left: 5px;
}
.product_detail_info .product_num {
  align-items: center;
}
.product_detail_info .product_num .ttl {
  font-size: 1.6rem;
  line-height: 1;
  color: #65686a;
  margin-right: 10px;
}
.product_detail_info .product_num input {
  width: calc( 100% - 60px );
  font-size: 1.6rem;
  line-height: 1;
  color: #65686a;
  border: 1px solid #babbbb;
  border-radius: 6px;
  padding: 5px 10px;
}
.product_detail_info .cartin {
  padding: 3.0rem 0 2.0rem;
}
.product_detail_info .cartin a {
  font-size: 1.6rem;
  font-weight: 500;
  color: #fff;
  display: block;
  background: #62b5e5;
  border-radius: 6px;
  line-height: 1;
  padding: 1.8rem 0;
  text-align: center;
}
.product_detail_info .cartin a .icon {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  margin-right: 8px;
}
.product_detail_info .cartin a .icon img {
  border: none;
  border-radius: 0;
}
.product_detail_info .product_btns {
  padding-bottom: 4.0rem;
}
.product_detail_info .product_btns > div {
  width: calc( ( 100% - 5px ) / 2 );
}
.product_detail_info .product_btns .item-favorite {
  margin-right: 5px;
}
.product_detail_info .product_btns a {
  font-size: 1.2rem;
  font-weight: 500;
  color: #65686a;
  border: 1px solid #babbbb;
  border-radius: 30px;
  line-height: 1;
  display: block;
  padding: 1.5rem 2.0rem 1.5rem 1.5rem;
}
@media screen and (max-width:420px){
  .product_detail_info .product_btns > div {
    width: 100%;
  }
  .product_detail_info .product_btns .item-favorite {
    margin-bottom: 5px;
  }
  .product_detail_info .product_btns a {
    text-align: center;
    font-size: 1.4rem;
  }
}
.product_detail_info .product_btns a .icon {
  display: inline-block;
  vertical-align: middle;
  margin-right: 6px;
}
.product_detail_info .product_detail_information {
  border-top: 1px solid #e2e5e6;
  padding-top: 3.0rem;
  padding-bottom: 3.0rem;
}
.product_detail_info .product_detail_information p {
  font-size: 1.4rem;
  line-height: 190%;
  color: #65686a;
}
.product_detail_info .product_detail_information p:nth-last-of-type(n+2) {
  margin-bottom: 2.0rem;
}
.product_detail_info .product_detail_share {
  border-top: 1px solid #e2e5e6;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}
.product_detail_info .product_detail_share .ttl {
  font-size: 1.4rem;
  margin-bottom: 1.5rem;
  color: #65686a;
}
.product_detail_info .product_detail_share .share_btns li:nth-last-child(n+2) {
  margin-right: 10px;
}



/*# sourceMappingURL=sp.css.map */