@charset "UTF-8";
@font-face {
  font-family: Ropa Sans;
  src: url("/gift/renewal/common/css/fonts/RopaSans-Regular.ttf") format("truetype");
  font-display: swap;
}


.googlefontLoad {
  /* opacity: 0; */
  transition-property: opacity;
  transition-duration: 0.2s;
  transition-timing-function: ease;
}
.wf-active .googlefontLoad {
  opacity: 1;
}

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
img {
	vertical-align: top;
}
body{
  padding-bottom: 80px;
}
main {
	display: block;
	margin-bottom: 50px;
	font-family:"游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
	font-size: 1.6rem;
}

main a {
	transition: opacity .3s ease-out;
}
main a:hover,
.to_top a:hover {
	opacity: 0.7;
}


.to_top,
.to_top a {
  width: 50px;
  height: 50px;
}
.to_top {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 1;
}
.to_top a {
	position: relative;
	display: block;
	background: #125687;
}
.to_top a::before {
	position: absolute;
	top: calc( 50% - 4px);
	left: calc( 50% - 8px);
	width: 14px;
	height: 14px;
	content: "";
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(-45deg);
}
.to_top.stop {
	position: relative;
  bottom: 50px;
	right: 0;
	width: 1120px;
	height: 0;
	margin: 0 auto;
	text-align: right;
}
.to_top.stop a {
	position: absolute;
	top: 0;
	right: 20px;
}
.c-nav__inner,
.c-nav-main,
.c-nav-main > * {
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}



.contentsHeader {
	min-width: 1140px;
}

.contentsHeader .mainLogo {
	margin: 0 auto;
	max-width: 1130px;
/*	margin-top: 50px;*/
  margin-top: 30px;
	line-height: 1.5;
}

.contentsHeader .mainLogo {
	margin: 0 auto;
	max-width: 1130px;
/*	margin-top: 50px;*/
  margin-top: 30px;
	line-height: 1.5;
}
.fixNavi .mainLogo {
  -webkit-animation: none;
  animation: none;
}


.contentsHeader .mainLogoText {
	font-size: 2rem;
	font-family: 'Ropa Sans',"游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
}
.contentsHeader.active .mainLogoText,
.fixNavi .mainLogoText {
  font-size: 1.3rem;
	letter-spacing: 0;
}
.contentsHeader .mainLogoTitle {
	font-size: 5.6rem;
  line-height: 1.2;
}
.contentsHeader.active .mainLogoTitle,
.fixNavi .mainLogoTitle {
	font-size: 3.4rem;
}
.contentsHeader .mainLogoTitle,
.fixNavi .mainLogoTitle {
  display: block;
	font-family: 'Ropa Sans',"游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro",メイリオ,Meiryo,sans-serif;
}

.articleDetail {
	margin-top: 30px;
}
.articleDetail .mainLogo p + p {
	margin-top: 0;
}
.headerBg {
  padding: 30px 0;
	background: url(../images/bg_header.jpg) right bottom / cover no-repeat;
  padding: 30px 0;
  background: #fff;
}


/*追従ナビ*/
/*index*/

.contentsHeader.active,
.fixNavi {
  background: #fff;
}
.contentsHeader.active,
.fixNavi.active {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100;
}

.contentsHeader.animate,
.fixNavi.animate {
  transition-property: transform;
  transition-duration: 0.5s;
  transition-timing-function:ease-in-out;
  transform: translateY(-100%);
}
.contentsHeader.animate.active,
.fixNavi.animate.active {
	transform: translateY(0);
}

.contentsHeader.active .naviInner,
.fixNavi .naviInner {
  width: 1120px;
  margin: 0 auto;
	padding: 20px;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-align-items: center;
	-moz-align-items: center;
  -ms-align-items: center;
	align-items: center;
}
.active .inactiveItem {
	display: none;
}
.activeItem {
	display: none;
}
.active .activeItem {
	display: block;
}

/*navのレイアウト変更*/

.search {
	display: block;
}
.searchInner {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
}

