@charset "utf-8";

#root {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
    position: relative;
}

body {
    width: 100%;
    -webkit-text-size-adjust: ('none' '100%' 'auto');
    word-wrap: break-word;
    overflow-wrap: break-word;
    background-color: #FFFBF5;
}

.telWrap {
    color: inherit;
}

.telWrap:hover {
    color: inherit;
    text-decoration: underline;
}

.hidden {
    overflow: hidden;
}

.opacity_hover:hover {
    opacity: .7;
}

.cursol-pointer {
    cursor: pointer;
}

.fontA {
    font-family: "RocknRoll One", sans-serif;
  	font-weight: 400;
}

.fontB {
    font-family: "Roboto", sans-serif;
  	font-weight: bold;
}

.fontC {
    font-family: "LINE Seed JP", sans-serif;
  	font-weight: 700;
}

.inLink a {
    text-decoration: underline;
    color: inherit;
}

.inLink a:hover {
    text-decoration: unset;
}

.hover01 {
    transition: all .5s;
}

.hover01:hover {
    transform: scale(0.9);
}

.paddingWr01 {
    padding: 0 15px;
}

.imgShadow img,.imgShadow02 {
    filter: drop-shadow(10px 10px 10px rgb(0 0 0 / 20%));
}

/*---- 新TEL.js用 --------------------------------------------------------------*/

/* 電話番号定数のチラつき対策 */
p.tel,
p.fax,
a[data-cke-saved-href^="tel:電話番号"] {
    opacity: 0;
}

.gjs-dashed p.tel,
.gjs-dashed p.fax,
.gjs-dashed a[data-cke-saved-href^="tel:電話番号"] {
    opacity: 1;
}

/*---------------------------------------------------------------------------*/

/*---------------------------------------------------------------------------*/

/*-- 共通パーツ --------------------------------------------------------------*/

.comBtn01 {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	max-width: 280px;
	width: 100%;
	height: 54px;
	background-color: #EE552E;
	color: #ffffff;
	font-family: "RocknRoll One", sans-serif;
	font-weight: 400;
	text-decoration: none;
	letter-spacing: 0.02em;
	padding-right: 20px;
	letter-spacing: 0.1em;
	font-size: 20px;
	border-top-left-radius: 6px;
	border-bottom-left-radius: 6px;
	clip-path: polygon(0% 0%, calc(100% - 15px) 0%, 100% 50%, calc(100% - 15px) 100%, 0% 100%);
	transition: all .5s;
}

.comBtn01::after {
    content: "";
    position: absolute;
    right: 11px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg) skew(12deg, 12deg);
    width: 16px;
    height: 16px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
}

.comBtn01:hover {
    background: #f76c49;
    color: #fff;
}

.comBtn01.webBtn01 {
    background-color: #FFBA53;
    color: #333;
    gap: 20px;
    font-size: 18px;
}

.comBtn01.webBtn01>img {
    max-width: 20px;
    width: 100%;
    display: block;
}

.comBtn01.webBtn01::after {
    border-color: #333;
}

.comBtn01.webBtn01:hover {
    background-color: #FFCA7B;
}

.comBtn01.comBtnColor01 {
    background-color: #FFBA53;
    color: #333;
    gap: 20px;
    font-size: 18px;
}

.comBtn01.comBtnColor01>img {
    max-width: 20px;
    width: 100%;
    display: block;
}

.comBtn01.comBtnColor01::after {
    border-color: #333;
}

.comBtn01.comBtnColor01:hover {
    background-color: #FFCA7B;
}

.comBtn01.bgBtn {
    clip-path: polygon(15px 0%, 100% 0%, 100% 100%, 15px 100%, 0% 50%);
    padding-left: 20px;
    padding-right: 0;
}

.comBtn01.bgBtn::after {
    left: 11px;
    right: auto;
    transform: translateY(-50%) rotate(-135deg) skew(12deg, 12deg);
}

.testW {
    max-width: 530px;
    width: 100%;
}

.polygonFrame {
    width: 100%;
    padding-top: 86.57%;
    position: relative;
    background-color: #FFF3DE;
    mask-image: url("/system_panel/uploads/images/polygon_mask.png");
    -webkit-mask-image: url("/system_panel/uploads/images/polygon_mask.png");
    mask-size: cover;
    -webkit-mask-size: cover;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
}

.polygonFrame>img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.titEn01 {
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    font-size: 35px;
    letter-spacing: 0.07em;
    line-height: 1.323em;
}

.titEn02 {
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    font-size: 40px;
    letter-spacing: 0.07em;
    line-height: 1.323em;
}

.titJa01 {
    font-family: "RocknRoll One", sans-serif;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 1.72em;
}

.titJa01>strong {
    font-size: 22px;
    font-weight: 400;
}

