@charset "UTF-8";
/* Scss Document */
/*color*/
/*font*/
@import url("https://fonts.googleapis.com/css2?family=Zen+Old+Mincho&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap");
@font-face { font-family: "optima"; src: url("https://rakuten5.jp/h4/0/fonts/OptimaLTStd.otf") format("opentype"); }
/*layout*/
/*----------------------------------------------------
	楽天パーツ
----------------------------------------------------*/
.rt-header { z-index: 0; }

#htlContents { position: relative; width: 1190px; min-width: 1190px; margin-left: auto; margin-right: auto; min-width: none; }
#htlContents #htlBrdCrmbs, #htlContents #htlHeader { margin: 0 auto; max-width: 1190px; width: calc(100% - 30px); }

#htlMainContent { width: 100% !important; float: none; margin-left: auto; margin-right: auto; }
#htlMainContent > div:first-child { margin: 0 auto; max-width: 1190px; width: calc(100% - 30px); }

div#RthCustomizeW { clear: both; width: 1190px; margin: 0 auto 10px auto; padding: 0; }

#widewrapper { width: 100%; }

/*左カラム*/
#htlSide-A { position: absolute; left: -210px; top: 970px; }
@media (max-width: 1677px) { #htlSide-A { left: calc(min(10px, ((100vw - 1190px) / -2) + 33px)); } }

#upfrntPlans { display: none; }

.module-history-domsearch { display: none; }

/*楽天 style-pc.cssにも記載あり（ローカル・デモ再現用）*/
html, body { margin: 0; padding: 0; border: 0; font-size: 100%; vertical-align: baseline; }

html { overflow-x: clip; }

/*追加*/
body { overflow-x: clip; min-width: 1250px; text-size-adjust: 100%; -webkit-text-size-adjust: 100%; /* Safari */ }
body#TOP { min-width: 1250px; }

/*----------------------------------------------------
	全体
----------------------------------------------------*/
.all { font-family: "游ゴシック", "Yu Gothic", sans-serif; font-size: 15px; box-sizing: border-box; }
.all img { max-width: 100%; }

p { font-family: "游ゴシック", "Yu Gothic", sans-serif; }

.ovh { overflow: hidden; }

.ovv { overflow: visible !important; }

.en { font-family: "游ゴシック", "Yu Gothic", sans-serif; }

.f_sans { font-family: "游ゴシック", "Yu Gothic", sans-serif; font-weight: 500; }

.lhc::before { display: block; width: 0; height: 0; margin-top: calc((1 - 2) * .5em); content: ""; }
.lhc::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 2) * .5em); content: ""; }

.tate { writing-mode: vertical-rl; font-feature-settings: normal; white-space: nowrap; }
.tate span { text-orientation: upright; letter-spacing: -10px; }

.wrp { width: 1190px; margin-left: auto; margin-right: auto; }

.lrg_cnt { width: 1780px; margin-left: -295px; }
.lrg_cnt > iframe { width: 100%; }

.wrp.pd { padding-left: 10px; padding-right: 10px; }

.cf:after { content: ''; display: block; clear: both; }

.flex { display: flex; }