.contentsHeader .searchInner {
	width: 960px;
	margin: 0 auto;
	padding: 40px 0;
}
.contentsHeader.active .searchInner {
	margin: 0;
	padding: 0;
	width: 810px;
}
.search .searchList {
	line-height: 2.0;
}
.contentsHeader .search .searchList {
	width: 150px;
	padding: 5px 0 0 30px;
}
.contentsHeader.active .search .searchList {
	font-size: 1.4rem;
}
.fixNavi .search .searchList {
	margin: 0;
}

.contentsHeader:not(.active) .search .searchList.tag {
	padding-top: 0;
}

.fixNavi .search .searchList,
.contentsHeader.active .search .searchList {
	font-size: 1.4rem;
	display: inline-block;
}
.contentsHeader.active .search .searchList {
	width: auto;
}
.contentsHeader.active .searchList,
.fixNavi .searchList {
	padding: 0 20px 0 24px;
}
.contentsHeader.active .searchList.tag,
.fixNavi .searchList.tag {
	padding: 0 10px 0 24px;
}
.search .searchList.tag {
	background: url(../images/icon_tag.png) 0 5px no-repeat;
}
.search .searchList.word {
  background: url(../images/icon_search.png) 0 7px no-repeat;
}
.contentsHeader .search .searchList.word {
  background: url(../images/icon_search.png) 0 14px no-repeat;
}
.contentsHeader.active .search .searchList.word {
  background: url(../images/icon_search.png) 0 6px no-repeat;
}
.tagSearchList {
  z-index: 10;
}
.tagSearchList,
.searchArea {
	line-height: 1.0;
	display: -webkit-inline-flex;
	display: -moz-inline-flex;
	display: -ms-inline-flex;
	display: inline-flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.searchInner .searchArea {
	margin-bottom: 30px;
}
.contentsHeader .searchArea {
	width: 100%;
}
.contentsHeader.active .searchArea {
	margin-bottom: 0;
	width: 350px;
}
.fixNavi .searchArea {
	margin-bottom: 0;
	width: 300px;
}

.contentsHeader.active .keywordSearch,
.fixNavi .keywordSearch  {
	display: inline-block;
	width: 200px;
}

.contentsHeader.active .c-nav {
	display: none;
}

.contentsHeader.active .headerBg {
	background: none;
	padding: 0;
}
.contentsHeader.active .headerBg,
.fixNavi .mainLogo {
	margin-right: 30px;
}
.contentsHeader.active .mainLogo,
.fixNavi .mainLogo {
	width: 245px;
	margin-top: 0;
	padding: 0;
	letter-spacing: 0.2em;
	line-height: 1.5;
}

.mainLogo a {
	display: block;
  color: #333;
  text-align: center;
}

.contentsHeader.active .search dl {
	position: absolute;
	top: 0;
	left: 0;
	background: #fff;
	padding-bottom: 20px;
}
.contentsHeader.active .search dl .tag {
	width: 95px;
}
.contentsHeader.active .search dl .word {
	width: 120px;
}
.contentsHeader.active .search dl .tag + dd {
	width: 410px;
}
.contentsHeader.active .search dl .word + dd {
	width: 200px;
}
.contentsHeader.active .search dl .word + dd .keywordSearch {
	width: 100%;
}
.tagSearch {
	position: relative;
}
.contentsHeader .tagSearch {
  width: calc(100% - 150px);
}
.tagSearch,
.contentsHeader.active .tagSearch {
	width: 370px;
}

.contentsHeader.active .tagSearchList,
.fixNavi .tagSearchList {
  position: absolute;
  top: 0;
  left: 0;
	background: #fff;
	padding: 0 10px 10px 10px;
}
.active .tagSearchList {
	width: 100%;
}


.fixNavi .search {
	display: block;
}
.fixNavi .searchInner .tagSearchList li,
.contentsHeader.active .tagSearchList li {
	margin: 0 6px 6px 0;
}
.fixNavi .moreListArea .tagSearchList li {
	margin: 0 6px 6px 0;
}
.fixNavi .tagSearchList li a,
.contentsHeader.active .tagSearchList li label {
	padding: 6px 10px;
}
.tagSearchList li a,
.tagSearchList li label {
	border-radius: 5px;
}


.fixNavi .moreListArea {
	padding-left: 372px;
}

.moreBtn a,
.closeBtn a {
	display: block;
	position: relative;
	padding: 2px 5px;
	border: 1px solid #000;
	text-align: center;
	font-size: 1.3rem;
	background: #000;
	color: #fff;
	transition-property: background, color;
  transition: 0.3s;
}

.moreBtn a:hover,
.closeBtn a:hover,
.tagSearchList .moreBtn a:hover,
.tagSearchList .closeBtn a:hover {
	background: #fff;
	color: #000;
}


.tagSearchList .moreBtn ~ li {
	display: none;
}
.tagSearchList .moreBtn a {
	position: relative;
	padding: 5px 50px 5px 20px;
	border: 1px solid #000;
	border-radius: 0;
	background: #000;
	color: #fff;
}

.moreBtn a::after {
	content:"";
	display: inline-block;
	position: absolute;
	top: calc(50% - 8px);
	right: 10px;
	width: 8px;
	height: 8px;
	border-right: 1px solid #cfcfcf;
	border-bottom: 1px solid #cfcfcf;
	transform: rotate(45deg);
}

.articleDetail .contentsArea .moreBtn a::after {
	top: calc(50% - 5px);
  transform: rotate(-45deg);
}
.moreBtn a:hover::after {
	border-right: 1px solid #cfcfcf;
	border-bottom: 1px solid #cfcfcf;
}
.contentsHeader.active .moreBtn a::after,
.fixNavi .moreBtn a::after {
	top: calc(50% - 6px);
	width: 6px;
	height: 6px;
}

.fixNavi .moreBtn a::after {
  border-top: none;
}

.fixNavi .tagSearchList .moreBtn a,
.fixNavi .tagSearchList .closeBtn a,
.contentsHeader.active .tagSearchList li a {
	padding: 4px 25px 3px 10px;
	line-height: 1.3;
}

.fixNavi .moreBtn {
  margin: 5px 0 0 0;
}




.tagSearchList .closeBtn a {
	position: relative;
	padding: 6px 50px 6px 20px;
	border: 1px solid #000;
	background: #000;
	color: #fff;
	border-radius: 0;
}

.closeBtn a::after {
	content:"";
	display: inline-block;
	position: absolute;
	top: calc(50% - 6px);
	right: 10px;
	width: 6px;
	height: 6px;
	border-bottom: 1px solid #cfcfcf;
	border-left: 1px solid #cfcfcf;
	transform: rotate(45deg);
}
.closeBtn a:hover::after  {
	border-bottom: 1px solid #cfcfcf;
	border-left: 1px solid #cfcfcf;
}
.tagSearchList .closeBtn a::after {
	top: calc(50% - 2px);
	border-top: 1px solid #cfcfcf;
	border-left: 1px solid #cfcfcf;
	border-bottom: none;
}

.tagSearchList .closeBtn a:hover::after  {
	border-top: 1px solid #cfcfcf;
	border-left: 1px solid #cfcfcf;
}


.tagSearchList li {
	margin: 0 15px 15px 0;
	vertical-align: top;
}
.tagSearchList li input[type="checkbox"] {
  display: none;
}
.tagSearchList li a,
.tagSearchList li label {
	display: block;
	padding: 6px 20px;
	background: #125687;
	border-radius: 5px;
	font-size: 1.2rem;
	color: #fff;
}
_:lang(x)::-ms-backdrop, .tagSearchList li a,
_:lang(x)::-ms-backdrop, .tagSearchList li label {
    padding: 6px 20px;
}

.tagSearchList li input[type="checkbox"]:checked+label {
	background: #000;
	color: #fff;
	opacity: 1;
}
.tagSearchList li label:hover {
	transition: opacity .3s ease-out;
}
.tagSearchList li label:hover {
	opacity: 0.7;
}


.keywordSearch {
	position: relative;
	width: 30%;
	background: #fff;
	border: 1px solid #ccc;
}

#search01 {
	padding: 5px;
	width: calc(100% - 30px);
	height: 100%;
	border: none;
}
#searchBtn01 {
	position: absolute;
	top: 0;
	right: 0;
	width: 20px;
	height: 100%;
	border: none;
	background: url(../images/icon_search.png) 0 center no-repeat;
}