.titJa02 {
    font-family: "RocknRoll One", sans-serif;
    font-weight: 400;
    font-size: 25px;
    letter-spacing: 0.05em;
    line-height: 1.72em;
}

.titEn03 {
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    font-size: 40px;
    letter-spacing: 0.07em;
    line-height: 1.323em;
}

.titJa03 {
    font-family: "RocknRoll One", sans-serif;
    font-weight: 400;
    font-size: 25px;
    letter-spacing: 0.05em;
    line-height: 1.4445em;
}

.text01 {
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 2.188em;
}

.text01 strong {
    font-size: 18px;
    font-weight: bold;
    color: #FF9901;
}

.textStrongColor01 strong {
    color: #EE552E;
}

.textShadow {
    text-shadow: 0 3px 20px rgb(0 0 0 / 50%);
}

/*-- ****** -----------------------------------------------------------------*/
/*-- 共通カラー --------------------------------------------------------------*/

.colorWhite {
    color: #fff;
}

.colorYellow {
    color: #FFBA53;
}

.colorOrange {
    color: #EE552E;
}

.orangeBg {
    background-color: #FFDDBB;
}

.houdannBg {
    background: url(/system_panel/uploads/images/houdann_bg.jpg);
    background-repeat: repeat;
    background-position: top left;
    background-size: auto;
}

.renngaBg {
    background: url(/system_panel/uploads/images/rennga_bg.jpg);
    background-repeat: repeat;
    background-position: top left;
    background-size: auto;
}

/*-- inCover -----------------------------------------------------------------*/

.inCoverWr {
    max-width: 1920px;
    width: 100%;
    height: 270px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: auto;
    position: relative;
    padding: 0 15px;
}

.inCoverWr:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    margin: auto;
    background: rgb(0 0 0 / 30%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.inCovBox {
    max-width: 1220px;
    width: 100%;
    margin: auto;
    position: relative;
    text-align: center;
    color: #fff;
    padding-top: 10px;
}

.inCovTitle {
    font-family: "RocknRoll One", sans-serif;
    font-weight: 400;
    font-size: 30px;
    letter-spacing: 0.05em;
    line-height: 1.44em;
    text-shadow: 0 2px 20px rgb(0 0 0 / 50%);
}

/*-- ****** -----------------------------------------------------------------*/
/*-- パンくずリスト ----------------------------------------------------------*/

.pankuzuWr {
    margin: 0 auto;
    max-width: 1920px;
    width: 100%;
    padding: 0 15px;
}

.pankuzuAr {
    margin: 0 auto;
    padding: 15px 0;
    max-width: 1220px;
    width: 100%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    font-weight: bold;
    font-size: 14px;
}

.pankuzuLink {
    display: flex;
    align-items: center;
    color: #333;
}

.pankuzuLink:hover {
    color: #333;
}

.pankuzuTxt {
    padding: 0 0 2px;
    font-size: 14px;
}

.pankuzuLink > p {
    text-decoration: none;
}

.pankuzuLink:hover > p {
    text-decoration: underline;
}
/*-- coverTxt ---------------------------------------------------------------*/



/*---------------------------------------------------------------------------*/
/*-- header -----------------------------------------------------------------*/



/*--is-animation--*/



/*---------------------------------------------------------------------------*/
/*-- footer -----------------------------------------------------------------*/

.fTownSetBox {
    letter-spacing: 0.05em;
    line-height: 1.563em;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 5px;
}

.fTownSet {
    display: inline-flex;
    align-items: center;
}

.fTownSetDeco {
    margin: 0 15px;
    display: none;
}

.fSnsSetBox {
    gap: 25px;
}

.fWebBtn {
    max-width: 300px;
    width: 100%;
    height: 65px;
    border-radius: 6px;
    background-color: #FFBA53;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px 8px 5px 5px;
    gap: 20px;
    font-family: "RocknRoll One", sans-serif;
    font-weight: 400;
    font-size: 22px;
    letter-spacing: 0.1em;
    transition: all .5s;
}

.fWebBtn>p {
    color: #333;
}

.fWebBtn>img {
    max-width: 24px;
    width: 100%;
    display: block;
}

.fWebBtn:hover {
    background-color: #FFCA7B;
}

.fTownTextBr br {
    display: block;
}

/*---------------------------------------------------------------------------*/

/*---topMain----------------------------------------------*/



/*----*/



/*----kasou------------------------------------------------*/

.inBalanceImg01>img {
    justify-content: center;
    align-items: center;
    position: absolute;
    display: flex;
    top: 0;
    right: 0;
    max-height: 100%;
    height: auto;
    max-width: 100%;
    width: auto;
    bottom: 0;
    left: 0;
    margin: auto;
}

.objectFitImg {
    justify-content: center;
    align-items: center;
    position: absolute;
    display: flex;
    top: 0;
    right: 0;
    max-height: 100%;
    height: 100%;
    max-width: 100%;
    width: 100%;
    bottom: 0;
    left: 0;
    margin: auto;
    object-fit: cover;
}


a[data-lightbox] {
    position: relative;
    display: block;
}

a[data-lightbox]:before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.3);
    opacity: 0;
    transition: .5s;
}

