@charset "UTF-8";
/* Scss Document */
/* Scss Document */
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@300;400;600&display=swap");
/*layout*/
.mt0 { margin-top: 0px !important; }

.mb0 { margin-bottom: 0px !important; }

.pt0 { padding-top: 0px !important; }

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

.pb0 { padding-bottom: 0px !important; }

.mt5 { margin-top: 5px !important; }

.mb5 { margin-bottom: 5px !important; }

.pt5 { padding-top: 5px !important; }

.pl5 { padding-left: 5px !important; }

.pb5 { padding-bottom: 5px !important; }

.mt10 { margin-top: 10px !important; }

.mb10 { margin-bottom: 10px !important; }

.pt10 { padding-top: 10px !important; }

.pl10 { padding-left: 10px !important; }

.pb10 { padding-bottom: 10px !important; }

.mt15 { margin-top: 15px !important; }

.mb15 { margin-bottom: 15px !important; }

.pt15 { padding-top: 15px !important; }

.pl15 { padding-left: 15px !important; }

.pb15 { padding-bottom: 15px !important; }

.mt20 { margin-top: 20px !important; }

.mb20 { margin-bottom: 20px !important; }

.pt20 { padding-top: 20px !important; }

.pl20 { padding-left: 20px !important; }

.pb20 { padding-bottom: 20px !important; }

.mt25 { margin-top: 25px !important; }

.mb25 { margin-bottom: 25px !important; }

.pt25 { padding-top: 25px !important; }

.pl25 { padding-left: 25px !important; }

.pb25 { padding-bottom: 25px !important; }

.mt30 { margin-top: 30px !important; }

.mb30 { margin-bottom: 30px !important; }

.pt30 { padding-top: 30px !important; }

.pl30 { padding-left: 30px !important; }

.pb30 { padding-bottom: 30px !important; }

.mt35 { margin-top: 35px !important; }

.mb35 { margin-bottom: 35px !important; }

.pt35 { padding-top: 35px !important; }

.pl35 { padding-left: 35px !important; }

.pb35 { padding-bottom: 35px !important; }

.mt40 { margin-top: 40px !important; }

.mb40 { margin-bottom: 40px !important; }

.pt40 { padding-top: 40px !important; }

.pl40 { padding-left: 40px !important; }

.pb40 { padding-bottom: 40px !important; }

.mt45 { margin-top: 45px !important; }

.mb45 { margin-bottom: 45px !important; }

.pt45 { padding-top: 45px !important; }

.pl45 { padding-left: 45px !important; }

.pb45 { padding-bottom: 45px !important; }

.mt50 { margin-top: 50px !important; }

.mb50 { margin-bottom: 50px !important; }

.pt50 { padding-top: 50px !important; }

.pl50 { padding-left: 50px !important; }

.pb50 { padding-bottom: 50px !important; }

.mt55 { margin-top: 55px !important; }

.mb55 { margin-bottom: 55px !important; }

.pt55 { padding-top: 55px !important; }

.pl55 { padding-left: 55px !important; }

.pb55 { padding-bottom: 55px !important; }

.mt60 { margin-top: 60px !important; }

.mb60 { margin-bottom: 60px !important; }

.pt60 { padding-top: 60px !important; }

.pl60 { padding-left: 60px !important; }

.pb60 { padding-bottom: 60px !important; }

.mt65 { margin-top: 65px !important; }

.mb65 { margin-bottom: 65px !important; }

.pt65 { padding-top: 65px !important; }

.pl65 { padding-left: 65px !important; }

.pb65 { padding-bottom: 65px !important; }

.mt70 { margin-top: 70px !important; }

.mb70 { margin-bottom: 70px !important; }

.pt70 { padding-top: 70px !important; }

.pl70 { padding-left: 70px !important; }

.pb70 { padding-bottom: 70px !important; }

.mt75 { margin-top: 75px !important; }

.mb75 { margin-bottom: 75px !important; }

.pt75 { padding-top: 75px !important; }

.pl75 { padding-left: 75px !important; }

.pb75 { padding-bottom: 75px !important; }

.mt80 { margin-top: 80px !important; }

.mb80 { margin-bottom: 80px !important; }

.pt80 { padding-top: 80px !important; }

.pl80 { padding-left: 80px !important; }

.pb80 { padding-bottom: 80px !important; }

.mt85 { margin-top: 85px !important; }

.mb85 { margin-bottom: 85px !important; }

.pt85 { padding-top: 85px !important; }

.pl85 { padding-left: 85px !important; }

.pb85 { padding-bottom: 85px !important; }

.mt90 { margin-top: 90px !important; }

.mb90 { margin-bottom: 90px !important; }

.pt90 { padding-top: 90px !important; }

.pl90 { padding-left: 90px !important; }

.pb90 { padding-bottom: 90px !important; }

.mt95 { margin-top: 95px !important; }

.mb95 { margin-bottom: 95px !important; }

.pt95 { padding-top: 95px !important; }

.pl95 { padding-left: 95px !important; }

.pb95 { padding-bottom: 95px !important; }

.mt100 { margin-top: 100px !important; }

.mb100 { margin-bottom: 100px !important; }

.pt100 { padding-top: 100px !important; }

.pl100 { padding-left: 100px !important; }

.pb100 { padding-bottom: 100px !important; }

/* リセット
========================================================= */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

body { line-height: 1; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

nav ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; text-decoration: none; }
a.notel { cursor: text; }

/* change colours to suit your needs */
ins { background-color: #ff9; color: #000; text-decoration: none; }

/* change colours to suit your needs */
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }

table { border-collapse: collapse; border-spacing: 0; }

/* change border colour to suit your needs */
hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }

input, select { vertical-align: middle; }

img, iframe { vertical-align: bottom; max-width: 100%; }

/* 基本設定
========================================================= */
html { scroll-behavior: smooth; }

body { font-family: "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "ヒラギノ角ゴシック", "ＭＳ Ｐゴシック", sans-serif; font-weight: 500; line-height: 2.26; color: #231815; font-size: 16px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; overflow-x: hidden;
background: #e6e6e6;
}
@media screen and (max-width: 767px) { body { font-size: 16px; } }

main:after { content: ''; display: block; clear: both; width: 100%; height: 1px; margin-top: -1px; }

* { box-sizing: border-box; }