.tagSearchList li label:hover,
#searchBtn01:hover {
	cursor: pointer;
}


.contentsArea {
	margin: 0 auto;
	padding: 60px 80px;
	width: 1120px;
	background: #fff;
}

.contentsArea .mainTitle {
	margin-bottom: 55px;
	text-align: center;
	font-size: 3rem;
}

.articleArea {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
}

.articleArea article {
  width: 304px;
}
.articleArea article + article {
  margin-left: 20px;
}
.articleArea article:nth-child(n+4) {
	margin-top: 30px;
}
.articleArea article:nth-child(3n + 1) {
  margin-left: 0;
}

.articleArea article .photo {
  position: relative;
  text-align: center;
  overflow: hidden;
  height: 172px;
}
.articleArea article .photo img {
  max-width: 100%;
}
.articleArea article .photo span {
  display: inline-block;
  position: absolute;
  left: 0;
  height: 30px;
  line-height: 30px;
  vertical-align: middle;
  text-align: center;
  padding: 0 20px 0 18px;
  background: #b53131;
  font-size: 1.1rem;
  color: #fff;
}
.articleArea .photo span::after {
	content:"";
  position: absolute;
  top: 0;
  right: -15px;
  width: 0;
  height: 0;
  border-width: 15px;
  border-color: #b53131 transparent #b53131 #b53131;
  border-style: solid;
    z-index: 1;
}
.articleArea .articleTitle {
	margin: 15px 0;
	line-height: 1.5;
	font-size: 1.6rem;
	font-weight: bold;
}
.articleArea a {
	display: block;
	color: #333;
}