a[data-lightbox]:hover:before {
    opacity: 1;
    transition: .5s;
}

.galleryImg01>a[data-lightbox] {
    padding-top: 100%;
}

.galleryImg01>a[data-lightbox] img {
    max-height: 100%;
    height: 100%;
    max-width: 100%;
    width: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

/*---form--*/

.formTh {
    padding: 15px 15px 15px 15px;
    background-color: #485053;
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.formTd {
    padding: 15px 15px 15px 15px;
    background: #fff;
    color: #555;
}

.formRow {
    border: 1px solid #ccc;
}

.contTable {
    border: 1px solid #ccc;
}

.requiredText {
    padding: 1px 4px 1px 4px;
    color: #fff;
    font-size: 14px;
    background-color: #ff1f1f;
}

.privacyBox {
    border: 1px solid #ccc;
    padding: 15px 2% 15px 2%;
    width: 100%;
    overflow-y: scroll;
    background: #fff;
    height: 250px;
}

/*----*/

.inTb {
    margin-top: 35px;
}

.inTh {
    background-color: #FFBA53;
    padding: 15px 15px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    width: 100%;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.05em;
}

.inTd {
    position: relative;
    z-index: 1;
    flex: 1;
    width: 100%;
    padding: 15px 15px;
    font-size: 14px;
    letter-spacing: 0.05em;
    font-weight: 400;
    line-height: 1.563em;
}

.inTd:before {
    content: "";
    position: absolute;
    z-index: -1;
    background-color: #FFF3DE;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.inTr {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    gap: 2px;
    margin-top: 2px;
    flex-direction: column;
}

.inTb .inTr:first-child {
    margin-top: 0;
}

/*----*/


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:375px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 375px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:414px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.titJa01 {
    font-size: 18px;
}

.titJa01>strong {
    font-size: 22px;
}



    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 414px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:544px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.fTownTextBr br {
    display: none;
}

.titJa02 {
    font-size: 35px;
}

.titJa01 {
    font-size: 30px;
}

.titJa01>strong {
    font-size: 35px;
}

.titJa01 {
    font-size: 25px;
}

.titJa01>strong {
    font-size: 30px;
}

    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 544px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:768px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


.fTownSetDeco {
    display: block;
}

.fTownSetBox {
    flex-direction: row;
    gap: 0;
}

.titEn01 {
    font-size: 30px;
}

.titEn02 {
    font-size: 50px;
}

.titJa01 {
    font-size: 18px;
}

.titJa01>strong {
    font-size: 28px;
}

.titEn03 {
    font-size: 50px;
}

.titJa03 {
    font-size: 35px;
}

.titEn02 {
    font-size: 60px;
}

.inCoverWr {
    height: 370px;
}

.inCovTitle {
    font-size: 40px;
}

.inTb {
    margin-top: 70px;
}

.inTh {
    padding: 20px 40px;
    width: 250px;
    font-size: 16px;
    text-align: center;
    justify-content: center;
}

.inTd {
    width: auto;
    padding: 20px 40px;
    font-size: 16px;
}

.inTr {
    flex-direction: row;
}
	
    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:992px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.titEn01 {
    font-size: 40px;
}

.titEn02 {
    font-size: 60px;
}

.titJa01 {
    font-size: 30px;
}

.titJa01>strong {
    font-size: 40px;
}

    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 992px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1024px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.text01 {
    font-size: 16px;
}

.text01 strong {
    font-size: 20px;
}

    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 1024px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1200px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


.inCoverWr {
    height: 470px;
}

.inCovTitle {
    font-size: 50px;
}

    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 1200px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1400px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.titEn01 {
    font-size: 50px;
}

.titEn02 {
    font-size: 70px;
}

.titJa01 {
    font-size: 40px;
}

.titJa01>strong {
    font-size: 50px;
}

.titJa02 {
    font-size: 50px;
}

.titEn03 {
    font-size: 60px;
}

.titJa03 {
    font-size: 45px;
}

.titEn02 {
    font-size: 80px;
}


    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 1400px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (min-width:1600px) {

    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
    /* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.titEn01 {
    font-size: 65px;
}

.titEn02 {
    font-size: 110px;
}

.titJa01 {
    font-size: 50px;
}

.titJa01>strong {
    font-size: 65px;
}

    /* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

}

/* min-width: 1600px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */