@charset "UTF-8";
/* CSS Document */
/***********************************************
								共 通 項 目
***********************************************/
a, a:visited { color: #000000; }

a:hover img { opacity: 1; }

h2 { font-weight: 500; font-size: 2.375em; }

.wrapper { width: 100%; max-width: 1920px; margin: 0 auto; padding: 0; background-color: #EDEAE0; color: #000000; }

.worksans { font-family: 'Work Sans', 'Helvetica Neue', Arial, 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', 'BIZ UDPGothic', Meiryo, sans-serif; }

.fret-patterns { margin: 0; padding: 0; font-size: 0; }
.fret-patterns img { width: 100%; height: 2rem; object-fit: cover; }
@media (min-width: 992px) { .fret-patterns img { height: 6rem; } }

.strings-graphics { position: absolute; top: 0; left: 0; bottom: 0; right: 0; margin: auto; width: 100%; height: 95%; }
.strings-graphics img { width: 100%; height: 100%; object-fit: cover; }

.tbn-trim { width: 100%; position: relative; overflow: hidden; }
.tbn-trim.ratio-169::before { content: ""; display: block; padding-top: 56.25%; /* 高さと幅の比を16:9に固定。9/16*100=56.25 */ }
.tbn-trim.ratio-square::before { content: ""; display: block; padding-top: 100%; }
.tbn-trim.ratio-ogp::before { content: ""; display: block; padding-top: 52.356%; }
.tbn-trim img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }

a:hover .tbn-trim img { transform: scale(1.1); }

.include-item { background-color: #FFFFFF; height: 100%; position: relative; }
.include-item .post-title { font-weight: 700; font-size: 1em; transition: .2s; }
.include-item .post-title:hover { color: #FF576D; }
.include-item .post-author { font-size: 0.8em; background-color: #52C778; color: #FFFFFF; display: inline-block; }
.include-item .post-tags { font-size: 0.8em; background-color: #FF576D; color: #FFFFFF; display: inline-block; }
.include-item .new-post { position: absolute; top: -2.5rem; left: -2.5rem; font-size: 1.4em; transform: rotate(-15deg); font-weight: 500; }

#gizagiza a, #gizagiza a:after, #gizagiza a:before, #gizagiza a span { content: ""; width: 7.5rem; height: 7.5rem; background-color: #FF576D; position: absolute; top: 0px; }

#gizagiza, #gizagiza a, #gizagiza a:after, #gizagiza a:before { -webkit-transform: rotate(22.5deg); -moz-transform: rotate(22.5deg); }

#gizagiza a span { -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); text-align: center; z-index: 999; line-height: 7.5rem; color: #fff; }

#gizagiza { position: relative; width: 7.5rem; height: 7.5rem; background-color: #FF576D; color: #FFFFFF; margin: 2rem 0 0 2rem; }

.button { width: 40rem; font-weight: 500; height: 4rem; display: flex; align-items: center; justify-content: center; border-radius: 2rem; background-color: #000000; color: #FFFFFF; font-size: initial; border: none; transition: .2s; position: relative; }
.button:hover { background-color: #FF576D; }
.button a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; text-indent: -9999px; }

.lineclamp-3 { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }

.css-scroll { width: 100%; white-space: nowrap; overflow: auto; display: flex; }
.css-scroll > div { width: 80%; height: auto; }
.css-scroll p { font-size: 0.8em; }
@media (min-width: 992px) { .css-scroll { flex-direction: column; }
  .css-scroll > div { width: 100%; } }

@media (min-width: 992px) { .sticky-column { position: sticky; top: 0; } }

/***********************************************
								  ヘ ッ ダ ー
***********************************************/
.hero-area { width: 100%; height: auto; background-color: #245C4F; position: relative; z-index: 0; }
.hero-area .strings-graphics { z-index: 1; }
.hero-area .title-area { position: relative; z-index: 2; }

/***********************************************
								コ ン テ ン ツ
***********************************************/
.latest-post { background-color: #FFFFFF; border-top: solid 2px #000000; border-bottom: solid 2px #000000; position: relative; }
.latest-post::before { content: ""; width: 100%; border-top: solid 4px #000000; position: absolute; top: -9px; left: 0; }
.latest-post::after { content: ""; width: 100%; border-top: solid 4px #000000; position: absolute; bottom: -9px; left: 0; }

.newarrivals { background-color: #3CB371; position: relative; z-index: 0; }
.newarrivals .strings-graphics { z-index: 1; }
.newarrivals .inner-content { position: relative; z-index: 2; color: #FFFFFF; }
.newarrivals .rss { font-size: 0; margin: 0; padding: 0; }
.newarrivals .rss li { position: relative; font-size: initial; margin: 0; }
.newarrivals .rss li img { transition: .4s; }
.newarrivals .rss li a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; text-indent: -9999px; }
.newarrivals .rss li p { font-size: 1em; margin-top: 0.5rem; }
.newarrivals .rss li:hover img { opacity: 1; transform: scale(1.1); }
.newarrivals .button:hover { background-color: #245C4F; }

.videos { background-color: #b47237; color: #FFFFFF; }
.videos .youtube { position: relative; }
.videos .youtube .caption { position: absolute; bottom: 0; left: 0; width: 100%; background-color: rgba(0, 0, 0, 0.8); color: #FFFFFF; }
.videos .youtube .caption p { white-space: initial; }
.videos ul { width: 100%; white-space: nowrap; overflow: auto; display: flex; margin-left: -0.5rem; margin-right: -0.5rem; }
.videos ul li { width: 90%; height: auto; font-size: initial; flex-shrink: 0; }
.videos ul li p { font-size: 0.8em; -webkit-line-clamp: 2 !important; }
@media (min-width: 768px) { .videos ul { display: block; }
  .videos ul li { float: left; width: calc(100% / 3); font-size: initial; }
  .videos ul li p { font-size: initial; -webkit-line-clamp: 3 !important; }
  .videos ul li:first-child { width: calc((100% / 3) * 2); }
  .videos ul li:nth-child(n+2) .caption p { font-size: 0.8em; -webkit-line-clamp: 2 !important; }
  .videos ul li:nth-child(3) { margin-top: calc(0.5rem + 1px); }
  .videos ul li:nth-child(n+4) { margin-top: 1rem; } }

.topics { background-color: #DEDAD2; }

.shops { background-color: #2B3830; color: #FFFFFF; }
.shops .tbn-trim { background-color: #245C4F; }
.shops .shopinfo { border-left: solid 4px #52C778; }
.shops .shopinfo a, .shops .shopinfo a:visited { color: #FFFFFF; }
.shops .shopinfo a:hover { text-decoration: underline; }
.shops .shopinfo p:first-child { font-weight: 700; font-size: 1.1em; }
.shops .shopinfo p:nth-child(n+2) { font-size: 0.9em; }

/*********************************************
							フ ッ タ ー
*********************************************/
.footer-nav { background-color: #000; width: 100%; margin: 0; padding: 0; text-align: center; }

.footer-nav img { width: 60%; max-width: 300px; }

.fnav { display: flex; flex-wrap: wrap; justify-content: center; width: 100%; margin: auto; color: #FEFEFE; }

.fnav li { font-size: 1.2rem; line-height: 2.0rem; width: 100%; position: relative; padding: 0 0.5rem; box-sizing: border-box; text-align: left; border-bottom: solid 1px #333; transition: .4s; }

.fnav li:last-child { border-bottom: none; }

.fnav li:hover { background-color: #333; }

.fnav li a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; text-indent: -9999px; }

@media (min-width: 992px) { .fnav { justify-content: space-around; max-width: 1000px; }
  .fnav li { width: auto; text-align: center; border-bottom: none; border-bottom: solid 1px #000; }
  .fnav li:hover { background-color: #000; border-bottom: solid 1px #FEFEFE; } }
.copy { font-size: 1rem; text-align: center; padding: 0; line-height: 2.6rem; color: #FEFEFE; }

/***** Splide *****/
.splide__pagination { bottom: -3rem; transform: translateY(-50%); }


/***** 追加部分 *****/
.lead-text {
	/*font-family: 'Sawarabi', serif;*/
	font-family: Avenir, "Helvetica Neue", Helvetica, Roboto, Arial, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴPro W3", YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック体", Meiryo, "メイリオ", sans-serif;
	font-size: 4.2rem;
	font-weight: bold;
	color:#FFFFFF;
	font-display: swap;
	line-height: 1.4;
	text-align: center;
}
.date{
	font-family: Avenir, "Helvetica Neue", Helvetica, Roboto, Arial, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴPro W3", YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック体", Meiryo, "メイリオ", sans-serif;
	font-size: 6.4rem;
	font-weight: bold;
	font-display: swap;
	line-height: 1;
	text-align: left;
}
.year{
	font-size: 3.6rem!important;
}
.explanation{
	font-size: 2.6rem!important;
	line-height: 1.8;
	text-align: left;
}
.explanation2{
	font-size: 2.8rem!important;
	line-height: 1.6;
	text-align: left;
}
.hushtag{
	font-family: Avenir, "Helvetica Neue", Helvetica, Roboto, Arial, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴPro W3", YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック体", Meiryo, "メイリオ", sans-serif;
	font-size: 3.8rem!important;
	line-height: 1.4;
	text-align: left;
}
.sub-exp{
	font-size: 2.1rem!important;
	line-height: 1.2;
	font-weight: bold;
	color: #245c4f;
	text-align: left;
}
.sub-exp2{
	font-size: 2.6rem!important;
	line-height: 1.6;
	font-weight: bold;
	color: #245c4f;
	text-align: center;
}
.prize-title{
	font-size: 3.8rem;
	font-weight: bold;
	color:#245c4f;
	font-display: swap;
	line-height: 1.4;
	text-align: center;
}
.prize{
	font-family: Avenir, "Helvetica Neue", Helvetica, Roboto, Arial, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴPro W3", YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック体", Meiryo, "メイリオ", sans-serif;
	font-size: 1.8rem;
	font-weight: bold;
	font-display: swap;
	line-height: 1.8;
	text-align: center;
}
.present{
	font-size: 1.8rem;
	font-weight: bold;
	color:#FFFFFF;
	font-display: swap;
	line-height: 1.8;
	text-align: center;
	background-color: #245c4f;
	border-radius: 5px;
}
.entry-title{
	font-size: 3.2rem;
	font-weight: bold;
	color: #245c4f;
	font-display: swap;
	line-height: 1.8;
	text-align: left;
}
.model-title{
	font-size: 2.4rem;
	font-weight: bold;
	font-display: swap;
	line-height: 1.4;
	text-align: center;
}
.stocks{
	font-size: 1.2rem!important;
	line-height: 1.6;
	text-align: center;
}
.reserve-btn {
	max-width: 768px;
}
.top-page {
	font-size: 2.1rem!important;
}
a.yellow-link {
	color: #202020!important;
}
a.yellow-link:hover{
	color: #202020!important;
	text-decoration: underline!important;
}
.rounded-25{
	border-radius: 25px;
}
.store{
	font-size: 3.2rem!important;
	text-align: center;
	line-height: 1.6;
}
.movie-word{
	font-size: 1.6rem!important;
	line-height: 1.8;
}
.models{
	font-size: 1.6rem;
	text-align: center;
	line-height: 2.1;
	color:#FFFFFF;
}
/*youtube動画レスポンシブ対策 */
.youtube-container{
	max-width: 960px;
}
.movie-wrap{
	position: relative; padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/ height: 0; overflow: hidden;
}
.movie-wrap iframe{
	position: absolute; top: 0; left: 0; width: 100%; height: 100%;4
}
.dashed-border{
	border-top:  1px dashed #202020;
	border-bottom:  1px dashed #202020;
}

@media (max-width: 768px) {
.date{
	font-size: 3.6rem!important;
}
.lead-text {
	font-size: 3rem;
}
.prize-title{
	font-size: 2.8rem!important;
}
.explanation{
	font-size: 2.1rem!important;
}
.explanation2{
	font-size: 2.1rem!important;
}
.top-page {
	font-size: 1.4rem!important;
}
.sub-exp{
	font-size: 1.8rem!important;
	text-align: left;
}
.sub-exp2{
	font-size: 2.1rem!important;
	text-align: left;
}
.button { width: 30rem;
}
}