.articleArea time,
.titleArea time,
.related time,
.relatedArticle time {
	padding-left: 20px;
	background: url(../images/icon_time.png) 0 center no-repeat;
	font-size: 1.2rem;
	color: #777;
}
_:lang(x)::-ms-backdrop, .articleArea time {
    background-position: 0 2px;
}

.articleTag li {
	display: inline-block;
	margin: 10px 8px 0 0;
	padding: 2px 5px;
	border: 1px solid #125687;
	font-size: 1.1rem;
	color: #125687;
}
_:lang(x)::-ms-backdrop, .articleTag li {
    padding: 5px 5px 0 5px;
}

/*articleDetail*/

.articleDetail {
	position: relative;
}
.articleDetail .contentsHeader {
	width: 100%;
	-webkit-box-shadow: 0 10px 0 rgba(0,0,0,0.03);
	box-shadow: 0 3px 3px rgba(0,0,0,0.03);
}
.articleDetail .contentsHeader.fixed {
	position: fixed;
	top: 0;
}

.articleDetail .titleArea {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-bottom: 60px;
}
.articleDetail .titleArea .mainTitle {
	width: 100%;
}

.articleDetail .titleArea .articleTagList {
	margin-left: 30px;
}
.articleDetail .titleArea .articleTagList li {
	display: inline-block;
	margin: 0 10px 10px 0;
}
.articleDetail .titleArea .articleTagList li a {
	display: block;
	padding: 2px 10px;
	border: 1px solid #125687;
	font-size: 1.3rem;
	color: #125687;
}

.articleDetail .contentsArea {
	margin-top: 60px;
	padding: 80px 160px;
}
.articleDetail .contentsArea .mainTitle {
	margin-bottom: 30px;
	text-align: left;
	font-size: 2.8rem;
	font-weight: bold;
}
.articleDetail .articleMain {
	margin-bottom: 40px;
}
.articleDetail .articleMain figure {
	margin: 0 auto;
	width: 100%;
	text-align: center;
}
.articleDetail .articleMain figure + p {
	padding: 35px;
	background: #fffafa;
}
.articleDetail p {
	line-height: 1.875;
}
.articleDetail p + .sectionLowTitle {
  margin-top: 20px;
}

.articleDetail .articlePhoto {
	text-align: center;
}
.articleDetail .articleMain figure img,
.articleDetail .articlePhoto {
	max-width: 100%;
}
.articleDetail * + h2,
.articleDetail * + h3 {
	margin-top: 50px;
}
.articleDetail p + p {
	margin-top: 30px;
}
.articleDetail p strong {
	background: linear-gradient(transparent 50%, #fffdcc 50%);
}
.articleDetail p:not(p.moreBtn):not(p.linkBtn):not(p.closeBtn) a {
	text-decoration: underline;
	color: #be7575;
}
.articleDetail blockquote {
	margin-top: 20px;
	padding: 40px;
	background: url(../articles/images/icon_quote01.png) 20px 20px no-repeat, url(../articles/images/icon_quote02.png) 98% 90% no-repeat;
	border: 1px solid #f3e5e5;
}
.articleDetail .relatedArticle {
	position: relative;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	margin-top: 50px;
	padding: 40px;
	border: 1px solid #f3e5e5;
}
.articleDetail .relatedArticle .relatedTitle {
	position: absolute;
	padding: 0 20px;
	top: -12px;
	left: 20px;
	background: #fff;
	font-size: 1.6rem;
	font-weight: normal;
	color: #be7575;
}
.articleDetail .relatedArticle .relatedImg {
	margin-right: 30px;
}
.articleDetail .relatedArticle .relatedImg img {
	max-width: 100%;
}
.articleDetail .sectionTitle {
	margin-bottom: 20px;
	font-size: 2rem;
	font-weight: bold;
	color: #c00;
}
.articleDetail .sectionSubTitle {
	margin-bottom: 10px;
	font-size: 1.8rem;
	font-weight: bold;
}
.articleDetail .sectionLowTitle span {
	background: linear-gradient(transparent 50%, #fffdcc 50%);
}
.articleDetail .linkBtn a {
	position: relative;
	display: block;
	padding: 20px;
	background: #f37a7a;
	text-align: center;
	text-decoration: none;
	color: #fff;
}
.articleDetail .linkBtn.linkBtnbk a {
	background: #000;
	color: #fff;
}
.articleDetail .linkBtn a::after {
	content:"";
	position: absolute;
	top: 45%;
	right: 20px;
	display: block;
	width: 10px;
	height: 10px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
}
.articleDetail .photoRight {
  display: flex;
  justify-content: space-between;
}
.articleDetail .photoRight .leftText {
  width: 70%;
  margin-top: 20px;
}
.articleDetail .photoRight .articlePhoto {
  width: 25%;
}
.articleDetail .photoRight .articlePhoto img {
  max-width: 100%;
  height: auto;
}
.articleDetail .photoRight + .sectionLowTitle {
  margin-top: 20px;
}


/* 20200205 */
.articleDetail .photoBox {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
}
.articleDetail .photoBox .textBox {
  width: 55%;
}
.articleDetail .photoBox .textBox .giftInfo {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  text-align: center;
}

.articleDetail .photoBox .textBox .giftInfo img {
  width: 30%;
}
.articleDetail .photoBox .textBox .giftInfo span {
  display: inline-block;
  margin-left: 10px;
  font-size: 1.2rem;
  font-weight: bold;
}
.articleDetail .photoBox .imgBox {
  width: 43%;
}

.articleDetail .photoBox .imgBox img {
  max-width: 100%;
  height: auto;
}
.articleDetail .photoBox .imgBox span {
  display: block;
  text-align: right;
  font-size: 1.2rem;
  font-weight: bold;
}
* + .photoBox {
  margin-top: 50px;
}

.articleDetail .photoBox .textBox .giftInfo a,
.articleDetail .photoBox .imgBox a {
  display: block;
}

/*recommend*/
.articleDetail .contentsArea .recommendTitle {
	margin-bottom: 30px;
	text-align: center;
	font-size: 2.8rem;
}
.articleDetail .contentsArea .recommend {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}
.articleDetail .contentsArea .recommend .recommendText {
	margin-left: 20px;
}
.articleDetail .contentsArea .recommend .recommendText > * + * {
	margin-top: 20px;
}

.articleDetail .contentsArea .moreBtn {
	width: 130px;
}

.articleDetail .contentsArea .recommend + .recommend {
	margin-top: 40px;
}


/*related*/
.articleDetail .related {
	margin: 60px auto;
	width: 960px;
}
.articleDetail .related .relatedTitle {
	margin-bottom: 30px;
	text-align: center;
	font-size: 2.8rem;
	font-weight: bold;
}


/*writerArea*/
.writerArea {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-o-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 60px;
	padding: 35px 0;
	border-top: 1px solid #eaeaea;
	border-bottom: 1px solid #eaeaea;
}
.writerArea .mainTitle {
	width: 100%;
}
.writerArea .writerImg {
	width: 86px;
	height: 86px;
	background: #ccc;
}
.writerArea .writerDetail {
	margin-left: 30px;
	max-width: 680px;
}
.writerArea .writerName {
	font-size: 1.8rem;
}
.writerArea .writerName span {
	display: inline-block;
	margin-right: 30px;
	font-size: 1.2rem;
}
.writerArea .writerDetail * + * {
	margin-top: 20px;
}

/*sns*/
.snsArea ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 40px;
}
.snsArea ul li + li {
	margin-left: 30px;
}
/*animate*/
.fade-flag {
	transition-property: transform;
	transition-duration: 1s;
	transition-timing-function:ease-in-out;
	opacity: 0;
}
.fade-flag-top {
	transform: translateY(50px);
}
.fade-flag-top.flag-on {
	transform: translateY(0);
}


/* ヘッダー・フッター調整 */
table th, table td {
  vertical-align: top;
}

#page_footer {
  margin-top: 0 !important;
}