.header h3 { color: #7e3838 !important; margin-bottom: 20px; }
.header h4 { font-size: 25px; line-height: 1.4; margin-bottom: 20px; }

/*----------------------------------------------------
	リンク
----------------------------------------------------*/
.all a { cursor: pointer; color: #000000; text-decoration: none; /*&:hover img {	
	opacity: 0.6;
}*/ }
.all a:hover { color: #000000; }
.all a.underline { text-decoration: underline; }
.all a.underline:hover { text-decoration: none; }

.all { font-feature-settings: "palt"; }
.all h2, .all h3, .all h4, .all h5 { color: #000000; font-weight: 500; }
.all p { color: #000000; font-family: "游ゴシック", "Yu Gothic", sans-serif; font-size: 15px; line-height: 2; font-weight: 500; }

.btn { background-color: #000000; color: #fff !important; width: 113px; height: 113px; border-radius: 100%; display: inline-flex; justify-content: center; align-items: center; text-decoration: none; transition: all 0.5s; }
.btn span { width: 100%; display: flex; justify-content: center; align-items: center; min-height: 29px; position: relative; }
.btn span:after { content: ''; display: block; width: 0; height: 1px; background-color: #fff; transition: all 0.5s; position: absolute; margin-left: auto; margin-right: auto; right: 0; left: 0; bottom: -14px; }
.btn:hover span:after { width: 38px; }
.btn:hover img { opacity: 1 !important; }

.btn02 { text-decoration: none; display: inline-block !important; position: relative !important; width: 200px !important; height: 34px !important; color: #000 !important; line-height: 34px !important; text-align: center !important; cursor: pointer !important; font-size: 16px !important; letter-spacing: 0.1em !important; /*padding-right: 10px;*/ font-weight: bold; position: relative; }

.btn02::after { /*content: '\02192';*/ content: '➝'; position: absolute; line-height: 1; top: 50%; transform: translateY(-50%); right: 7%; transition: .5s; }

.btn02 svg { position: absolute; top: 0; left: 0; /*width: 150px;
height: 34px;*/ }

.btn02 rect { stroke-width: 2; stroke-dasharray: 200 580; stroke-dashoffset: -235; fill: none; stroke: #000; }

.btn02:hover rect { stroke: #000; stroke-width: 2; stroke-dasharray: 580 0; stroke-dashoffset: -235; -webkit-transition: all 1.2s cubic-bezier(0.8, 0, 0, 0.8); -moz-transition: all 1.2s cubic-bezier(0.8, 0, 0, 0.8); transition: all 1.2s cubic-bezier(0.8, 0, 0, 0.8); }

.btn02:hover:after { right: 5.5%; }

.btn_arw { background-color: #000000; color: #fff !important; width: 113px; height: 113px; border-radius: 100%; display: inline-flex; justify-content: center; align-items: center; text-decoration: none; transition: all 0.5s; }
.btn_arw span { line-height: 1.2em; text-align: center; font-family: "optima", sans-serif; width: 100%; display: flex; justify-content: center; align-items: center; min-height: 29px; position: relative; }
.btn_arw span:after { content: ''; display: block; width: 0; height: 1px; background-color: #fff; transition: all 0.5s; position: absolute; margin-left: auto; margin-right: auto; right: 0; left: 0; bottom: -14px; }
.btn_arw:hover span:after { width: 38px; }
.btn_arw:hover img { opacity: 1 !important; }

.btn-01 { width: 200px; position: relative; line-height: 1; border: 1px solid #000000; text-align: center; position: relative; transition: 0.5s; }
.btn-01 a { display: flex; justify-content: center; padding: 8px 0; }
.btn-01:after { content: ''; display: block; background: url("../com/btn-arrow.png") no-repeat right center; width: 50px; height: 6px; position: absolute; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); right: -25px; transition: 0.5s; }
.btn-01:hover { background-color: #7e3838; border: 1px solid #7e3838; }
.btn-01:hover a { color: #fff; }
.btn-01:hover:after { opacity: 0; }

.btn-02 { display: block; /*width: 100%;
max-width: 240px;*/ width: 240px; position: relative; padding: 10px 0; background: url("../com/btn-arrow-row.png") no-repeat right center; line-height: 1; }
.btn-02:before, .btn-02:after { position: absolute; bottom: 0; left: 0; content: ' '; display: block; width: 100%; height: 1px; background: #000000; }
.btn-02:before { -webkit-transition: transform .3s ease .3s; transition: transform .3s ease .3s; -webkit-transform: scaleX(1); transform: scaleX(1); transform-origin: 100% 100%; }
.btn-02:after { -webkit-transition: transform .3s ease; transition: transform .3s ease; -webkit-transform: scaleX(0); transform: scaleX(0); transform-origin: 0 0; }
.btn-02:hover:before { -webkit-transition: transform .3s ease; transition: transform .3s ease; -webkit-transform: scaleX(0); transform: scaleX(0); }
.btn-02:hover:after { -webkit-transition: transform .3s ease .3s; transition: transform .3s ease .3s; -webkit-transform: scaleX(1); transform: scaleX(1); }

/*----------------------------------------------------
	ページ内リンク　
----------------------------------------------------*/
.p-link { width: 1150px; padding-top: 180px; margin-left: auto; margin-right: auto; position: relative; z-index: 1; }
.p-link ul { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 50px; }
.p-link ul li { width: 350px; height: 65px; position: relative; /*border-bottom: 1px solid $base-color;*/ /*&:nth-child(3n+1){
	border-left: 1px solid $base-color;
}
&:nth-child(3n+1):nth-last-child(-n+3),&:nth-child(3n+1):nth-last-child(-n+3) li{
	margin-bottom: 0;*/ }
.p-link ul li .en { font-family: "optima", sans-serif; font-size: 25px; color: #7e3838; }
.p-link ul li .ja { font-weight: 600; }
.p-link ul a { width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; line-height: 22px; border-bottom: 1px solid #000000; }
.p-link ul a:before { position: absolute; left: 0; content: ''; width: 100%; height: 2px; background: #7e3838; bottom: -1px; transform: scale(0, 1); transform-origin: right top; transition: transform 0.5s; }
.p-link ul a:after { content: ''; display: block; width: 7px; height: 15px; background: url("../com/plink_arw.png") no-repeat center center/contain; position: absolute; top: 20px; right: 0; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); transition: .5s; }
.p-link ul a:hover:after { top: 29px; }
.p-link ul a:hover:before { transform: scale(1, 1); transform-origin: left top; }
.p-link.two ul { width: 750px; grid-template-columns: 1fr 1fr; margin-left: auto; margin-right: auto; }

.img-link { width: 1150px; padding-top: 180px; margin-left: auto; margin-right: auto; position: relative; z-index: 1; }
.img-link ul { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 50px; }
.img-link ul li { position: relative; width: 350px; height: 95px; position: relative; /*border-bottom: 1px solid $base-color;*/ /*&:nth-child(3n+1){
	border-left: 1px solid $base-color;
}
&:nth-child(3n+1):nth-last-child(-n+3),&:nth-child(3n+1):nth-last-child(-n+3) li{
	margin-bottom: 0;*/ }
.img-link ul li .txt { position: absolute; top: 50%; left: 10%; translate: 0 -50%; text-align: left; line-height: 1.5em; z-index: 10; }
.img-link ul li .txt .en { font-family: "optima", sans-serif; font-size: 20px; color: #7e3838; color: #fff; transform: scale(1.1, 1); }
.img-link ul li .txt .ja { font-weight: 500; color: #fff; }
.img-link ul a { width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; line-height: .7; transition: all  0.3s ease; position: relative; }
.img-link ul a::after { content: ''; width: 100%; height: 100%; background: #7e3838; position: absolute; opacity: 0; transition: all  0.3s ease; }
.img-link ul a:hover::after { opacity: 0.3; }
.img-link.two ul { width: 750px; grid-template-columns: 1fr 1fr; margin-left: auto; margin-right: auto; }

.lb { position: relative; padding-left: 20px; }
.lb:before { content: ''; display: block; background: #000000; position: absolute; top: calc((2 - 1) * .5em); left: 0; width: 4px; height: calc(100% - ((2 - 1) * 1em)); }
.lb.bw1 { position: relative; padding-left: 25px; }
.lb.bw1:before { content: ''; display: block; background: #000000; position: absolute; top: calc((2 - 1) * .5em); left: 0; width: 1px; height: calc(100% - ((2 - 1) * 1em)); }

/*----------------------------------------------------
	画像
----------------------------------------------------*/
img { border: 0; margin: 0px 0px 0px 0px; padding: 0px 0px 0px 0px; vertical-align: bottom; /* [disabled]margin: 0px 0px 0px 0px; */ }

/*----------------------------------------------------
	メインコンテンツ
----------------------------------------------------*/
#main:after { content: "."; display: block; clear: both; height: 0; max-height: 0; visibility: hidden; }

.cont01 { padding-top: 90px; padding-bottom: 90px; }
header.large + .cont01 { padding-top: 0; }

.cont02 { padding-top: 50px; padding-bottom: 50px; }
.column + .cont02 { padding-top: 100px; }
header.large + .cont02 { padding-top: 0; }

/*----------------------------------------------------
	メインビジュアル
----------------------------------------------------*/
.logo { height: 115px; text-align: center; }

#mv { width: 1190px; margin-left: auto; margin-right: auto; position: relative; }
#mv .mv_img { width: 2000px; margin-left: -405px; position: relative; }
#mv .mv_img:after { content: ''; display: block; width: 2000px; height: 180px; position: absolute; bottom: 0px; left: 0; background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.6) 100%); }

/*----------------------------------------------------
	#header
----------------------------------------------------*/
#header { margin-top: 40px; margin-bottom: 40px; text-align: center; }

/*----------------------------------------------------
	#gnav	ナビ
----------------------------------------------------*/
#gnav { display: flex; justify-content: center; align-items: center; padding-left: 35px; padding-right: 35px; margin-top: -100px; background: #e1dcd1; position: relative; width: 2000px; margin-left: -405px; margin-top: 0; }
#gnav ul { display: flex; justify-content: center; flex-grow: 0; height: 108px; align-items: center; }
#gnav ul li { height: 60px; border-left: 1px solid #271f1c; position: relative; padding-right: 35px; padding-left: 35px; transition: transform 0.3s; }
#gnav ul li:last-child { margin-right: 0; border-right: 1px solid #271f1c; }
#gnav ul li a { display: flex; text-align: center; width: 100%; height: 100%; flex-direction: column; align-items: center; justify-content: center; font-family: "游ゴシック", "Yu Gothic", sans-serif; color: #271f1c; font-size: 20px; }
#gnav ul li a span { font-size: 16px; letter-spacing: .2em; position: relative; z-index: 2; }
#gnav ul li::after { position: absolute; left: 0; content: ''; width: 80%; height: 1px; background: #271f1c; bottom: -1px; left: 50%; transform: translateX(-50%) scale(0, 1); transform-origin: center top; transition: transform 0.3s; }
#gnav ul li:hover::after { transform: translateX(-50%) scale(1, 1); }
#gnav ul li:hover::before { transform: scale(1, 1); }

#gnav02 { display: flex; justify-content: center; align-items: center; padding-left: 35px; padding-right: 35px; background: #211910; position: relative; width: 2000px; margin-left: -405px; }
#gnav02 ul { display: flex; justify-content: center; flex-grow: 0; height: 108px; align-items: center; }
#gnav02 ul li { height: 60px; border-left: 1px solid #aaaaaa; position: relative; padding-right: 35px; padding-left: 35px; }
#gnav02 ul li:last-child { border-right: 1px solid #aaaaaa; }
#gnav02 ul li a { display: flex; text-align: center; width: 100%; height: 100%; flex-direction: column; align-items: center; justify-content: center; font-family: "游ゴシック", "Yu Gothic", sans-serif; color: #fff; font-size: 20px; }
#gnav02 ul li a span { font-size: 16px; letter-spacing: .2em; position: relative; z-index: 2; }

/*----------------------------------------------------
	検索
----------------------------------------------------*/
#search iframe { width: 100%; height: 538px; position: relative; z-index: 1; }

.all#search { min-width: 1190px; }

/*----------------------------------------------------
	右固定
----------------------------------------------------*/
#right_fixed { position: fixed; right: 16px; bottom: 190px; z-index: 3; }
#right_fixed .booking { width: 200px; height: 140px; background-color: #7e3838; display: flex; flex-direction: column; justify-content: center; align-items: center; transition: 1s; }
#right_fixed .booking span { line-height: 1; color: #fff; font-size: 16px; }
#right_fixed .booking span.jp { margin-top: 10px; }
#right_fixed .booking:hover { opacity: 0.7; }
#right_fixed .plan { margin-top: 97px; display: flex; flex-direction: column; justify-content: center; align-items: center; transition: 1s; }
#right_fixed .plan span { line-height: 1; color: #fff; font-size: 16px; }
#right_fixed .plan:hover { opacity: 0.7; }
#right_fixed a { display: block; position: relative; transition: opacity 0.3s ease; }
#right_fixed a::after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url("../../0/com/search_r.png"); /* ←ホバー時画像に置き換えてください */ background-size: cover; background-position: center; opacity: 0; transition: opacity 0.3s ease; pointer-events: none; }
#right_fixed a:hover::after { opacity: 1; }

/*----------------------------------------------------
	共通ヘッダー
----------------------------------------------------*/
header.large { margin-bottom: 50px; text-align: center; }
header.large h3 { font-size: 35px; line-height: 1; font-family: "游ゴシック", "Yu Gothic", sans-serif; font-weight: 400; line-height: 1.2857142857; }
header.large h3::before { display: block; width: 0; height: 0; margin-top: calc((1 - 1.2857142857) * .5em); content: ""; }
header.large h3::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 1.2857142857) * .5em); content: ""; }
header.large.gold h3 { color: #7e3838; }
header.large.left { text-align: left; }

header.middle { margin-bottom: 50px; text-align: center; }
header.middle h3 { font-size: 35px; line-height: 1; font-family: "游ゴシック", "Yu Gothic", sans-serif; font-weight: 400; }
header.middle.black h3 { color: #000000; }
header.middle p { margin-top: 10px; margin-bottom: -30px; }
header.middle p::before { display: block; width: 0; height: 0; margin-top: calc((1 - 2) * .5em); content: ""; }
header.middle p::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 2) * .5em); content: ""; }

header.small { margin-bottom: 40px; font-family: "游ゴシック", "Yu Gothic", sans-serif; text-align: center; }
header.small h3 { font-size: 40px; line-height: 1; letter-spacing: -.01em; font-weight: 200; }
header.small h3 span { font-style: italic; font-size: 46px; }

/*----------------------------------------------------
	見出し単品
----------------------------------------------------*/
.tit01 { font-size: 22px; font-family: "optima", sans-serif; margin-bottom: 35px; line-height: 2.0454545455; }
.tit01::before { display: block; width: 0; height: 0; margin-top: calc((1 - 2.0454545455) * .5em); content: ""; }
.tit01::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 2.0454545455) * .5em); content: ""; }

.tit02 { font-size: 22px; font-family: "游ゴシック", "Yu Gothic", sans-serif; margin-bottom: 20px; line-height: 1.3636363636; }
.tit02::before { display: block; width: 0; height: 0; margin-top: calc((1 - 1.3636363636) * .5em); content: ""; }
.tit02::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 1.3636363636) * .5em); content: ""; }
.boxes > div > .tit02:first-child { padding: 0 20px; }

.tit03 { font-family: "optima", sans-serif; color: #7e3838 !important; font-size: 50px; text-align: center; padding-bottom: 40px; transform: scale(1.1, 1); }

.tit04 { font-weight: 500 !important; margin-bottom: 10px; padding-bottom: 3px; width: 100%; border-bottom: 1px solid #bbbbbb; position: relative; font-size: 20px; color: #7e3838; }
.tit04::before { content: ''; position: absolute; width: 130px; height: 1px; background: #7e3838; bottom: -1px; }

.text .sub_t { font-size: 25px; }

.box2 .sub_t { font-size: 18px; }

/*----------------------------------------------------
	カラム配置箇所
----------------------------------------------------*/
.column { width: 100%; max-width: 1650px; margin-left: auto; margin-right: auto; padding-left: 230px; padding-right: 230px; }
@media (max-width: 1650px) { .column { padding-right: 0; } }
.column .wrp { width: 100%; padding-left: 20px; padding-right: 20px; /*@media (max-width:1650px){
	max-width: 100%;
	margin-left: 0;
	padding-right: 0;
}*/ }

/*----------------------------------------------------
	導入
----------------------------------------------------*/
#lead:not(.top) { padding-top: 120px; position: relative; z-index: 1; }
#lead:not(.top):after { content: ''; display: block; width: 2000px; height: 612px; position: absolute; bottom: -60px; left: -405px; z-index: -1; background: url(../com/bf_bg.png); }
#lead:not(.top) .wrp { width: 1150px; }
#lead:not(.top) .wrp h2 { font-size: 70px; color: #7e3838; text-align: center; padding-bottom: 30px; font-family: "optima", sans-serif; transform: scale(1.1, 1); }
#lead:not(.top) .wrp .img { width: 1150px; margin: 0 auto; }
#lead:not(.top) .wrp .text { width: 910px; margin-right: auto; margin-left: auto; margin-top: 42px; }
#lead:not(.top) .wrp .text p { font-size: 15px; }
#lead:not(.top) .wrp .text h3 { font-size: 40px; font-weight: bold; padding-bottom: 30px; letter-spacing: 0.05em; line-height: 1.5; }
#lead:not(.top) .wrp .textflex { /*20250529追記*/ width: 1150px; display: flex; margin-left: inherit; margin-right: inherit; align-items: flex-end; }
#lead:not(.top) .wrp .textlead { /*20250529追記*/ width: 920px; padding-right: 40px; }
#lead:not(.top).sub-lead { margin-bottom: 20px; }
#lead:not(.top).sub-lead:after { content: ''; display: block; width: 2000px; height: 360px; position: absolute; bottom: -80px; left: -405px; z-index: -1; background: url(../com/bf_bg02.png); }
#lead:not(.top).sub-lead .wrp { width: 1150px; }
#lead:not(.top).sub-lead .wrp h2 { font-size: 70px; color: #7e3838; text-align: center; padding-bottom: 80px; font-family: "optima", sans-serif; transform: scale(1.1, 1); }
#lead:not(.top).sub-lead .wrp .img { width: 1150px; margin: 0 auto; }
#lead:not(.top).sub-lead .wrp .text { width: 910px; margin-right: auto; margin-left: auto; margin-top: 42px; }
#lead:not(.top).sub-lead .wrp .text p { font-size: 15px; }
#lead:not(.top).sub-lead .wrp .text h3 { font-size: 40px; font-weight: bold; padding-bottom: 30px; letter-spacing: 0.05em; line-height: 1.5; }
#lead:not(.top).sub-lead .wrp .textflex { /*20250529追記*/ width: 1150px; display: flex; margin-left: inherit; margin-right: inherit; align-items: flex-end; }
#lead:not(.top).sub-lead .wrp .textlead { /*20250529追記*/ width: 920px; padding-right: 40px; }

/*----------------------------------------------------
	左右
----------------------------------------------------*/
.cont_lr { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-between; align-items: center; }
.cont_lr.img_r .text { order: 1; }
.cont_lr.img_r figure, .cont_lr.img_r iframe { order: 2; }

.text_lr { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-between; }
.text_lr > div { flex-grow: 0; flex-shrink: 0; }
.text_lr > p::before { display: block; width: 0; height: 0; margin-top: calc((1 - 2) * .5em); content: ""; }
.text_lr > p::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 2) * .5em); content: ""; }
.text_lr .btn { align-self: center; margin-left: 35px; margin-right: 0; }
.text_lr .text { flex-basis: 700px; max-width: 700px; margin-left: 10px; }
.text_lr .text p::before { display: block; width: 0; height: 0; margin-top: calc((1 - 2) * .5em); content: ""; }
.text_lr .text p::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 2) * .5em); content: ""; }
.text_lr .detail { flex-basis: 420px; margin-right: 10px; }

/*----------------------------------------------------
	横並びBOX
----------------------------------------------------*/
.boxes { display: flex; flex-wrap: wrap; margin-left: -30px; margin-top: -50px; }
.boxes + .boxes { margin-top: 50px; }
.boxes > div { padding-left: 30px; margin-top: 50px; }
.boxes > div .text { margin-top: 20px; padding: 0 10px; }
.boxes > div .text h4 { font-family: "optima", sans-serif; font-size: 20px; line-height: 1.5; margin-bottom: 20px; }
.boxes > div .text h4::before { display: block; width: 0; height: 0; margin-top: calc((1 - 1.5) * .5em); content: ""; }
.boxes > div .text h4::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 1.5) * .5em); content: ""; }
.boxes > div .text h4:last-child { margin-bottom: 0; }
.boxes > div .text h4.en { font-weight: 500; }
.boxes > div .text p::before { display: block; width: 0; height: 0; margin-top: calc((1 - 2) * .5em); content: ""; }
.boxes > div .text p::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 2) * .5em); content: ""; }
.boxes > div .text .info { margin-top: 35px; padding-left: .5em; position: relative; }
.boxes > div .text .info:before { content: ''; display: block; width: 1px; height: calc(100% - 1em); position: absolute; top: .5em; left: 0; background-color: #000000; }
.boxes > div .text .info .detail::before { display: block; width: 0; height: 0; margin-top: calc((1 - 2) * .5em); content: ""; }
.boxes > div .text .info .detail::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 2) * .5em); content: ""; }
.boxes.box2 { margin-left: -50px; margin-top: -100px; }
.boxes.box2 > div { padding-left: 50px; margin-top: 100px; width: 50%; }
.boxes.box3 > div { width: calc(100% / 3.001); }
.boxes.box4 > div { width: 25%; }
.boxes.box4 > div .text { padding: 0 0; }

/*----------------------------------------------------
	詳細リスト
----------------------------------------------------*/
.detail { display: flex; flex-wrap: wrap; font-family: "游ゴシック", "Yu Gothic", sans-serif; flex-grow: 1; font-size: 15px; line-height: 2; font-feature-settings: "palt"; color: #000000; }
.detail dt { width: 120px; margin-right: 1em; position: relative; /*padding-right: 1em;*/ }
.detail dd { width: calc(100% - 120px - 1em); }
.detail.dt75 dt { width: 75px !important; }
.detail.dt75 dd { width: calc(100% - 75px - 1em) !important; }
.detail.dt90 dt { width: 90px !important; }
.detail.dt90 dd { width: calc(100% - 90px - 1em) !important; }
.detail.dt100 dt { width: 100px !important; }
.detail.dt100 dd { width: calc(100% - 100px - 1em) !important; }
.detail.dt110 dt { width: 110px !important; }
.detail.dt110 dd { width: calc(100% - 110px - 1em) !important; }
.detail.dt130 dt { width: 130px !important; }
.detail.dt130 dd { width: calc(100% - 130px - 1em) !important; }
.detail.dt150 dt { width: 150px !important; }
.detail.dt150 dd { width: calc(100% - 150px - 1em) !important; }
.detail.dt165 dt { width: 165px !important; }
.detail.dt165 dd { width: calc(100% - 165px - 1em) !important; }

/*----------------------------------------------------
	バナー
----------------------------------------------------*/
.bn_set { width: 950px; margin: 80px 0px 0px 0px; }

.bn_set .bn { width: 220px; margin-right: 23px; margin-bottom: 16.5px; float: left; }

/*----------------------------------------------------
	ページトップ
----------------------------------------------------*/
/* pagetop
========================================================= */
#pagetop { position: fixed; right: 47px; bottom: 10px; height: 100px; cursor: pointer; z-index: 3; /*a{	
	display: block;
	color: $black!important;
}