h1, h2, h3, h4, h5, h6 { font-family: "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "ヒラギノ角ゴシック", "ＭＳ Ｐゴシック", sans-serif; font-weight: 400; color: #231815; line-height: 1.6; }

p { margin: 0; line-height: 2; }
p + p { margin-top: 2em; }

ul, dl, figure { margin: 0; padding: 0; }

li { list-style: none; }

a { color: #231815; transition: .4s; }
a:hover { color: #63443b; text-decoration: none; }
a:hover img { opacity: 1; }

em { font-style: normal; }

.chu { font-size: 88.8888888889%; }

table { border-collapse: collapse; }

::-moz-selection { color: #fff; background-color: #b18247; }

::selection { color: #fff; background-color: #b18247; }

/* 表示・非表示
----------------------------------------------- */
.hidden { display: none; }

@media screen and (max-width: 1024px) { .hidden-tab-wide { display: none !important; } }

@media screen and (max-width: 959px) { .hidden-tab { display: none !important; } }

@media screen and (max-width: 767px) { .hidden-sp { display: none !important; } }

@media screen and (max-width: 479px) { .hidden-ss { display: none !important; } }

@media screen and (min-width: 1025px) { .visible-tab-wide { display: none !important; } }

@media screen and (min-width: 960px) { .visible-tab { display: none !important; } }

@media screen and (min-width: 768px) { .visible-sp { display: none !important; } }

@media screen and (min-width: 480px) { .visible-ss { display: none !important; } }

/* 基本 body
========================================================= */
.com-wrapper-01 { padding-left: 4.5454545455%; padding-right: 4.5454545455%; }
@media screen and (max-width: 959px) { .com-wrapper-01 { padding-right: 0; padding-left: 0; } }

.com-wrapper-02 { padding-left: 4.5454545455%; padding-right: 4.5454545455%; margin-left: auto; margin-right: auto; }
@media screen and (max-width: 959px) { .com-wrapper-02 { padding-right: 16px; padding-left: 16px; } }

.com-container-01 { max-width: 1200px; box-sizing: content-box; margin-right: auto; margin-left: auto; padding-right: 20px; padding-left: 20px; }
@media (max-width: 959px) { .com-container-01 { padding-right: 16px; padding-left: 16px; } }

.com-container-02 { max-width: 1000px; box-sizing: content-box; margin-right: auto; margin-left: auto; padding-right: 20px; padding-left: 20px; }
@media (max-width: 959px) { .com-container-02 { padding-right: 16px; padding-left: 16px; } }

.com-container-03 { max-width: 1240px; margin-right: auto; margin-left: auto; padding-left: 20px; padding-right: 20px; }

.com-container-04 { max-width: 1500px; margin-right: auto; margin-left: auto; }
@media screen and (max-width: 767px) { .com-container-04 { padding-left: 20px; padding-right: 20px; } }

.com-container-05 { width: 100%; overflow: hidden; }

[class*="com-container-"] [class*="com-container-"] { padding-right: 0; padding-left: 0; }

@media screen and (max-width: 959px) { .sp_pd { padding-right: 16px; padding-left: 16px; } }

/* main_visual
========================================================= */
#main_visual_sub { position: relative; overflow: hidden; }
@media screen and (max-width: 959px) { #main_visual_sub { height: 500px; } }
#main_visual_sub .sns_icon { position: absolute; top: 135px; right: 2vw; display: flex; flex-direction: column; }
#main_visual_sub .sns_icon a { margin-bottom: 20px; }
#main_visual_sub .sns_icon a:last-child { margin-bottom: 0; }
@media screen and (max-width: 959px) { #main_visual_sub .sns_icon { display: none; } }
#main_visual_sub .float_banner { position: absolute; bottom: 40px; right: 2vw; display: flex; flex-direction: column; -webkit-animation: bnr 1s ease-in-out infinite alternate; }
@media screen and (max-width: 959px) { #main_visual_sub .float_banner { display: none; } }

@-webkit-keyframes bnr { 0% { -webkit-transform: translateY(-5px); }
  100% { -webkit-transform: translateY(0px); } }
/* キービジュアル
----------------------------------------------- */
@keyframes line { 0% { height: 0; bottom: 50px; }
  50% { height: 50px; bottom: 0; }
  100% { height: 0; bottom: 0; } }
.kv { background-color: #fff; }
.kv .inner { position: relative; height: 700px; }
@media screen and (max-width: 959px) { .kv .inner { height: 500px; } }
.kv .tit { box-sizing: border-box; position: absolute; z-index: 1; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; padding-right: 16px; padding-left: 16px; text-align: center; color: #fff; line-height: 1.2; }
.kv .tit .en { font-size: 60px; font-weight: 600px; font-family: "Oswald", sans-serif; letter-spacing: 5px; }
@media screen and (max-width: 959px) { .kv .tit .en { font-size: 46px; } }
.kv .tit .ja { font-size: 20px; }
@media screen and (max-width: 959px) { .kv .tit .ja { font-size: 16px; } }
.kv figure { height: 100%; position: relative; }
.kv figure:after { position: absolute; top: 0; left: 0; content: ''; display: block; background-color: #00000020; width: 100%; height: 100%; }
.kv figure img { z-index: 0; position: absolute; width: 100%; height: 100%; object-fit: cover; max-width: none; font-family: 'object-fit: cover'; }

.animate-zoom-out { transform: scale(1.2) !important; opacity: 0; transition: opacity 1s, transform 5s; }
.animate-zoom-out.inview { transform: scale(1) !important; opacity: 1; }

/* menu-button
========================================================= */
#menu-button { flex-shrink: 0; height: 60px; display: flex; flex-direction: column; justify-content: center; cursor: pointer; position: fixed; right: 20px; top: 0; z-index: 103; /*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/ /*&:before,&:after{
	@include content;
	width: 50px;
	height: 2px;
	background-color: #000;
	//transform-origin: center center;
	transition: .5s;
}
&:after{
	margin-top: 8px;
}
body.is-menu-open &{
	&:before{
		transform: rotate(25deg);
	}
	&:after{
		margin-top: -2px;
		transform: rotate(-25deg);
	}
}
body.is-menu-open:not(.is-touchdevice) &{
	right: calc((70/2000*100%) + 16px);
}*/ }
#menu-button .openbtn { position: relative; /*ボタン内側の基点となるためrelativeを指定*/ width: 60px; height: 60px; /*ボタン内側*/ /*activeクラスが付与されると線が回転して×に*/ }
#menu-button .openbtn span { display: inline-block; transition: all .4s; /*アニメーションの設定*/ position: absolute; left: 0px; height: 3px; background: #231815; width: 60px; }
#menu-button .openbtn span:nth-of-type(1) { top: 24px; }
#menu-button .openbtn span:nth-of-type(2) { top: 38px; }
#menu-button .openbtn span:nth-of-type(3) { top: 52px; }
#menu-button .openbtn.active span:nth-of-type(1) { top: 40px; right: 20px; transform: translateY(6px) rotate(-45deg); width: 60px; }
#menu-button .openbtn.active span:nth-of-type(2) { opacity: 0; /*真ん中の線は透過*/ }
#menu-button .openbtn.active span:nth-of-type(3) { top: 52px; right: 20px; transform: translateY(-6px) rotate(45deg); width: 60px; }

/* header
========================================================= */
#header { position: fixed; top: 0; left: 0; z-index: 101; width: 100%; height: 80px; 
    background-color: rgba(000, 000, 000, 0.1); }
@media screen and (max-width: 959px) { #header { height: 80px; } }

.header-menu { display: flex; align-items: center; justify-content: space-between; padding: 0 calc(40/2000*100%) 0 2%; height: 100%; }
@media screen and (max-width: 959px) { .header-menu { padding-right: 16px; padding-left: 16px; } }
.header-menu > .logo { height: 100%; margin-right: 20px; display: flex; justify-content: center; align-items: center; }
@media screen and (max-width: 1200px) { .header-menu > .logo { margin-right: 1.6666666667%; } }
@media screen and (max-width: 959px) { .header-menu > .logo img { max-height: 80px; } }

#gnav { width: 100%; }
#gnav ul { display: flex; justify-content: flex-end; align-items: center; line-height: 1; }
#gnav ul li { margin-right: 2.5%; }
#gnav ul li:last-child { margin-right: 0; }
@media screen and (max-width: 959px) { #gnav ul li { margin-bottom: 40px; } }
#gnav a { font-size: 15px; display: flex; justify-content: flex-start; align-items: center; flex-direction: column; text-align: center;color: #fff; }
@media screen and (max-width: 959px) { #gnav a { font-size: 22px; color: #fff;} }
@media screen and (min-width: 960px) { #gnav a .contact { border: 1px solid #fff; padding: 5px 10px; border-radius: 10px; transition: 0.3s; font-size: 16px; line-height: 1.2; }
  #gnav a .contact:hover { transition: 0.5s; border-radius: 0; background-color: #231815; color: #fff; } }
#gnav a .hidden { display: block; }
@media (min-width: 768px) and (max-width: 959px) { #gnav a .hidden { display: none; } }
@media screen and (max-width: 959px) { #gnav a .contact { background-color: #231815; color: #fff; max-width: 560px; min-width: 300px; padding: 15px; border-radius: 10px; line-height: 1.2; font-size: 20px; } }
@media screen and (max-width: 959px) { #gnav { visibility: hidden; opacity: 0; transition: opacity .5s; }
  body.is-menu-open #gnav { width: 100%; height: 100vh; background-color: #fff; overflow-y: scroll; position: fixed; padding: 80px 16px 150px; top: 0; left: 0; visibility: visible; opacity: 1; transition: opacity 0; }
  #gnav .logo { display: none; margin-bottom: 8.3420229406vw; }
  body.is-menu-open #gnav .logo { display: block; }
  #gnav .text { text-align: center; font-size: 20px; font-weight: 600; margin-bottom: 20px; } }
@media screen and (max-width: 959px) and (max-width: 479px) { #gnav .text { margin-bottom: 6.2630480167vw; } }
@media screen and (max-width: 959px) { #gnav ul { display: none; }
  body.is-menu-open #gnav ul { display: block; }
  #gnav ul li { margin-right: 0; }
  #gnav ul#sns_icon_sp { width: 250px; margin-left: auto; margin-right: auto; overflow: hidden; display: flex; justify-content: center; margin-top: 50px; } }
@media screen and (max-width: 959px) and (max-width: 479px) { #gnav ul#sns_icon_sp { margin-top: 12.5260960334vw; } }
@media screen and (max-width: 959px) { #gnav ul#sns_icon_sp li { float: left; margin-bottom: 0; }
  #gnav ul#sns_icon_sp li:first-child { margin-left: 0; }
  #gnav ul#h_appli { display: flex; justify-content: center; }
  #gnav ul#h_appli li { margin-bottom: 0; margin-left: 7.299270073vw; }
  #gnav ul#h_appli li:first-child { margin-left: 0; }
  #gnav ul#h_appli li a { transition: 0s; }
  #gnav ul#h_appli li a img { transition: 0s; }
  #gnav .appli_dl { margin-top: 50px; } }
@media screen and (max-width: 959px) and (max-width: 479px) { #gnav .appli_dl { margin-top: 12.5260960334vw; } }

/* ボタン
========================================================= */
.com-btn-01 { display: inline-flex; align-items: center; text-align: center; color: #b18247; transition: .5s; line-height: 1; }
@media screen and (max-width: 768px) { .com-btn-01 { align-self: center; } }
.com-btn-01:after { content: ''; display: block; background: #b18247 url("../images/common/button_arrow.png") no-repeat center center/16px; width: 25px; height: 25px; border-radius: 100%; transition: .5s; margin-right: auto; margin-left: 10px; }
.com-btn-01:hover { color: #231815; }
.com-btn-01:hover:after { background-color: #231815; }

.btn01 { max-width: 300px; height: 50px; background-color: #231815; display: flex; justify-content: center; align-items: center; margin-left: auto; margin-right: auto; color: #fff; font-size: 20px; position: relative; }
@media screen and (max-width: 768px) { .btn01 { align-self: center; } }
.btn01:after { content: ''; display: block; background: url("../images/common/button_arrow.png") no-repeat; width: 12px; height: 21px; transition: .5s; position: absolute; top: 50%; right: 15px; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); }
.btn01:hover { background-color: #fff; color: #846e69; border: 1px solid #846e69; border-radius: 30px; }
.btn01:hover:after { content: ''; display: block; background: url("../images/common/button_arrow_hover.png") no-repeat; }

/* plink
========================================================= */
.p_link { max-width: 1240px; margin-left: auto; margin-right: auto; padding-left: 20px; padding-right: 20px; padding-bottom: 30px; display: flex; justify-content: center; }
@media screen and (max-width: 959px) { .p_link { flex-wrap: wrap; } }
@media screen and (max-width: 767px) { .p_link { justify-content: space-around; } }
.p_link li { width: 25%; text-align: center; font-size: 20px; line-height: 1.4; position: relative; }
@media screen and (max-width: 959px) { .p_link li { width: calc(50% - 100/959*100vw); text-align: center; margin-bottom: 50px; }
  .p_link li:nth-child(2n+1):nth-last-child(-n+2), .p_link li:nth-child(2n+1):nth-last-child(-n+2) ~ li { margin-bottom: 0; } }
@media screen and (max-width: 767px) { .p_link li { font-size: 18px; } }
@media screen and (max-width: 479px) { .p_link li { font-size: 16px; } }
.p_link li a { padding-bottom: 35px; }
.p_link li a:after { content: ''; display: block; background: url("../images/common/button_arrow_plink.png") no-repeat; width: 24px; height: 24px; position: absolute; bottom: -30px; left: 0; right: 0; margin: 0 auto; transition: 0.3s; }
.p_link li a:hover:after { bottom: -40px; }

/* footer
========================================================= */
#footer { position: relative; margin-top: 0px; }
@media screen and (max-width: 959px) { #footer { margin-top: 20.8550573514vw; } }
#footer .footer-sitemap { border-top: 1px solid #231815; padding-top: 90px; padding-bottom: 60px; padding-left: 4vw; padding-right: 4vw; display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; }
@media screen and (max-width: 959px) { #footer .footer-sitemap { text-align: center; padding-top: 60px; padding-bottom: 40px; padding-right: 16px; padding-left: 16px; } }
@media screen and (min-width: 960px) { #footer .footer-sitemap .container-01 { padding-right: 2.5vw; } }
@media (min-width: 960px) and (max-width: 983px) { #footer .footer-sitemap .container-01 { width: 33.33333%; } }
#footer .footer-sitemap .container-01 h2 { margin-bottom: 40px; }
@media screen and (max-width: 1419px) { #footer .footer-sitemap .container-01 { flex-shrink: 0; } }
@media screen and (max-width: 959px) { #footer .footer-sitemap .container-01 { width: 100%; display: flex; flex-direction: column; align-items: center; }
  #footer .footer-sitemap .container-01 h2 { max-width: 41.7101147028vw; }
  #footer .footer-sitemap .container-01 p { text-align: left; /*@media screen and (max-width: 479px) {
	text-align: center;
}*/ } }
@media screen and (max-width: 767px) { #footer .footer-sitemap .container-01 h2 { max-width: 45.6323337679vw; } }
@media screen and (max-width: 479px) { #footer .footer-sitemap .container-01 h2 { max-width: 54.2797494781vw; } }
@media screen and (min-width: 1690px) { #footer .footer-sitemap .container-01 br.for_small { display: none; } }
@media screen and (min-width: 960px) { #footer .footer-main-nav { padding-right: 2.5vw; } }
@media screen and (max-width: 959px) { #footer .footer-main-nav { width: 48%; margin-top: 6.2565172054vw; text-align: left; display: flex; flex-direction: column; align-items: center; /*@media screen and (max-width: 479px) {
	width: 100%;
	text-align: center;
}*/ }
  #footer .footer-main-nav:first-child { margin-top: 0; } }
@media (min-width: 960px) and (max-width: 983px) { #footer .footer-main-nav { width: 33.33333%; }
  #footer .footer-main-nav:last-child { padding-left: 0; } }
#footer .footer-main-nav .text p { font-size: 20px; font-weight: bold; line-height: 1; margin-bottom: 40px; }
@media screen and (max-width: 959px) { #footer .footer-main-nav .text p { margin-bottom: 20px; } }
@media screen and (max-width: 479px) { #footer .footer-main-nav .text p { font-size: max(16px, 20 / 479 * 100vw); } }
@media (min-width: 366px) and (max-width: 959px) { #footer .footer-main-nav .text .ul_mt { margin-top: 35px; } }
@media screen and (max-width: 365px) { #footer .footer-main-nav .text .ul_mt { margin-top: 0; } }
@media screen and (min-width: 959px) { #footer .footer-main-nav .text ul { line-height: 1; } }
@media screen and (max-width: 959px) { #footer .footer-main-nav .text ul { line-height: 1.4; } }
@media screen and (min-width: 959px) { #footer .footer-main-nav .text ul li { margin-bottom: 40px; }
  #footer .footer-main-nav .text ul li:last-child { margin-bottom: 0; } }
@media screen and (max-width: 959px) { #footer .footer-main-nav .text ul li { margin-bottom: 20px; }
  #footer .footer-main-nav .text ul li:last-child { margin-bottom: 0; } }
@media screen and (max-width: 959px) { #footer .footer-sub-nav { margin-top: 6.2565172054vw; width: 100%; display: flex; flex-direction: column; align-items: center; } }
#footer .footer-sub-nav p { font-size: 20px; font-weight: bold; line-height: 1; margin-bottom: 40px; }
@media screen and (max-width: 959px) { #footer .footer-sub-nav p { margin-bottom: 20px; } }
@media screen and (max-width: 479px) { #footer .footer-sub-nav p { font-size: 20px; } }
#footer .footer-sub-nav .appli .app { display: flex; }
#footer .footer-sub-nav .appli .app .apple, #footer .footer-sub-nav .appli .app .google { display: flex; align-items: center; }
#footer .footer-sub-nav .appli .app .apple img, #footer .footer-sub-nav .appli .app .google img { margin-left: 20px; }
#footer .footer-sub-nav .appli .app .apple img:first-child, #footer .footer-sub-nav .appli .app .google img:first-child { margin-left: 0; }
#footer .footer-sub-nav .appli .app .google { margin-left: 40px; }
@media screen and (max-width: 959px) { #footer .footer-sub-nav .appli .app .google { margin-left: 4.1710114703vw; } }
#footer .footer-sub-nav .f_sns { margin-top: 60px; }
@media screen and (max-width: 959px) { #footer .footer-sub-nav .f_sns { margin-top: 6.2565172054vw; } }
#footer .footer-sub-nav .f_sns a { margin-left: 40px; }
#footer .footer-sub-nav .f_sns a:first-child { margin-left: 0; }
@media screen and (max-width: 959px) { #footer .footer-sub-nav .f_sns a { margin-left: 4.1710114703vw; } }

#page-top { position: absolute; top: 0; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); }

/*#page-top { position: fixed; right: 5px; bottom: 20px; height: 50px; text-decoration: none; font-weight: bold; transform: rotate(90deg); font-size: 90%; line-height: 1.5rem; color: $color-01; padding: 0 0 0 35px; border-top: solid 1px;
	z-index: 10;
	transition: .5s;
	
	&:before {
		content: "";
		display: block;
		position: absolute;
		top: -1px;
		left: 0px;
		width: 15px;
		border-top: solid 1px;
		transform: rotate(35deg);
		transform-origin: left top;
	}
	
	&:hover{
		transform: rotate(90deg) translateX(-10px);
	}
}*/
footer .copyright { text-align: center; font-size: 14px; background-color: #231815; color: #fff; }
@media screen and (min-width: 960px) { footer .copyright { padding-left: 4.5454545455%; padding-right: 4.5454545455%; } }
@media screen and (max-width: 959px) { footer .copyright { font-size: 13px; } }

/* パーツ
========================================================= */
/* 共通パーツ
----------------------------------------------- */
/*.parallax_bg_logo{
	height: 395/2000*100vw;
	overflow-x: hidden;
	overflow-y: auto;
	background: url("../images/common/logo_bg.png") no-repeat bottom right;
	background-attachment: fixed;
	@media screen and (max-width: 959px) {
		height: 395/959*100vw;
		background-size: 70%;
	}
	@media screen and (max-width: 767px) {
		height: 395/767*100vw;
		background-size: 100%;
	}
	@media screen and (max-width: 479px) {
		height: 200/479*100vw;
		background-size: 100%;
	}
	&.long{
		height: 100%;
	}
}*/
.parallax_bg_logo { width: 100%; height: 19.75vw; overflow: hidden; position: relative; }
@media screen and (max-width: 959px) { .parallax_bg_logo { height: 41.188738269vw; } }
@media screen and (max-width: 767px) { .parallax_bg_logo { height: 51.4993481095vw; } }
@media screen and (max-width: 479px) { .parallax_bg_logo { height: 41.7536534447vw; } }
.parallax_bg_logo .bg-img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; clip-path: inset(0); z-index: -1; }
.parallax_bg_logo .bg-img:before { content: ''; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: url("../images/common/logo_bg.png") no-repeat bottom right; }
@media screen and (max-width: 959px) { .parallax_bg_logo .bg-img:before { background-size: 70%; } }
@media screen and (max-width: 767px) { .parallax_bg_logo .bg-img:before { background-size: 100%; } }
.parallax_bg_logo.long { height: 100%; }

/* リンク・ボタン
-------------------------------------- */
a img { transition: .4s; opacity: 1; }
a img:hover { opacity: .8; }

/* セクション間の隙間
----------------------------------------------- */
.com-mt-01 { margin-top: 150px !important; }
@media screen and (max-width: 959px) { .com-mt-01 { margin-top: 100px !important; } }

.com-mt-02 { margin-top: 100px !important; }
@media screen and (max-width: 959px) { .com-mt-02 { margin-top: 70px !important; } }

.com-mt-03 { margin-top: 70px !important; }
@media screen and (max-width: 959px) { .com-mt-03 { margin-top: 50px !important; } }

.com-mt-04 { margin-top: 50px !important; }
@media screen and (max-width: 959px) { .com-mt-04 { margin-top: 40px !important; } }

.com-mt-05 { margin-top: 20px !important; }
@media screen and (max-width: 959px) { .com-mt-05 { margin-top: 15px !important; } }

.com-mt-06 { margin-top: 30px !important; }
@media screen and (max-width: 959px) { .com-mt-06 { margin-top: 20px !important; } }

.com-mt-07 { margin-top: 15px !important; }

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

.com-mb-02 { margin-bottom: 100px !important; }
@media screen and (max-width: 959px) { .com-mb-02 { margin-bottom: 70px !important; } }

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

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

.lh-crop::before { display: block; width: 0; height: 0; margin-top: calc((1 - 2.26) * .5em); content: ""; }
.lh-crop::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 2.26) * .5em); content: ""; }

/* アニメーション
----------------------------------------------- */
[class*="animate-"] { opacity: 0; }

@media screen and (min-width: 960px) { .delay-01 { transition-delay: 0.3s !important; } }

@media screen and (min-width: 960px) { .delay-02 { transition-delay: 0.6s !important; } }

@media screen and (min-width: 960px) { .delay-03 { transition-delay: 0.9s !important; } }

@media screen and (min-width: 960px) { .delay-04 { transition-delay: 1.2s !important; } }

@media screen and (min-width: 960px) { .delay-05 { transition-delay: 1.5s !important; } }

.animate-fadein { transition: 1s ease opacity; }
.animate-fadein.inview { opacity: 1; }

.animate-slide { transition: 1s ease; transition-delay: .34s; transform: scale(0.9) translateY(50px); }
.animate-slide.inview { opacity: 1; transform: scale(1) translateY(0); }

@keyframes fluffy {   /*
	0% {
		transform: rotateZ(5deg) scale(0.9);
	}
	25% {
		transform: rotateZ(-6deg) scale(1);
	}
	50% {
		transform: rotateZ(5deg) scale(0.9);
	}
	75% {
		transform: rotateZ(-4deg) scale(.95);
	}
	100% {
		transform: rotateZ(5deg) scale(0.9);
	}*/
  0% { transform: rotateZ(5deg) scale(0.9); }
  25% { transform: rotateZ(0) scale(1); }
  50% { transform: rotateZ(-5deg) scale(0.9); }
  75% { transform: rotateZ(0) scale(1); }
  100% { transform: rotateZ(5deg) scale(0.9); } }
.animate-fluffy { transition: 1s ease; transition-delay: 1s; }
.animate-fluffy.inview { opacity: 1; animation: fluffy 5s infinite; }

/* テンプレート
========================================================= */
/* セクション
----------------------------------------------- */
/*基本180
ページ内リンク↓150
項目内連続コンテンツ100
最上部200（サブページはパンくずで200あくかも）*/
/*memo*/
.com-section-01 { padding-top: 100px; padding-bottom: 100px; }
@media screen and (max-width: 767px) { .com-section-01 { padding-top: 50px; padding-bottom: 50px; } }

.com-section-02 { padding-top: 20px; padding-bottom: 20px; }
@media screen and (max-width: 767px) { .com-section-02 { padding-top: 10px; padding-bottom: 10px; } }

.com-section-03 { padding-bottom: 90px; }
@media screen and (max-width: 767px) { .com-section-03 { padding-bottom: 50px; } }

.com-section-04 { padding-top: 100px; padding-bottom: 50px; }
@media screen and (max-width: 767px) { .com-section-04 { padding-top: 50px; padding-bottom: 50px; } }

.com-section-05 { padding-top: 60px; padding-bottom: 90px; }
@media screen and (max-width: 767px) { .com-section-05 { padding-top: 30px; padding-bottom: 50px; } }

/* 見出し
-------------------------------------- */
.com-tit-01 { text-align: center; margin-bottom: 70px; }
@media screen and (max-width: 960px) { .com-tit-01 { margin-bottom: 30px; } }
.com-tit-01:before { content: ''; display: block; background: url("../images/common/icon_mark.png") no-repeat center center/contain; width: 100px; height: 79px; margin-left: auto; margin-right: auto; margin-bottom: 45px; }
@media screen and (max-width: 960px) { .com-tit-01:before { width: 80px; height: 63px; margin-bottom: 20px; } }
.com-tit-01 span { display: block; }
.com-tit-01 span.en { font-size: 70px; font-family: "Oswald", sans-serif; line-height: 1; color: #b18247; }
.com-tit-01 span.en::before { display: block; width: 0; height: 0; margin-top: calc((1 - 1) * .5em); content: ""; }
.com-tit-01 span.en::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 1) * .5em); content: ""; }
@media screen and (max-width: 960px) { .com-tit-01 span.en { font-size: 35px; } }
.com-tit-01 span.jp { margin-top: 30px; font-size: 22px; line-height: 1.3333333333; }
.com-tit-01 span.jp::before { display: block; width: 0; height: 0; margin-top: calc((1 - 1.3333333333) * .5em); content: ""; }
.com-tit-01 span.jp::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 1.3333333333) * .5em); content: ""; }
@media screen and (max-width: 960px) { .com-tit-01 span.jp { margin-top: 15px; font-size: 18px; } }

.com-tit-02 { font-size: 28px; line-height: 2; margin-bottom: 30px; }
.com-tit-02::before { display: block; width: 0; height: 0; margin-top: calc((1 - 2) * .5em); content: ""; }
.com-tit-02::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 2) * .5em); content: ""; }
@media screen and (max-width: 767px) { .com-tit-02 { font-size: 20px; line-height: 1.6; }
  .com-tit-02::before { display: block; width: 0; height: 0; margin-top: calc((1 - 1.6) * .5em); content: ""; }
  .com-tit-02::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 1.6) * .5em); content: ""; } }

/* グリッド
----------------------------------------------- */
.com-grid-01 { display: flex; flex-wrap: wrap; margin-left: -50px; margin-top: -50px; }
.com-grid-01 > * { width: 100%; box-sizing: border-box; }
@media screen and (max-width: 959px) { .com-grid-01 { margin-left: -20px; } }
.com-grid-01 > * { padding-left: 50px; margin-top: 50px; }
@media screen and (max-width: 959px) { .com-grid-01 > * { padding-left: 20px; } }
.com-grid-01.col-2 > * { width: 50%; }
@media screen and (max-width: 767px) { .com-grid-01.col-2 > * { width: 100%; } }
.com-grid-01.col-3 > * { width: calc(100% / 3.001); }
@media screen and (max-width: 959px) { .com-grid-01.col-3 > * { width: 50%; } }
@media screen and (max-width: 479px) { .com-grid-01.col-3 > * { width: 100%; } }
.com-grid-01.col-4 > * { width: 25%; }
@media screen and (max-width: 959px) { .com-grid-01.col-4 > * { width: 50%; } }
@media (min-width: 1200px) { .com-grid-01.margin-l { margin-left: -70px; } }
@media (min-width: 1200px) { .com-grid-01.margin-l > * { padding-left: 70px; } }

/* ローカルナビ
----------------------------------------------- */
.com-local-nav-01 { display: flex; flex-wrap: wrap; margin-top: -15px; }
.com-local-nav-01 > * { width: 100%; box-sizing: border-box; }
.com-local-nav-01 li { margin-top: 15px; border-left: #bebebe 1px solid; }
.com-local-nav-01 li:last-child { border-right: #bebebe 1px solid; }
@media screen and (max-width: 767px) { .com-local-nav-01 li { width: 100%; } }
.com-local-nav-01 a { position: relative; display: flex; align-items: center; justify-content: center; height: 60px; box-sizing: border-box; padding: 0 10px 10px; line-height: 1.2; letter-spacing: .1em; font-weight: 400; }
@media screen and (max-width: 767px) { .com-local-nav-01 a { height: 35px; padding-bottom: 13px; } }
.com-local-nav-01 a span { transition: .5s; }
body:not(.is-touchdevice) .com-local-nav-01 a:hover span, .com-local-nav-01 a.hover span, .com-local-nav-01 a.active span { transform: translateY(10px); }
@media screen and (min-width: 768px) { .com-local-nav-01.col-5 li { width: 20%; } }
@media screen and (min-width: 768px) { .com-local-nav-01.col-4 li { width: 25%; } }
@media screen and (min-width: 768px) { .com-local-nav-01.col-3 li { width: calc(100% / 3.001); } }
@media screen and (min-width: 768px) { .com-local-nav-01.col-2 li { width: 50%; } }
@media screen and (max-width: 767px) { .com-local-nav-01.col-2-sp li { width: 50%; } }
@media screen and (max-width: 767px) { .com-local-nav-01.col-2-sp li:nth-child(2n) { border-right: #bebebe 1px solid; } }
@media screen and (max-width: 767px) { .com-local-nav-01:not(.col-2-sp) li { border-right: #bebebe 1px solid; } }

/* slick
-------------------------------------- */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }

.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.slick-track { position: relative; left: 0; top: 0; display: block; margin-left: auto; margin-right: auto; }
.slick-track:before, .slick-track:after { content: ""; display: table; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }

.slick-slide { float: left; height: 100%; min-height: 1px; outline: none; display: none; }
[dir="rtl"] .slick-slide { float: right; }
.slick-slide a { outline: none; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

.slick-arrow.slick-hidden { display: none; }

.slick-arrow { z-index: 5; position: absolute; top: 50%; transform: translateY(-50%); width: 31px; height: 60px; padding: 0; text-indent: -9999px; border: none; background-color: transparent; background-image: url(../images/common/slider_arrow_w.png); background-repeat: no-repeat; background-position: center; background-size: auto; outline: none; cursor: pointer; transition: .4s; overflow: hidden; }
@media screen and (max-width: 767px) { .slick-arrow { width: 15.5px; height: 30px; background-size: 15.5px auto; } }
.slick-arrow.slick-next { right: 20px; }
@media screen and (max-width: 767px) { .slick-arrow.slick-next { right: 10px; } }
.slick-arrow.slick-prev { left: 20px; transform: translateY(-50%) rotate(180deg); }
@media screen and (max-width: 767px) { .slick-arrow.slick-prev { left: 10px; } }
.slick-arrow:hover { opacity: .7; }
.arrow-b .slick-arrow { background-image: url(../images/common/slider_arrow_b.png); }

.slick-dots { margin-top: 35px; display: flex; justify-content: center; width: 100%; }
.slick-dots li { width: 50px; height: 2px; margin: 0 5px; border: none; border-radius: none; appearance: none; -webkit-appearance: none; font-size: 0; line-height: 1; outline: none; background: #5f5341; transition: .4s; /*追加*/ position: relative; cursor: pointer; }
.slick-dots li.slick-active, .slick-dots li:hover, .slick-dots li.hover { background: #b18247; }
@media screen and (max-width: 767px) { .slick-dots li { width: 25px; height: 1px; margin: 0 3px; } }
.slick-dots li:before { content: ''; display: block; position: absolute; width: 100%; height: 20px; top: -10px; left: 0; }
.slick-dots button { display: none; }

/* スライダー
-------------------------------------- */
@media screen and (max-width: 1330px) { .com-slider-box-01 { overflow: hidden; } }
.com-slider-box-01 .slick-dots { position: absolute; right: 0; bottom: 24px; left: 0; z-index: 1; }
@media screen and (max-width: 767px) { .com-slider-box-01 .slick-dots { bottom: auto; position: relative; margin-top: 16px; } }
@media screen and (max-width: 767px) { .com-slider-box-01 .slick-dots li.slick-active, .com-slider-box-01 .slick-dots li:hover, .com-slider-box-01 .slick-dots li.hover { background: #000; } }
.com-slider-box-01 img { width: 100%; }
.com-slider-box-01 .slick-arrow { z-index: 5; position: absolute; top: auto; bottom: 0; transform: translateY(0); width: 30px; height: 30px; background-image: none; background-color: #fff; display: flex; align-items: center; justify-content: center; font-size: 0; }
.com-slider-box-01 .slick-arrow:before { content: ''; display: block; width: 0; height: 0; border-style: solid; border-width: 3.5px 0 3.5px 7px; border-color: transparent transparent transparent #b18247; }
.com-slider-box-01 .slick-arrow.slick-next { right: auto; left: calc(50% + 570px); }
@media screen and (max-width: 1330px) { .com-slider-box-01 .slick-arrow.slick-next { right: 0; left: auto; } }
.com-slider-box-01 .slick-arrow.slick-prev { right: auto; left: calc(50% + 540px); }
.com-slider-box-01 .slick-arrow.slick-prev:before { transform: scale(-1, 1); }
@media screen and (max-width: 1330px) { .com-slider-box-01 .slick-arrow.slick-prev { right: 30px; left: auto; } }

.com-slider-box-02 { max-width: 1100px; margin-right: auto; margin-left: auto; padding-bottom: 55px; }
@media screen and (max-width: 1330px) { .com-slider-box-02 { overflow: hidden; } }
@media screen and (max-width: 767px) { .com-slider-box-02 { padding-bottom: 20px; } }
.com-slider-box-02 .slick-dots { position: absolute; right: 0; bottom: -55px; left: 0; z-index: 1; }
@media screen and (min-width: 768px) { .com-slider-box-02 .slick-dots { justify-content: flex-start; } }
@media screen and (max-width: 767px) { .com-slider-box-02 .slick-dots { bottom: -20px; } }
.com-slider-box-02 .slick-dots li { margin: 0 10px 0 0; }
@media screen and (max-width: 767px) { .com-slider-box-02 .slick-dots li { margin-right: 6px; } }
.com-slider-box-02 .slick-dots li.slick-active, .com-slider-box-02 .slick-dots li:hover, .com-slider-box-02 .slick-dots li.hover { background: #000; }
.com-slider-box-02 .slick-arrow { z-index: 5; position: absolute; top: 50%; transform: translateY(-50%); width: 51px; height: 74px; }
@media screen and (max-width: 1330px) { .com-slider-box-02 .slick-arrow { background-image: url(../images/common/slider_arrow_shadow.png); } }
@media screen and (max-width: 767px) { .com-slider-box-02 .slick-arrow { width: 25.5px; height: 37px; background-size: 25.5px auto; } }
.com-slider-box-02 .slick-arrow.slick-next { right: auto; left: calc(50% + 610px); }
@media screen and (max-width: 1330px) { .com-slider-box-02 .slick-arrow.slick-next { left: auto; right: 10px; } }
.com-slider-box-02 .slick-arrow.slick-prev { left: auto; right: calc(50% + 610px); transform: translateY(-50%) rotate(180deg); }
@media screen and (max-width: 1330px) { .com-slider-box-02 .slick-arrow.slick-prev { right: auto; left: 10px; } }

.com-slider-box-03 { display: flex; flex-wrap: wrap; width: 123.5%; box-sizing: content-box; }
.com-slider-box-03 * { box-sizing: content-box; }
.com-slider-box-03::after { display: table; height: 0px; clear: both; font-size: 0; line-height: 1; }
@media screen and (max-width: 959px) { .com-slider-box-03 { width: 100%; } }
.com-slider-box-03.reverse { flex-direction: row-reverse; margin-right: 0; margin-left: auto; float: right; }
.com-slider-box-03 .col-01 { width: 42.5101214575%; padding-bottom: 47px; }
@media screen and (max-width: 959px) { .com-slider-box-03 .col-01 { width: 100%; padding-bottom: 30px; } }
.com-slider-box-03 .col-02 { flex: 1; box-sizing: border-box; padding: 30px 60px 0; }
@media screen and (min-width: 960px) { .com-slider-box-03 .col-02 { display: flex; flex-direction: column; justify-content: center; } }
@media screen and (max-width: 959px) { .com-slider-box-03 .col-02 { width: 100%; padding: 0 16px 0; }
  .com-slider-box-03 .col-02 .upper { padding: 0 30px; } }
.com-slider-box-03 .col-03 { width: 31.1740890688%; align-self: flex-end; }
.com-slider-box-03 .slider-01 { overflow: hidden; }
.com-slider-box-03 .slider-01 figure { overflow: hidden; }
.com-slider-box-03 .slider-01 img { object-fit: cover; width: 100%; height: 100%; transition: 5s; transform: scale(1.2); }
.com-slider-box-03 .slider-01 .slick-current img { transform: scale(1); }
.com-slider-box-03 .slider-01 .slick-dots { position: absolute; bottom: 24px; }
@media screen and (max-width: 767px) { .com-slider-box-03 .slider-01 .slick-dots li.slick-active, .com-slider-box-03 .slider-01 .slick-dots li:hover, .com-slider-box-03 .slider-01 .slick-dots li.hover { background: #000; } }
.com-slider-box-03 .slider-02 .animate-zoom-out { transform: scale(1) !important; opacity: 1 !important; }
.com-slider-box-03 .slick-arrow { width: 40px; height: 40px; top: auto; bottom: 10px; background-image: url(../images/common/slider_arrow_square.png); }
@media screen and (max-width: 959px) { .com-slider-box-03 .slick-arrow { z-index: 5; position: absolute; top: 50%; bottom: auto; transform: translateY(-50%); width: 51px; height: 74px; background-image: url(../images/common/slider_arrow_shadow.png); } }
@media screen and (max-width: 767px) { .com-slider-box-03 .slick-arrow { width: 25.5px; height: 37px; background-size: 25.5px auto; } }
.com-slider-box-03 .slick-arrow.slick-next { right: 0; left: auto; transform: none; }
@media screen and (max-width: 959px) { .com-slider-box-03 .slick-arrow.slick-next { right: 10px; } }
.com-slider-box-03 .slick-arrow.slick-prev { right: 41px; left: auto; transform: rotate(180deg); }
@media screen and (max-width: 959px) { .com-slider-box-03 .slick-arrow.slick-prev { right: auto; left: 10px; } }
.com-slider-box-03.reverse .slick-arrow.slick-next { right: 0; left: 41px; }
@media screen and (max-width: 959px) { .com-slider-box-03.reverse .slick-arrow.slick-next { right: 10px; left: auto; } }
.com-slider-box-03.reverse .slick-arrow.slick-prev { right: auto; left: 0; }
@media screen and (max-width: 959px) { .com-slider-box-03.reverse .slick-arrow.slick-prev { left: 10px; } }

_:-ms-lang(x)::-ms-backdrop, .com-slider-box-03 .col-02 { display: block; }

.com-slider-box-04 { position: relative; }
@media screen and (max-width: 479px) { .com-slider-box-04 ul { /*height: 600/479*100vw;*/ } }
.com-slider-box-04 ul li { padding-left: 20px; padding-right: 20px; }
.com-slider-box-04 .arrows_box .arrows01 button, .com-slider-box-04 .arrows_box .arrows02 button { display: block; }
.com-slider-box-04 .arrows_box .arrows01 .slick-arrow, .com-slider-box-04 .arrows_box .arrows02 .slick-arrow { background: url("../images/common/button_arrow_slider.png") no-repeat; background-size: contain; width: 3vw; height: 3vw; }
.com-slider-box-04 .arrows_box .arrows01 .slick-arrow.slick-next, .com-slider-box-04 .arrows_box .arrows02 .slick-arrow.slick-next { right: 18%; }
.com-slider-box-04 .arrows_box .arrows01 .slick-arrow.slick-prev, .com-slider-box-04 .arrows_box .arrows02 .slick-arrow.slick-prev { left: 18%; }
@media screen and (max-width: 959px) { .com-slider-box-04 .arrows_box .arrows01 .slick-arrow, .com-slider-box-04 .arrows_box .arrows02 .slick-arrow { width: 6.2565172054vw; height: 6.2565172054vw; }
  .com-slider-box-04 .arrows_box .arrows01 .slick-arrow.slick-next, .com-slider-box-04 .arrows_box .arrows02 .slick-arrow.slick-next { right: 1.0427528676vw; }
  .com-slider-box-04 .arrows_box .arrows01 .slick-arrow.slick-prev, .com-slider-box-04 .arrows_box .arrows02 .slick-arrow.slick-prev { left: 1.0427528676vw; } }

/* パネル
----------------------------------------------- */
.com-panel-01 { display: flex; align-items: flex-end; justify-content: space-between; }
@media screen and (max-width: 959px) { .com-panel-01 > * { width: 100%; } }
@media screen and (min-width: 960px) { .com-panel-01 .txt { padding-right: 50px; } }
@media screen and (max-width: 959px) { .com-panel-01 .btn { margin-top: 20px; } }
.com-panel-01:first-child .txt { margin-top: 0; }

.com-panel-02 { max-width: 1200px; margin-right: auto; margin-left: auto; }
.com-panel-02 > * { padding-right: 20px; padding-left: 20px; }
@media screen and (max-width: 767px) { .com-panel-02 > * { padding-right: 16px; padding-left: 16px; } }
.com-panel-02 .tit { margin-bottom: 1.5em; padding-bottom: 1em; font-size: 16px; border-bottom: #f9f7ee 1px solid; }
.com-panel-02 .grid { display: flex; flex-wrap: wrap; margin-left: -30px; }
.com-panel-02 .grid > * { width: 100%; box-sizing: border-box; }
.com-panel-02 .grid > * { flex: 1; width: 50%; padding-left: 30px; }
@media screen and (max-width: 767px) { .com-panel-02 .grid > * { width: 100%; } }
.com-panel-02 .btns { display: flex; flex-wrap: wrap; }
@media screen and (min-width: 768px) { .com-panel-02 .btns > * { margin-right: 35px; } }
@media screen and (max-width: 767px) { .com-panel-02 .btns > * { width: 100%; } }

.com-panel-03 { position: relative; padding-top: 100px; padding-bottom: 100px; /*> div {
	width: 50%;
	box-sizing: border-box;
	@media screen and (max-width: 767px) {
		width: 100%;
	}
}*/ }
@media screen and (max-width: 767px) { .com-panel-03 { padding-top: 45px; padding-bottom: 45px; } }
.com-panel-03:first-child { padding-top: 0; }
.com-panel-03 .header .tit { text-align: left; display: inline-block; font-size: 36px; letter-spacing: .1em; line-height: 2; font-family: "Oswald", sans-serif; color: #231815; }
@media screen and (max-width: 767px) { .com-panel-03 .header .tit { font-size: 25px; line-height: 1.6; } }
.com-panel-03 .header small { margin-top: 1em; display: block; }
@media screen and (max-width: 959px) { .com-panel-03 .header small { font-size: 11px; } }
@media screen and (max-width: 767px) { .com-panel-03 .txt { margin-top: 35px; } }
.com-panel-03 .txt p { line-height: 2.5; display: inline-block; text-align: left; }
@media screen and (max-width: 767px) { .com-panel-03 .txt p { line-height: 2; } }
.com-panel-03 .com-btn-01 { position: absolute; top: 0; right: -60px; }
@media screen and (max-width: 1160px) { .com-panel-03 .com-btn-01 { right: 20px; } }
@media screen and (max-width: 767px) { .com-panel-03 .com-btn-01 { position: relative; right: 0; margin-top: 75px; } }

.com-panel-04 { display: flex; flex-direction: column; justify-content: space-between; }
@media screen and (min-width: 960px) { .com-panel-04 { max-width: 380px; margin-right: auto; margin-left: auto; } }
@media screen and (max-width: 1300px) { .com-panel-04 { display: block; } }
.com-panel-04 .upper { flex: 1; }
.com-panel-04 .lower { margin-top: 70px; }
.com-panel-04 .header { /*@media screen and (min-width: 960px) {
	min-height: 250px;
}*/ }
.com-panel-04 .tit { font-size: 28px; line-height: 2; }
@media screen and (max-width: 767px) { .com-panel-04 .tit { font-size: 20px; line-height: 1.6; } }
.com-panel-04 .txt { margin-top: 30px; letter-spacing: .05em; }
.com-panel-04 dl { display: flex; flex-wrap: wrap; margin-top: 30px; letter-spacing: .2em; }
@media screen and (max-width: 767px) { .com-panel-04 dl { margin-top: 25px; } }
.com-panel-04 dt { width: 75px; }
@media screen and (max-width: 767px) { .com-panel-04 dt { width: 60px; } }
.com-panel-04 dt::after { content: ' |'; }
.com-panel-04 dd { width: calc(100% - 75px); }
@media screen and (max-width: 767px) { .com-panel-04 dd { width: calc(100% - 60px); } }

_:-ms-lang(x)::-ms-backdrop, .com-panel-04 { display: block; }

.com-panel-05 figure img { width: 100%; }
.com-panel-05 figure + .tit { margin-top: 1.2em; }
.com-panel-05 .tit { margin: 0 0 1em; font-size: 22px; }
@media screen and (max-width: 767px) { .com-panel-05 .tit { font-size: 18px; } }
.com-panel-05 .lower { margin-top: 70px; }
.com-panel-05 dl { display: flex; flex-wrap: wrap; margin-top: 30px; letter-spacing: .2em; }
@media screen and (max-width: 767px) { .com-panel-05 dl { margin-top: 25px; } }
.com-panel-05 dt { width: 75px; }
@media screen and (max-width: 767px) { .com-panel-05 dt { width: 60px; } }
.com-panel-05 dt::after { content: ' |'; }
.com-panel-05 dd { width: calc(100% - 75px); }
@media screen and (max-width: 767px) { .com-panel-05 dd { width: calc(100% - 60px); } }

.com-panel-06::after { display: table; height: 0px; clear: both; font-size: 0; content: ''; }
.com-panel-06 .box-01 { letter-spacing: .1em; }
@media screen and (min-width: 768px) { .com-panel-06 .box-01 { float: left; width: 50%; padding-top: 80px; } }
.com-panel-06 .box-01 .tit { margin-bottom: 2em; font-size: 60px; font-family: "Oswald", sans-serif; color: #f9f7ee; line-height: 1.2; font-weight: bold; }
@media screen and (max-width: 767px) { .com-panel-06 .box-01 .tit { margin-bottom: 1.4em; font-size: 35px; text-align: center; } }
.com-panel-06 .box-01 .tit small { font-size: 80%; }
@media screen and (min-width: 768px) { .com-panel-06 .box-02 { float: right; width: 41.6666666667%; } }
@media screen and (max-width: 767px) { .com-panel-06 .box-02 { margin-top: 40px; } }
@media screen and (max-width: 767px) { .com-panel-06 .box-02 figure { text-align: center; } }
.com-panel-06 .box-02 .detail { margin-top: 60px; padding-top: 1.5em; border-top: #f9f7ee 1px solid; }
@media screen and (max-width: 767px) { .com-panel-06 .box-02 .detail { margin-top: 40px; padding-top: 0; }
  .com-panel-06 .box-02 .detail .more-btn { display: block; position: relative; width: 100%; text-align: center; }
  .com-panel-06 .box-02 .detail .more-btn:after { content: ''; display: block; vertical-align: middle; width: 7px; height: 7px; border-top: 1px solid #000; border-right: 1px solid #000; transform-origin: center center; transform: rotate(135deg); margin-left: 1em; transition: .3s; position: absolute; right: 10px; top: 50%; margin-top: -4px; } }
.com-panel-06 .box-02 .detail.is-open { padding-top: 1.5em; padding-bottom: 30px; border-bottom: #f9f7ee 1px solid; }
.com-panel-06 .box-02 .detail.is-open .more-btn:after { transform: rotate(-45deg); }
@media screen and (max-width: 767px) { .com-panel-06 .box-02 .detail.is-open .detail-content { height: auto; max-height: 1000px; opacity: 1; } }
@media screen and (max-width: 767px) { .com-panel-06 .box-02 .detail-content { transition: .4s; height: 0; max-height: 0; opacity: 0; overflow: hidden; } }
@media screen and (min-width: 768px) { .com-panel-06 .box-03 { float: left; width: 50%; margin-top: 110px; } }
@media screen and (max-width: 767px) { .com-panel-06 .box-03 { margin-top: 50px; text-align: center; } }

.com-panel-07 { display: flex; justify-content: space-between; flex-wrap: wrap; }
.com-panel-07.reverse { flex-direction: row-reverse; }
@media screen and (max-width: 959px) { .com-panel-07 > * { width: 100% !important; }
  .com-panel-07 > * + * { margin-top: 30px; } }
.com-panel-07 .text { width: 37.5%; }
.com-panel-07 .text.middle { align-self: center; }
.com-panel-07 .image { width: 54.1666666667%; text-align: center; }

.com-panel-08 { overflow-x: hidden; padding-bottom: 50px; }
.com-panel-08, .com-panel-08 * { box-sizing: border-box; }
@media screen and (min-width: 960px) { .com-panel-08 { display: flex; align-items: center; max-width: 90%; margin-left: auto; margin-right: 0; }
  .com-panel-08 .col-01 { position: relative; z-index: 1; max-width: 500px; margin-right: 5.625%; }
  .com-panel-08 .col-02 { width: 75.625%; } }
@media screen and (max-width: 959px) { .com-panel-08 { max-width: 100%; padding-left: 16px; padding-right: 16px; text-align: center; }
  .com-panel-08 .com-tit-01:after { margin-left: auto; margin-right: auto; }
  .com-panel-08 .col-02 { margin-top: 30px; } }
.com-panel-08 h2 { margin-bottom: 50px; }
@media screen and (max-width: 767px) { .com-panel-08 h2 { margin-bottom: 30px; } }
.com-panel-08 .animate-from-right { transform: translateX(50%); transition: 2s ease-out transform,2s ease-out opacity,3s ease-out box-shadow; transition-delay: .5s; box-shadow: 0 0 0 0 transparent; }
.com-panel-08 .animate-from-right.inview { transform: translateX(0); opacity: 1; box-shadow: -50px 50px 0 0 rgba(186, 179, 167, 0.51); }

/* 条項系テキストレイアウト
----------------------------------------------- */
.com-texts-01 { counter-reset: number; }
.com-texts-01 section + section { margin-top: 30px; }
@media screen and (max-width: 767px) { .com-texts-01 section + section { margin-top: 20px; } }
.com-texts-01 section h4 { margin-bottom: 1em; }
.com-texts-01 section p { text-indent: 1em; }
.com-texts-01 section p.no-indent { text-indent: 0; }
.com-texts-01 section p, .com-texts-01 section ol, .com-texts-01 section ul, .com-texts-01 section dl { margin-top: 1em; }
.com-texts-01 section p:first-child, .com-texts-01 section ol:first-child, .com-texts-01 section ul:first-child, .com-texts-01 section dl:first-child { margin-top: 0; }
.com-texts-01 div { margin-top: 30px; }
@media screen and (max-width: 767px) { .com-texts-01 div { margin-top: 20px; } }
.com-texts-01 .count h4 { position: relative; padding-left: 2em; border-left: 3px solid #f9f7ee; border-bottom: 1px solid #f9f7ee; }
.com-texts-01 .count h4:before { counter-increment: number; content: counter(number); position: absolute; top: 0; left: .5em; }

/* テーブル
----------------------------------------------- */
.com-line-01 { border-color: #eeeeee; }

/* テーブル
----------------------------------------------- */
.com-table-01 { letter-spacing: .1em; line-height: 2.3333333333; }
.com-table-01 > div { display: flex; flex-wrap: wrap; }
.com-table-01 dt { width: 120px; }
@media screen and (max-width: 767px) { .com-table-01 dt { width: 90px; } }
.com-table-01.dt-01 dt { width: 160px; }
@media screen and (max-width: 767px) { .com-table-01.dt-01 dt { width: 120px; } }
.com-table-01.dt-02 dt { width: 60px; }
@media screen and (max-width: 767px) { .com-table-01.dt-02 dt { width: 55px; } }
.com-table-01 dd { flex: 1; }

.com-table-02 { background: #fff; border: #b18247 1px solid; }
.com-table-02 > div { display: flex; flex-wrap: wrap; }
@media screen and (min-width: 480px) { .com-table-02 > div.large-nowrap { flex-wrap: nowrap; }
  .com-table-02 > div.large-nowrap > dt { flex-shrink: 0; } }
.com-table-02 > div + div dt { border-top: #fff 1px solid; }
@media screen and (max-width: 479px) { .com-table-02 > div + div dt { border: none; } }
.com-table-02 > div + div dd { border-top: #b18247 1px solid; }
@media screen and (max-width: 479px) { .com-table-02 > div + div dd { border: none; } }
.com-table-02 > div.flex dd { flex-direction: column !important; padding: 0; }
.com-table-02 > div.flex dd div { padding: 1em 2em; }
.com-table-02 > div.flex dd div + div { border-top: #b18247 1px solid; }
.com-table-02 > div.flex span { display: block; }
.com-table-02 dt { box-sizing: border-box; display: flex; align-items: center; justify-content: center; width: 200px; padding: 1em; text-align: center; color: #fff; font-weight: bold; font-size: 16px; background: #b18247; }
@media screen and (max-width: 767px) { .com-table-02 dt { font-size: 14px; width: 150px; } }
@media screen and (max-width: 479px) { .com-table-02 dt { width: 100%; } }
@media screen and (max-width: 479px) { .com-table-02 dt + dd { border: none; } }
.com-table-02 dd { flex: 1; display: flex; flex-direction: column; justify-content: center; padding: 1em 2em; font-size: 16px; color: #231815; border-color: #fff; border-style: solid; }
@media screen and (max-width: 767px) { .com-table-02 dd { font-size: 14px; } }
.com-table-02 .flex-dd { flex-shrink: 0; width: calc(100% - 200px); display: flex; }
@media screen and (max-width: 767px) { .com-table-02 .flex-dd { width: calc(100% - 150px); } }
@media screen and (max-width: 479px) { .com-table-02 .flex-dd { width: 100%; } }

.com-table-03 { display: flex; width: 100%; }
.com-table-03 > div { width: 100%; display: flex; flex-direction: column; }
.com-table-03 > div dt { width: auto; padding: .5em; }
@media screen and (max-width: 767px) { .com-table-03 > div dt { height: 4em; } }
.com-table-03 > div dd { padding: .5em; line-height: 1.2; }

.com-table-04 { display: flex; flex-wrap: wrap; margin-top: 30px; letter-spacing: .2em; }
@media screen and (max-width: 767px) { .com-table-04 { margin-top: 25px; } }
.com-table-04 dt { width: 75px; }
@media screen and (max-width: 767px) { .com-table-04 dt { width: 60px; } }
.com-table-04 dt::after { content: ' |'; }
.com-table-04 dd { width: calc(100% - 75px); }
@media screen and (max-width: 767px) { .com-table-04 dd { width: calc(100% - 60px); } }

.terms-figure-01 { font-family: "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "ヒラギノ角ゴシック", "ＭＳ Ｐゴシック", sans-serif; }
.terms-figure-01 + .terms-figure-01 { margin-top: 50px; }
.terms-figure-01 .caption { display: block; margin-bottom: .8em; font-size: 16px; font-size: 1rem; font-weight: 700; letter-spacing: .15em; line-height: 1.64; }
@media screen and (max-width: 1024px) { .terms-figure-01 .caption { font-size: 13px; font-size: 0.8125rem; } }
.terms-figure-01 table { width: 100%; font-weight: 400; font-size: 15px; font-size: 0.9375rem; border: #846e69 1px solid; background: #fff; }
@media screen and (max-width: 1024px) { .terms-figure-01 table { font-size: 13px; font-size: 0.8125rem; } }
@media screen and (max-width: 767px) { .terms-figure-01 table { font-size: 12px; font-size: 0.75rem; } }
.terms-figure-01 table th, .terms-figure-01 table td { vertical-align: middle; text-align: center; line-height: 1.4; box-sizing: border-box; }
.terms-figure-01 table td { border: #846e69 1px solid; }
.terms-figure-01 table th { padding: .5em; font-weight: 400; background: #846e69; border-color: #fff; border-width: 1px; border-style: solid; }
.terms-figure-01 table th:first-child { border-left-color: #846e69; }
.terms-figure-01 table th:last-child { border-right-color: #846e69; }
.terms-figure-01 table th[rowspan] { border-bottom: 0; }
.terms-figure-01 table tr:first-child td, .terms-figure-01 table tr:first-child th { border-top: 0; }
.terms-figure-01 table tr:last-of-type td, .terms-figure-01 table tr:last-of-type th { border-bottom: 0; }
.terms-figure-01 table.table-01 .col-01 { width: 65px; }
@media screen and (max-width: 1024px) { .terms-figure-01 table.table-01 .col-01 { width: 34px; } }
.terms-figure-01 table.table-01 .col-02 { width: 65px; }
@media screen and (max-width: 1024px) { .terms-figure-01 table.table-01 .col-02 { width: 34px; } }
.terms-figure-01 table.table-01 tbody td { padding: 30px 50px; text-align: left; }
@media screen and (max-width: 1024px) { .terms-figure-01 table.table-01 tbody td { padding: 20px 24px; } }
.terms-figure-01 table.table-02 { border-collapse: collapse; table-layout: fixed; height: 100%; /*.col-02 {
	width: 65px;
	@media screen and (max-width: 1024px) {
		width: 35px;
	}
	@media screen and (max-width: 767px) {
		width: 120px;
	}
}*/ }
.terms-figure-01 table.table-02 th.tit { padding: 0; background: #846e69 url("../images/clause/line.png") no-repeat center; background-size: 100% 100%; border: #fff 1px solid; }
.terms-figure-01 table.table-02 th.tit > div { position: relative; min-height: 80px; }
@media screen and (max-width: 1024px) { .terms-figure-01 table.table-02 th.tit > div { min-height: 70px; } }
@media screen and (max-width: 767px) { .terms-figure-01 table.table-02 th.tit > div { min-height: 75px; } }
.terms-figure-01 table.table-02 th.tit span { margin: 0 !important; position: absolute; line-height: 1.2; }
@media screen and (max-width: 767px) { .terms-figure-01 table.table-02 th.tit span { font-size: 12px; font-size: 0.75rem; } }
.terms-figure-01 table.table-02 th.tit span:nth-of-type(1) { right: .5em; top: .2em; text-align: right; }
.terms-figure-01 table.table-02 th.tit span:nth-of-type(2) { left: .5em; bottom: .2em; text-align: left; }
.terms-figure-01 table.table-02 thead th { padding: 1.5em 1em; }
@media screen and (max-width: 1024px) { .terms-figure-01 table.table-02 thead th { padding: 2em 1em; } }
@media screen and (max-width: 767px) { .terms-figure-01 table.table-02 thead th { padding: .5em .2em; } }
.terms-figure-01 table.table-02 td { padding: 1.5em .5em; }
.terms-figure-01 table.table-02 th.wide { letter-spacing: .8em; }
@media screen and (max-width: 767px) { .terms-figure-01 table.table-02 th.small { font-size: 11px; font-size: 0.6875rem; letter-spacing: -.12em; } }
.terms-figure-01 table.table-02 .col-01 { width: 228px; }
@media screen and (max-width: 1024px) { .terms-figure-01 table.table-02 .col-01 { width: 115px; } }
@media screen and (max-width: 767px) { .terms-figure-01 table.table-02 .col-01 { width: 105px; } }
.terms-figure-01 p, .terms-figure-01 li { margin-top: 1em; line-height: 1.2; font-weight: 400; }
@media screen and (max-width: 1024px) { .terms-figure-01 p, .terms-figure-01 li { font-size: 13px; font-size: 0.8125rem; } }
.terms-figure-01 .att { margin-top: 1em; display: flex; }
.terms-figure-01 .att span { line-height: 1.7; width: 3em; font-weight: 400; font-size: 15px; font-size: 0.9375rem; }
@media screen and (max-width: 767px) { .terms-figure-01 .att span { font-size: 13px; font-size: 0.8125rem; } }
.terms-figure-01 .att p { padding: 0; flex: 1; margin: 0; }

/* リスト
----------------------------------------------- */
/*小さい文字の●リスト*/
.com-list-01 li { position: relative; padding-left: 1.5em; line-height: 1.6666666667; font-size: 14px; }
.com-list-01 li::before { position: absolute; left: 0; top: 4px; content: '●'; font-size: 6px; }

/*各種olリスト*/
.com-list-02 { padding-left: 1em; padding-right: 1em; counter-reset: number; /*ナンバリングをリセット*/ list-style: none; /*自動で数字をつけない*/ /*ナンバリングol　1.　2.　3.*/ /*ナンバリングol　(1)　(2)　(3)*/ /*ナンバリングol　(イ)　(ロ)　(ハ)*/ /*ナンバリングol　(a)(b)(c)*/ /*ナンバリングol　一　二　三*/ }
.com-list-02 li { position: relative; /*数字がinsideにならないように*/ padding-left: 2em; /*数字がinsideにならないように*/ }
.com-list-02 li:before { counter-increment: number; /*カウンターの名前をつける*/ content: counter(number); /*名前のカウンターの数字をcontentで足す*/ position: absolute; /*数字がinsideにならないように*/ top: 0; /*数字がinsideにならないように*/ left: 0; /*数字がinsideにならないように*/ }
.com-list-02 li a { text-decoration: underline; }
.com-list-02 ol { /*ナンバリングolの中のデザイン上のパディングを消す*/ padding-left: 0; padding-right: 0; }
.com-list-02.dots > li:before { content: counter(number) "."; }
.com-list-02.parenthesis > li:before { content: "(" counter(number) ")"; }
.com-list-02.iroha > li { padding-left: 2.5em; }
.com-list-02.iroha > li:before { content: "(" counter(number,katakana-iroha) ")"; }
.com-list-02.lower-alpha > li { padding-left: 2em; }
.com-list-02.lower-alpha > li:before { content: "(" counter(number,lower-alpha) ")"; }
.com-list-02.kanji > li { padding-left: 2.5em; }
.com-list-02.kanji > li:before { content: counter(number,cjk-ideographic); }

/*ドット「・」リスト*/
.com-list-03 li { position: relative; padding-left: 1.5em; line-height: 2; }
.com-list-03 li::before { position: absolute; left: 0; top: 0; content: '・'; }

/*小さい四角リスト*/
.com-list-04 li { position: relative; padding-left: 1em; line-height: 1.875; }
.com-list-04 li::before { position: absolute; left: 0; top: 0; content: '▪'; }

/* ナンバリング見出し（.number-sectionsの子セクションごとの見出しをナンバリング）
----------------------------------------------- */
.number-sections { counter-reset: number; /*ナンバリングをリセット*/ }
.number-sections h4 { position: relative; /*数字がinsideにならないように*/ padding-left: 2em; /*数字がinsideにならないように*/ }
.number-sections h4:before { counter-increment: number; /*カウンターの名前をつける*/ content: counter(number) "."; /*名前のカウンターの数字をcontentで足す*/ position: absolute; /*数字がinsideにならないように*/ top: 0; /*数字がinsideにならないように*/ left: 0; /*数字がinsideにならないように*/ }

/* パンくず
========================================================= */
#pankuzu { display: flex; padding-top: 1em; }
#pankuzu > span, #pankuzu a { font-size: 14px; letter-spacing: .05em; color: #231815; }
#pankuzu > span::after, #pankuzu a::after { padding: 0 .5em; content: '>'; }
#pankuzu > span:last-child::after, #pankuzu a:last-child::after { content: ''; }

/* モーダル
========================================================= */
/* モーダル全体(背景＋本体) */
.modal { display: none; position: fixed; top: 0; left: 0; height: 100vh; width: 100%; z-index: 200; justify-content: center; align-items: center; }

/* モーダル背景 */
.modal-bg { position: absolute; height: 100vh; width: 100%; background: rgba(0, 0, 0, 0.8); }

/* モーダル本体 */
.modal-content { position: relative; width: 90%; max-height: 80vh; max-width: 1200px; }
@media screen and (max-width: 479px) { .modal-content { width: calc(100% - 32px); } }
.modal-content .modal-inner { padding: 10px; max-height: 80vh; background: #fff; }
.modal-content .js-modal-close { position: absolute; width: 40px; height: 40px; right: 0; top: -50px; display: flex; flex-direction: column; justify-content: center; align-items: center; }
.modal-content .js-modal-close:before, .modal-content .js-modal-close:after { content: ''; display: block; width: 40px; height: 3px; background-color: #fff; }
.modal-content .js-modal-close:before { transform: rotate(45deg); }
.modal-content .js-modal-close:after { transform: rotate(-45deg); margin-top: -3px; }
.modal-content .iframe-wrapper { position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; width: 100%; }
.modal-content .iframe-wrapper:before { content: ''; display: block; padding-top: 56.25%; }
.modal-content .iframe-wrapper iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/* 汎用クラス
========================================================= */
/* テキストカラー
-------------------------------------- */
.com-color-01 { color: #b18247; }

.com-color-02 { color: #231815; }

.com-color-03 { color: #f9f7ee; }

.com-color-04 { color: #846e69; }

.com-color-red { color: #F00; }

/* 背景色
-------------------------------------- */
.com-bg-01 { background-color: #f9f7ee; }

.com-bg-02 { background-color: #FFF; }

/* テキスト寄せ
-------------------------------------- */
.text-center { text-align: center; }
@media screen and (max-width: 767px) { .text-center.sp-left { text-align: left; } }
@media screen and (min-width: 768px) { .text-center.pc-left { text-align: left; } }
@media screen and (min-width: 960px) { .text-center.tab-pc-left { text-align: left; } }

.text-right { text-align: right; }

.text-left-center { text-align: left; display: flex; flex-direction: column; align-items: center; }

/* テキストスタイル
-------------------------------------- */
.text-bold { font-weight: bold; }

.underline { text-decoration: underline; }

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