.c-footer-nav {
  padding: 39px 0 32px;
  background: #fff;
  font-size: 1.2rem;
}
.c-footer-nav__wrap {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.c-footer-nav__box:nth-child(2) {
  margin-left: 46px;
}
.c-footer-nav__box.__long-box {
  flex-basis: 562px;
  max-width: 562px;
}
.c-footer-nav__box.__short-box {
  flex-basis: 412px;
  max-width: 412px;
}
.c-footer-nav__box.__full-box {
  flex-basis: 100%;
  width: 100%;
}
.c-footer-nav__list th, .c-footer-nav__list td {
  padding-top: 11px;
  padding-bottom: 11px;
  white-space: nowrap;
}
.c-footer-nav__heading-primary {
  margin-bottom: 23px;
  padding-bottom: 10px;
  line-height: 2.14;
  font-size: 1.4rem;
  border-bottom: 1px solid #dfdfdf;
  font-weight: bold;
}
.c-footer-nav__heading-secondary {
  padding-right: 23px;
  font-size: 1.3rem;
  font-weight: bold;
}
.c-footer-nav__menu-link.icon-arrow {
  position: relative;
  padding-left: 10px;
  padding-right: 15px;
  font-family: "Noto Sans JP", sans-serif !important;
}
.c-footer-nav__menu-link.icon-arrow:before {
  font-size: 1rem;
  position: absolute;
  left: 0;
  top: 9px;
  transform: translateY(-50%);
  font-family: "icomoon" !important;
}
.c-footer-nav__menu-link.-inline-block {
  display: inline-block;
}
.c-footer-nav__menu-link.-wrap {
  white-space: normal;
  line-height: 1.6;
}
.c-footer-nav__menu-list {
  display: flex;
}
.c-footer-nav__item + .c-footer-nav__item {
  margin-top: 34px;
}
.c-footer-nav__other {
  display: flex;
  position: relative;
  max-width: 1330px;
  margin-top: 50px;
  padding: 0 40px;
  justify-content: space-between;
  flex-wrap: wrap;
}
.c-footer-nav__other::after {
  display: block;
  width: 476px;
  content: "";
}
.c-footer-nav__other-item {
  margin-top: 10px;
}
.c-footer-nav__other-link {
  padding: 0 12px;
}

.c-footer-purchase {
  background: #f7f7f7;
  border-top: 1px solid #d6d6d6;
  padding: 60px 0;
}

.c-footer-purchase-inner {
  background: #fff;
  max-width: 1160px;
  margin: 0 auto;
  padding: 60px 90px;
}

.c-footer-purchase-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.4rem;
  font-weight: 500;
}

.c-footer-purchase-ttl .icon-site {
  margin-right: 10px;
  font-size: 2.5rem;
}

.c-footer-purchase-brand {
  display: flex;
  align-items: center;
  justify-content: center!important;
  gap: 80px!important;
  margin-top: 50px;
}