span{
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode:vertical-rl;   
	padding-top: 60px;
	font-size: 11px;
	width: 20px;
	line-height: 20px;
	font-family: $base-font;
	//font-weight: bold;
}

&::before {
	position: absolute;
	bottom: 45px;
	left: 50%;
	width: 1px;
	height: 50px;
	background: #6f6f6f;
	content: '';
	//transition: .5s ease-in-out;
	animation: pagetop-line 2s ease-in-out infinite; }*/ }
#pagetop a { display: inline-block; position: relative; transition: opacity 0.3s ease; /* フェード効果 */ }
#pagetop a::after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url("../../0/com/pt_r.png"); background-size: cover; background-position: center; opacity: 0; transition: opacity 0.3s ease; pointer-events: none; }
#pagetop a:hover::after { opacity: 1; /* ベールの濃さ：0.1〜0.3 がおすすめ */ }

@keyframes pagetop-line { 0% { height: 50px; bottom: 45px; }
  100% { height: 0; bottom: 100px; } }
/*----------------------------------------------------
	フッター
----------------------------------------------------*/
#footer { padding-top: 120px; }
#footer h3 { text-align: center; font-size: 50px; padding-bottom: 70px; font-family: "optima", sans-serif; }

#footer:not(.top) { padding-top: 200px; }