.c-footer-purchase-brand__items {
  display: flex;
  align-items: center;
  font-size: 1.8rem;
}

.c-footer-purchase-brand__items figure {
  width: 112px;
  margin-right: 30px;
}

.c-footer-purchase-brand__text--en {
  display: block;
  font-family: "Ropa Sans", "Noto Sans JP", sans-serif;
  font-size: 3.2rem;
  line-height: 1.15;
}

.c-footer-purchase-brand__text--ja {
  font-size: 2.7rem;
}

.c-footer-purchase-brand__link {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #c81528;
  width: 200px;
  height: 50px;
  margin: 40px auto 0;
  font-size: 1.8rem;
  color: #fff;
  box-shadow: 2.1px 2.1px 3px 0 rgba(0, 0, 0, 0.15);
}

.c-footer-purchase-brand__link:hover {
  opacity: 0.7;
}

.c-footer-purchase-brand__link .icon-cart {
  margin-left: 12px;
  font-size: 1.6rem;
}

.c-footer-purchase-brand-text-link {
  text-decoration: underline!important;
  font-size: 1.6rem;
  color: #333!important;
}
.c-footer-purchase-brand-text-link:hover {
  text-decoration: none;
}

.c-footer-purchase-brand__howto {
  text-align: center;
  margin-top: 10px;
}

.c-footer-purchase-explain {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}

.c-footer-purchase-explain__items {
  flex-basis: 300px;
}

.c-footer-purchase-explain__items--border {
  height: 356px!important;
  border: solid 1px #dbdddf;
  padding: 20px;
}

.c-footer-purchase-explain__ttl {
  margin-bottom: 10px;
  font-weight: bold;
  text-align: center;
}

.c-footer-purchase-explain__text {
  font-size: 1.3rem;
}

.c-footer-purchase-explain__items:nth-child(3) .c-footer-purchase-explain__text {
  text-align: left;
}

.c-footer-purchase-explain__caption {
  margin-top: 6px;
  font-size: 1.2rem;
  color: #c81528;
  text-align: left;
}

.c-footer-purchase-inquiry {
  width: 800px;
  margin: 40px auto 0;
}

.c-footer-purchase-inquiry__ttl {
  display:block;
  font-size: 1.8rem;
  font-weight: 500;
  text-align: center;
}

.c-footer-purchase-inquiry__list {
  display: inherit!important;
  border: solid 1px #dbdddf;
  margin-top: 12px;
  padding: 18px 0;
}

.c-footer-purchase-inquiry__item {
  flex-basis: 400px;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

.c-footer-purchase-inquiry__item:nth-child(2) {
  border-left: 1px solid #dbdddf;
  font-size: 3.2rem;
  letter-spacing: 2.56px;
}

.c-footer-purchase-inquiry__time {
  display: flex;
  align-items: center;
  justify-content: center;
}

.c-footer-purchase-inquiry__item .bg_black {
  background: #333;
  margin-top: 2px;
  margin-right: 12px;
  padding: 0 12px 1px;
  font-size: 1.3rem;
  color: #fff;
}

.c-footer-purchase-inquiry__item .icon-tel {
  font-size: 3rem;
}

.c-footer-purchase-inquiry__text {
  margin-top: 6px;
  font-size: 1.2rem;
}

._flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}

#JTBGF-ly_footer.JTBGF-ly_footer{
  background-color: #fff;
}

.c-footer-cv {
  padding: 15px 0;
  background: #f2f2f2;
  opacity: 0;
  transform: translateY(100%);
  transition: all 0.4s;
  visibility: hidden;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
}
.is-scroll .c-footer-cv {
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
  z-index: 99;
}

.c-footer-cv__list {
  justify-content: center;
}
.c-footer-cv__item {
  flex-basis: 300px;
  height: 50px;
  margin: 0 20px;
  font-size: 2rem;
}
.c-footer-cv__link {
  position: relative;
  height: 100%;
  font-weight: 500;
}
.c-footer-cv__ico {
  font-size: 2.7rem;
  position: absolute;
  right: 30px;
  top: 50%;
  transform: translateY(-50%);
}
.c-footer-cv .icon-cart {
  font-size: 2.2rem;
}