#footer { position: relative; z-index: 1; }
#footer .bnr { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-between; }
#footer .bnr .bnrs { width: 100%; height: 82px; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; justify-content: space-between; }
#footer .bnr .bnrs li { width: 385px; border: 1px solid #595656; font-size: 20px; transition: 0.5s; }
#footer .bnr .bnrs li a { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; padding: 30px 0; }
#footer .bnr .bnrs li:hover { background-color: #7e3838; border: 1px solid #7e3838; }
#footer .bnr .bnrs li:hover a { color: #fff; }
#footer .address { /*margin-top: 100px;*/ padding-top: 50px; background: #6a5e5e; height: 285px; text-align: center; width: 2000px; margin-left: -405px; }
#footer .address h2 { margin-bottom: 40px; }
#footer .address p { color: #fff; line-height: 1.7857142857; }
#footer .address p::before { display: block; width: 0; height: 0; margin-top: calc((1 - 1.7857142857) * .5em); content: ""; }
#footer .address p::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 1.7857142857) * .5em); content: ""; }
#footer .address p.live { font-size: 15px; }
#footer .address p.tel { font-size: 18px; }
#footer .address .flex { margin-top: 10px; justify-content: center; align-items: center; color: #fff; }
#footer .address .flex .small { font-size: 18px; }
#footer .address .flex .large { font-size: 30px; }
#footer .address .flex .ja { font-size: 16px; }
#footer .address .bnr_cor { margin-top: 45px; }
#footer .copy { padding: 10px 0; font-size: 12px; line-height: 1; text-align: right; padding-right: 20px; }

/*----------------------------------------------------
	フッター　
----------------------------------------------------*/
.f_chainlist iframe { margin-left: -405px; }

.f_chain { font-family: "游ゴシック", "Yu Gothic", sans-serif; background: #f5f2ea; }
.f_chain .f_cont { padding-top: 65px; }
.f_chain .f_cont .list { position: relative; z-index: 1; padding-left: 45px; padding-right: 20px; display: flex; width: 1000px; flex-wrap: wrap; }
.f_chain .f_cont .list .header { font-size: 25px; padding-right: 45px; line-height: 1.5em; padding-bottom: 75px; position: relative; }
.f_chain .f_cont .list .header::before { position: absolute; content: ''; width: 1px; height: 150px; background: #7e3838; top: -65px; left: -25px; }
.f_chain .f_cont .list .header h3 { margin-bottom: 0; }
.f_chain .f_cont .list .area { padding-right: 95px; }
.f_chain .f_cont .list .area h4 { color: #7e3838; font-size: 16px; padding-bottom: 18px; }
.f_chain .f_cont .list .area ul li { font-size: 14px; padding-bottom: 18px; }
.f_chain .f_cont .list .area ul li:last-of-type { padding-bottom: 0; }
.f_chain .f_cont .list .area ul li a { text-decoration: none; color: #000000; }
.f_chain .f_cont .list .area:nth-of-type(4) { padding-right: 0; }
.f_chain .f_cont .list .area:nth-of-type(5) { padding-right: 77px; }
.f_chain .f_cont .list .area:nth-of-type(6) { padding-right: 95px; }
.f_chain .f_cont .list .area:nth-of-type(7) { padding-right: 0; }
.f_chain .f_cont .list .area:nth-of-type(8) { padding-top: 75px; }
.f_chain .f_cont .f_map { margin-left: 500px; margin-top: -454px; padding-bottom: 40px; }

/*----------------------------------------------------
	ページトップ
----------------------------------------------------*/
.spt { width: 930px; text-align: right; margin: 15px 20px 20px 0px; }

.sptl { width: 100px; float: right; margin: 15px 20px 20px 0px; }

/*----------------------------------------------------
	共通
----------------------------------------------------*/
/*背景*/
.bg01 { background: #7e3838; }

.bg02 { background: #000000; }

.bg03 { background: #FFF; }

/* リスト */
ul.dots li { position: relative; padding-left: 1em; line-height: 2; }
ul.dots li:before { content: '\0025aa'; display: block; position: absolute; top: 0; left: 0; }

ul.square li { position: relative; padding-left: 1em; line-height: 2; }
ul.square li:before { content: '■'; display: block; position: absolute; top: 0; left: 0; }

/*----------------------------------------------------
	共通　table　テーブル設定
----------------------------------------------------*/
.table { font-size: 15px; line-height: 2; }
.table div { display: flex; }
.table div dt, .table div dd { display: flex; justify-content: center; flex-direction: column; }
.table div > dt { padding: 30px 10px; width: 125px; flex-shrink: 0; flex-grow: 0; text-align: center; background-color: #FFF; border-bottom: 1px solid #ebebea; align-items: center; }
.table div > dd { padding: 30px 10px 30px 50px; width: 100%; background-color: #ebebea; border-bottom: 1px solid #FFF; }
.table div > dd.has-table { padding: 0; }
.table div > dd .table_inner div { border-bottom: 1px solid #f5f2ea; }
.table div > dd .table_inner div:last-child { border-bottom: 0; }
.table div > dd .table_inner div > dd { border-bottom: 0; }
.table div > dd .table_inner dt { background: transparent; text-align: left; }
.table div:last-of-type > dt, .table div:last-of-type > dd:last-of-type { border-bottom: none; }

.table_cont { border: 1px solid #bbbbbb; padding-left: 50px; padding-right: 50px; }
.table_cont .tr { display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; align-items: center; border-bottom: 1px solid rgba(187, 187, 187, 0.3); padding-top: 50px; padding-bottom: 50px; }
.table_cont .tr h4 { font-weight: bold; flex-basis: 240px; max-width: 240px; font-family: "游ゴシック", "Yu Gothic", sans-serif; }
.table_cont .tr p { flex-basis: calc(100% - 240px); max-width: calc(100% - 240px); }

/*----------------------------------------------------
	中ページ　共通　
----------------------------------------------------*/
/*----------------------------------------------------
	客室 iframe
----------------------------------------------------*/
.ro-iframe { /*font-family: $base-font;*/ /*position: relative;*/ }
.ro-iframe .content { width: 1150px; margin-left: auto; margin-right: auto; }
.ro-iframe .content .info { 		/*left: 50%; 	translate: -50%;
		position:absolute;*/ margin-top: 45px; }
.ro-iframe .content .info .txt .tit h3 { font-size: 36px; font-weight: 600; letter-spacing: 0.08em; }
.ro-iframe .content .info .txt .tit h3 .en { font-weight: normal; font-family: "optima", sans-serif; color: #7e3838; font-size: 25px; letter-spacing: 0.02em; transform: scale(1.1, 1); }
.ro-iframe .content .info .txt p { margin-top: 20px; letter-spacing: 0.05em; }
.ro-iframe .content .detail { gap: 60px; margin-top: 20px; }
.ro-iframe .content .detail .left, .ro-iframe .content .detail .right { width: 545px; letter-spacing: 0.05em; }
.ro-iframe .content .detail .left .tit04, .ro-iframe .content .detail .right .tit04 { color: #7e3838; }
.ro-iframe .content .detail table { line-height: 1.4em; }
.ro-iframe .content .detail table th { text-align: left; font-weight: 500; }
.ro-iframe .content .detail table td { font-weight: 500; }
.ro-iframe .content .detail .chu { padding-top: 15px; }
.ro-iframe .content .booking { width: 150px; margin-left: auto; margin-right: auto; margin-top: 30px; }

#room iframe { margin-top: 100px; }

/*----------------------------------------------------
	3box
----------------------------------------------------*/
.box3 .wrp { width: 1150px; }
.box3 .wrp .content { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 50px; }
.box3 .wrp .content h4 { margin-top: 20px; font-size: 20px; line-height: 1.7; }
.box3 .wrp .content p { margin-top: 5px; }

/*20250529追記*/
.box3 .wrp02 { width: 1190px; }
.box3 .wrp02 .content { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 68px; }
.box3 .wrp02 .content h4 { margin-top: 20px; font-size: 20px; line-height: 1.7; }
.box3 .wrp02 .content p { margin-top: 5px; }

/*----------------------------------------------------
	2box
----------------------------------------------------*/
.box2 .wrp { width: 1150px; }
.box2 .wrp .content { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; }
.box2 .wrp .content h4 { margin-top: 20px; font-size: 20px; line-height: 1.7; }
.box2 .wrp .content p { margin-top: 5px; }

/*----------------------------------------------------
	パーツ
----------------------------------------------------*/
.tit05 { font-size: 36px; font-weight: 600 !important; letter-spacing: 0.08em; }
.tit05 .en { font-weight: normal; font-family: "optima", sans-serif; color: #7e3838; font-size: 25px; letter-spacing: 0.02em; display: inline-block; margin-top: 12px; }

.tit07 { font-size: 36px; font-weight: 600 !important; letter-spacing: 0.08em; padding-bottom: 40px; text-align: center; }
.tit07 .en { font-weight: normal; font-family: "optima", sans-serif; color: #7e3838; font-size: 25px; letter-spacing: 0.02em; }

.all .b-cont:first-of-type { margin-top: 180px; }

.one-sec .b-cont + .b-cont { margin-top: 100px; }

.tit06 { font-size: 20px; letter-spacing: 0.08em; line-height: 1.5; }

.b-cont + .b-cont { margin-top: 120px; }

.s-area + .s-area { margin-top: 100px; }

.b-cont { font-weight: 500 !important; margin-top: 180px; }
.b-cont:first-child { margin-top: 180px; }
.b-cont .b-cent { margin-left: auto; margin-right: auto; margin-top: 40px; width: 200px; }
.b-cont .b-rt { margin-left: auto; margin-top: 40px; width: 200px; }
.b-cont .lr-cont + .lr-cont { margin-top: 100px; }
.b-cont .lr-cont-s + .lr-cont-s { margin-top: 100px; }
.b-cont .f-box + .f-box { margin-top: 60px; }
.b-cont .lr-cont + .f-box { margin-top: 60px; }
.b-cont .lr-cont-s + .f-box { margin-top: 60px; }

.lar-box iframe { width: 2000px; height: 630px; margin-left: -405px; }
.lar-box .img { width: 2000px; margin-left: -405px; }
.lar-box .text { padding-left: 20px; padding-right: 20px; }
.lar-box .text .tit05 { margin-top: 30px; }
.lar-box .text .tit07 { margin-top: 30px; }
.lar-box .text p { margin-top: 20px; }
.lar-box .f-box { margin-top: 60px; }
.lar-box .tx-flex { padding-left: 20px; padding-right: 20px; display: flex; margin-top: 20px; }
.lar-box .tx-flex p { width: 700px; padding-right: 30px; margin-right: 40px; border-right: 1px solid #414042; }
.lar-box .tx-flex p.chu { border-right: none; margin-top: 20px; }
.lar-box .tx-flex .detail { display: flex; flex-wrap: wrap; flex-grow: 1; width: 380px; line-height: 1.4; }
.lar-box .tx-flex .detail dt { width: 90px; margin-right: 1em; position: relative; margin-top: 20px; }
.lar-box .tx-flex .detail dt:first-child { margin-top: 0; }
.lar-box .tx-flex .detail dd { width: calc(100% - 95px - 1em); margin-top: 20px; }
.lar-box .tx-flex .detail dd:first-of-type { margin-top: 0; }

.mid-box iframe { width: 1190px; height: 639px; }
.mid-box .text { padding-left: 20px; padding-right: 20px; }
.mid-box .text .tit05 { margin-top: 30px; }
.mid-box .text .tit07 { margin-top: 30px; }
.mid-box .text p { margin-top: 20px; }
.mid-box .tx-flex { padding-left: 20px; padding-right: 20px; display: flex; margin-top: 20px; }
.mid-box .tx-flex p { width: 700px; padding-right: 30px; margin-right: 40px; border-right: 1px solid #414042; }
.mid-box .tx-flex .detail { display: flex; flex-wrap: wrap; flex-grow: 1; width: 380px; line-height: 1.4; }
.mid-box .tx-flex .detail dt { width: 90px; margin-right: 1em; position: relative; margin-top: 20px; }
.mid-box .tx-flex .detail dt:first-child { margin-top: 0; }
.mid-box .tx-flex .detail dd { width: calc(100% - 95px - 1em); margin-top: 20px; }
.mid-box .tx-flex .detail dd:first-of-type { margin-top: 0; }
.mid-box .f-box { margin-top: 60px; }

.lr-cont { display: flex; gap: 60px; }
.lr-cont.left { margin-left: -405px; }
.lr-cont.left .text { width: 535px; }
.lr-cont.right { margin-right: -405px; flex-direction: row-reverse; }
.lr-cont iframe { width: 1000px; height: 639px; }
.lr-cont .img { width: 1000px; }
.lr-cont .text { padding-left: 20px; padding-right: 20px; width: 535px; }
.lr-cont .text .tit05 { margin-top: 40px; }
.lr-cont .text .tit07 { margin-top: 40px; }
.lr-cont .text .tit04 { margin-top: 40px; font-weight: 500; margin-bottom: 22px; padding-bottom: 10px; width: 100%; border-bottom: 1px solid #bbbbbb; position: relative; font-size: 20px; color: #7e3838; }
.lr-cont .text .tit04::before { content: ''; position: absolute; width: 130px; height: 1px; background: #7e3838; bottom: -1px; }
.lr-cont .text p { margin-top: 20px; }
.lr-cont .text p.chu { margin-top: 20px; }

.lr-cont-s { display: flex; gap: 60px; padding-left: 20px; padding-right: 20px; }
.lr-cont-s.left .text { width: 540px; }
.lr-cont-s.right { flex-direction: row-reverse; }
.lr-cont-s iframe { width: 1000px; height: 630px; }
.lr-cont-s .text { width: 540px; margin-top: 60px; }
.lr-cont-s .text p { margin-top: 20px; }
.lr-cont-s .text p.chu { margin-top: 20px; }

.t-spec { background: #ebebeb; padding: 40px 30px; /*width: 1150px;*/ }
.t-spec > div + div { margin-top: 40px; }
.t-spec .tit04 { color: #7e3838; padding-bottom: 10px; }
.t-spec .text-fl .detail { display: flex; flex-wrap: wrap; flex-grow: 1; line-height: 1.4; margin-top: 5px; }
.t-spec .text-fl .detail dt { width: 145px; margin-right: 1em; position: relative; margin-top: 15px; }
.t-spec .text-fl .detail dt:first-child { margin-top: 0; }
.t-spec .text-fl .detail dd { width: calc(100% - 145px - 1em); margin-top: 15px; }
.t-spec .text-fl .detail dd:first-of-type { margin-top: 0; }
.t-spec .spec-fl { display: flex; gap: 50px; }
.t-spec .spec-fl > div { width: 540px; }
.t-spec .spec-fl > div .detail { display: flex; flex-wrap: wrap; flex-grow: 1; width: 380px; line-height: 1.4; margin-top: 5px; }
.t-spec .spec-fl > div .detail dt { width: 95px; margin-right: 1em; position: relative; margin-top: 15px; }
.t-spec .spec-fl > div .detail dt:first-child { margin-top: 0; }
.t-spec .spec-fl > div .detail dd { width: calc(100% - 95px - 1em); margin-top: 15px; }
.t-spec .spec-fl > div .detail dd:first-of-type { margin-top: 0; }

.slick-pager-container.to_left { position: absolute; right: 0; margin-right: 340px; bottom: -30px; }
.slick-pager-container.to_right { position: absolute; left: 0; margin-left: 360px; bottom: -30px; }

/*----------------------------------------------------
	過ごし方_キャラクター配置（AL日暮里）
----------------------------------------------------*/
#cha1 { position: relative; }
#cha1 .cha1 { position: absolute; display: flex; align-items: flex-end; right: -30px; bottom: 10px; }
#cha1 .cha1 span { text-align: right; line-height: 1.2; }
#cha1 .cha1 img { width: 150px; }

#cha2 { position: relative; }
#cha2 .cha2 { position: absolute; display: flex; align-items: flex-end; right: 0; bottom: 0; }
#cha2 .cha2 span { text-align: right; line-height: 1.2; }
#cha2 .cha2 img { width: 140px; }

/*----------------------------------------------------
	スライダー
----------------------------------------------------*/
/*----------------------------------------------------
	横一定スライダー
----------------------------------------------------*/
/*----------------------------------------------------
	汎用
----------------------------------------------------*/
/* 余白 */
.mar3 { margin: 3px; }

.mar5 { margin: 5px; }

.mar7 { margin: 7px; }

.mar10 { margin: 10px; }

.mt4 { margin-top: 4px; }

.mt5 { margin-top: 5px; }

.mt10 { margin-top: 10px; }

.mt15 { margin-top: 15px; }

.mt20 { margin-top: 20px; }

.mt25 { margin-top: 25px; }

.mt30 { margin-top: 30px; }

.mt35 { margin-top: 35px; }

.mt40 { margin-top: 40px; }

.mt45 { margin-top: 45px; }

.mt50 { margin-top: 50px; }

.mt60 { margin-top: 60px; }

.mt70 { margin-top: 70px; }

.mt80 { margin-top: 80px; }

.mt90 { margin-top: 90px; }

.mt100 { margin-top: 100px; }

.mt120 { margin-top: 120px; }

.mt150 { margin-top: 150px; }

.mt170 { margin-top: 170px; }

.mt200 { margin-top: 200px; }

.mb0 { margin-bottom: 0px !important; }

.mb5 { margin-bottom: 5px; }

.mb10 { margin-bottom: 10px; }

.mb15 { margin-bottom: 15px; }

.mb20 { margin-bottom: 20px; }

.mb30 { margin-bottom: 30px; }

.mb40 { margin-bottom: 40px; }

.mb50 { margin-bottom: 50px; }

.mb70 { margin-bottom: 70px; }

.ml1 { margin-left: 1px; }

.ml2 { margin-left: 2px; }

.ml5 { margin-left: 5px; }

.ml8 { margin-left: 8px; }

.ml10 { margin-left: 10px; }

.ml12 { margin-left: 12px; }

.ml15 { margin-left: 15px; }

.ml20 { margin-left: 20px; }

.ml22 { margin-left: 22px; }

.ml25 { margin-left: 25px; }

.ml30 { margin-left: 30px; }

.ml35 { margin-left: 35px; }

.ml40 { margin-left: 40px; }

.ml45 { margin-left: 45px; }

.ml50 { margin-left: 50px; }

.ml53 { margin-left: 53px; }

.ml60 { margin-left: 60px; }

.ml65 { margin-left: 65px; }

.ml70 { margin-left: 70px; }

.ml80 { margin-left: 80px; }

.ml100 { margin-left: 100px; }

.ml120 { margin-left: 120px; }

.ml130 { margin-left: 130px; }

.ml150 { margin-left: 150px; }

.ml170 { margin-left: 170px; }

.ml180 { margin-left: 180px; }

.ml200 { margin-left: 200px; }

.ml250 { margin-left: 250px; }

.ml300 { margin-left: 300px; }

.mr5 { margin-right: 5px; }

.mr10 { margin-right: 10px; }

.mr12 { margin-right: 12px; }

.mr15 { margin-right: 15px; }

.mr20 { margin-right: 20px; }

.mr25 { margin-right: 25px; }

.mr30 { margin-right: 30px; }

.mr35 { margin-right: 35px; }

.mr40 { margin-right: 40px; }

.mr100 { margin-right: 100px; }

.pad5 { padding: 5px; }

.pad10 { padding: 10px; }

.pt0 { padding-top: 0 !important; }

.pt10 { padding-top: 10px; }

.pt15 { padding-top: 15px; }

.pt20 { padding-top: 20px; }

.pt25 { padding-top: 25px; }

.pt40 { padding-top: 40px; }

.pb0 { padding-bottom: 0 !important; }

.pl10 { padding-left: 10px; }

.pl20 { padding-left: 20px; }

.pr10 { padding-right: 10px; }

.pr20 { padding-right: 20px; }

/* 横幅 */
.w100 { width: 100px; }

.w120 { width: 120px; }

.w130 { width: 130px; }

.w150 { width: 150px; }

.w160 { width: 160px; }

.w170 { width: 170px; }

.w175 { width: 175px; }

.w177 { width: 177px; }

.w190 { width: 190px; }

.w193 { width: 193px; }

.w200 { width: 200px; }

.w202 { width: 202px; }

.w205 { width: 205px; }

.w220 { width: 220px; }

.w230 { width: 230px; }

.w250 { width: 250px; }

.w260 { width: 260px; }

.w270 { width: 270px; }

.w280 { width: 280px; }

.w300 { width: 300px; }

.w305 { width: 305px; }

.w315 { width: 315px; }

.w320 { width: 320px; }

.w350 { width: 350px; }

.w360 { width: 360px; }

.w370 { width: 370px; }

.w380 { width: 380px; }

.w390 { width: 390px; }

.w400 { width: 400px; }

.w410 { width: 410px; }

.w415 { width: 415px; }

.w420 { width: 420px; }

.w430 { width: 430px; }

.w440 { width: 440px; }

.w450 { width: 450px; }

.w480 { width: 480px; }

.w500 { width: 500px; }

.w522 { width: 522px; }

.w545 { width: 545px; }

.w620 { width: 620px; }

.w720 { width: 720px; }

.w735 { width: 735px; }

.w800 { width: 800px; }

.w850 { width: 850px; }

.w860 { width: 860px; }

.w950 { width: 950px; }

/* テキスト */
.chu { font-size: 13px !important; line-height: 1.5384615385 !important; }

.txt_c { text-align: center !important; }

.txt_r { text-align: right !important; }

.ls-1 { letter-spacing: -1px; }

.ls-2 { letter-spacing: -2px; }

.txt_clm2 { columns: 2; }

.color-01 { color: #7e3838 !important; }

.t_white h2, .t_white h3, .t_white h4, .t_white h5, .t_white p, .t_white a, .t_white * { color: #FFF; }

/*======================================

	hack - 各種cssハック - for IE7

=======================================*/
/*======================================

	hack - 各種cssハック - for IE6

=======================================*/

/*# sourceMappingURL=common.css.map */
