@charset "utf-8";
/*
Theme Name:astra_child
Template:astra
Version: 2.3.1
*/
		/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
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:visited{
		text-decoration: none;
	}

/* 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;
}
/* リセットCSSここまで */

/* Webフォント読み込み */
@font-face {
  font-family: 'Bristol'; /* 自分で決める任意のフォント名 */
  src: url('/wp/wp-content/customset/fonts/Bristol.woff2') format('woff2'), /* サーバー上のパスと形式 */
  font-weight: normal;
  font-style: normal;
  font-display: swap; /* フォント読み込み中の表示挙動 */
}

@font-face {
  font-family: 'Futura'; /* 自分で決める任意のフォント名 */
  src: url('/wp/wp-content/customset//fonts/Futura.woff2') format('woff2'), /* サーバー上のパスと形式 */
  font-weight: normal;
  font-style: normal;
  font-display: swap; /* フォント読み込み中の表示挙動 */
}

@font-face {
  font-family: 'Geometria'; /* 自分で決める任意のフォント名 */
  src: url('/wp/wp-content/customset/fonts/Geometria.woff2') format('woff2'), /* サーバー上のパスと形式 */
  font-display: swap; /* フォント読み込み中の表示挙動 */
}

/* 全般 */
/* テキストのサイズをrem指定する */
html{
    font-size: 10px;
}
body{
    font-size: 1.6rem;
}

/* h1で囲われたimgの下余白を削除する。 */
h1 img{vertical-align: bottom;}

/* Webフォント指定 */
.futura_f{
    font-family: 'Futura' !important; /* 自分で決める任意のフォント名 */
}

.bristol_f{
    font-family: 'Bristol' !important; /* 自分で決める任意のフォント名 */
}

.geometria_f{
    font-family: 'Geometria' !important; /* 自分で決める任意のフォント名 */
}

/* 全般 */
/* 左右上下中央寄せ */
.p_cc{
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
}

/* ホバーでポインターを表示させる */
.cursor_p,.matomete_h{
    cursor: pointer;
}

/* クリックできないようにする */
.pointer_no{
    pointer-events: none;
}


/* TOP */
/* テキスト自動縮小 */
.top_midashi h2{
    font-size: clamp(1.4rem, calc(1.3vw + 0.1rem), 2.5rem) !important;
}

.top_submidashi h2{
    font-size: clamp(1.2rem, calc(1vw + 0.1rem), 2rem) !important;
}

.top_subtitle p{
    font-size: clamp(1.2rem, calc(0.8vw + 0.1rem), 1.5rem) !important;
}

.top_hobun p{
    font-size: clamp(1.2rem, calc(0.74vw + 0.1rem), 1.4rem) !important;
}

.top_button span{
    font-size: clamp(1.2rem, calc(1.3vw + 0.1rem), 1.7rem) !important;
}

.top_kimonomidashi span{
	font-size: clamp(5.5rem, calc(6.8vw + 0.1rem), 13rem) !important;
}

.top_kimonomidashi{
	position: absolute !important;
    top:50% !important;
    transform: translateY(-50%) !important;
}

/* WEDDING DRESS */
.p_cc_wedding{
    position: absolute !important;
    top:47% !important;
    transform: translateY(-50%) !important;
}

/* TUXEDO */
.p_cc_groom{
    position: absolute !important;
    top:52% !important;
    transform: translateY(-50%) !important;
}

/* TREND */
.trend_m .elementor-wrapper {
    aspect-ratio: 960 / 1070;
}

/* KIMONO */
.matomete_h{
    transition: 0.5s !important;
}

.matomete_h:hover{
    opacity: 0;

}

/* TOP最下部の動画 */
.last_m .elementor-wrapper {
    aspect-ratio: 1920/833;
}
@media screen and (max-width:767px){
    .last_m .elementor-wrapper {
    aspect-ratio: 414/344;
}
}

@media screen and (min-width:1024px) and ( max-width:1200px) {
    /* ABOUT TREAT */
    .about_honbunbox{
        min-width: 1000px !important;
    }
}

    /* WEDDING DRESS */
@media screen and (max-width:767px){
    .p_cc_wedding{
    top:51% !important;
}
    /* TUXEDO */
.p_cc_groom{
    top:51% !important;
}

}

/* LITTLE BOOK OF TREAT  */
@media screen and (max-width:767px){
    .lbot_box{
    width: 95% !important;
    max-width: 360px !important;
}

}

/* タキシードページ */
.tuxedo_h2 h2{
    font-size: clamp(4rem, calc(3.6vw + 0.1rem), 6.9rem) !important;
}

.tuxedo_h3 h3{
    font-size: clamp(3rem, calc(3.1vw + 0.1rem), 6rem) !important;
}

.tuxedo_p p{
    font-size: clamp(1.2rem, calc(0.8vw + 0.1rem), 1.4rem) !important;

}
.p_cx{
    position: absolute;
    bottom: 10%;
    left: 50%;
    transform: translateX(-50%);
}

.about_linkset .elementor-widget-container{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px
}

.about_linkset h3{
    margin:0;
    font-family: "Geometria", Sans-serif;
    font-weight:bold;
    color:#707070;
    line-height:1;
    font-size: clamp(1.4rem, calc(1.3vw + 0.1rem), 2.5rem) !important;
}

.about_linkset a{
    font-size: clamp(1.2rem, calc(1.3vw + 0.1rem), 1.4rem) !important;
    color:#707070;
    border-bottom: 1px solid #4F4F4F75;
    transition: 0.5s;
    line-height: 1;
    padding-bottom: 2px;
    font-family: "Shippori Mincho", Sans-serif;
}

.link_p_cc{
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
}

.link_p_ctl{
        position: absolute !important;
    top: 50% !important;
    left: 0% !important;
    transform: translate(-50%, -50%) !important;
}

.link_p_ctr{
        position: absolute !important;
    top: 50% !important;
    left: 100% !important;
    transform: translate(-50%, -50%) !important;
}

.tuxedo_button span{
    font-size: clamp(1.2rem, calc(1.3vw + 0.1rem), 1.4rem) !important;
}

@media screen and (max-width:1024px){
.spo_p_cc{
        position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
}
    .link_p_cc{
    position: static !important;
    transform: none !important;
}
}
@media screen and (max-width:767px){
    .about_linkset{
    position: static !important;
}

}
.mv_tuxedo_order h2{
    font-size: clamp(1.6rem, calc(0.9vw + 0.1rem), 1.8rem) !important;
    font-family: "Shippori Mincho", Sans-serif !important;
}

/* タキシードの基本 */
.tuxedo_basic_eizih2 h2{
   font-size: clamp(3.2rem, calc(3.6vw + 0.1rem), 6.9rem) ;
}

.tuxedo_basic h2{
    font-size: clamp(1.6rem, calc(0.9vw + 0.1rem), 1.8rem) ;
}

.tuxedo_basic h3{
    font-size: clamp(2.4rem, calc(2.6vw + 0.1rem), 5rem) ;

}

.tuxedo_basic p{
    font-size: clamp(1.2rem, calc(0.8vw + 0.1rem), 1.6rem) ;

}

/* オーダータキシードの魅力 */
.mv_tuxedo_orderpage{
    color:#ffffff;
    text-align: center;
}

.japaneseh2{
    font-size: clamp(1.6rem, calc(0.9vw + 0.1rem), 1.8rem) ;
    font-family: "Shippori Mincho", Sans-serif;
    margin-bottom: 2.5em;
}

.eizih2{
    font-size: clamp(3.2rem, calc(3.6vw + 0.1rem), 6.9rem) ;
    font-family: "times-new-roman", Sans-serif;
    display: inline-block;
    margin-bottom: 0.2em;
    letter-spacing: 0.05em;
}

.top_gaiyo{
    font-size: clamp(1.2rem, calc(0.8vw + 0.1rem), 1.6rem) ;
    font-family: "Shippori Mincho", Sans-serif;
    line-height: 1.8em;

}

.p_c_order{
    position: absolute;
    top: 50%;
    right: 7%;
    transform: translateY(-50%);
}

.tuxedo_order p{
    font-size: clamp(1.2rem, calc(0.8vw + 0.1rem), 1.6rem) ;

}

@media screen and (max-width:767px){
    .p_c_order{
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

}

/*フッター*/
.ccp_ct{
    position: absolute !important;
    top: 50% !important;
    left: 0% !important;
    transform: translateY(-50%) !important;
}

.link_ico .elementor-button-text{
    display: block;
    margin-top: 0.3em !important;}


.f_menu span,.f_menu h3{
    font-size: clamp(1.2rem, calc(0.8vw + 0.1rem), 1.4rem) !important;
}

@media screen and (min-width:1024px) and ( max-width:1200px) {
    .long_menu span{
        text-align: justify;
    }
    .long_menu_br{
        display: none;
    }
}

@media screen and (max-width:767px){
    .ccp_ct{
    position: static !important;
}
}

/*BRANDS一覧*/

.brandslist_flex_set{
    display: grid;
  /* 1fr を3回繰り返す（＝等幅の3カラム） */
  grid-template-columns: repeat(3, max-content);
    gap: 2em 0em;
    justify-content: space-between;
}

.brandslist_flex_set .flex_item{
    width: 100%;
    justify-content: space-between;
    position: relative;

}

.blandsset .flex_set{
    display: flex;
    flex-direction: column;
    gap: 2em;

}

.blandsset a{
    width: 100%;
        position: relative;
    font-size: clamp(1.6rem, calc(1.8vw + 0.1rem), 3.5rem);
        font-family: "Apris", Sans-serif;
        color:#4F4F4F;
        line-height: 1em;
        transition: 0.5s;
        font-weight: 300;
        letter-spacing: 0.05em;
        position: relative;
    z-index:1;
}

.blandsset a:hover{
    color:#ffffff;
}

.brandslist_mv h2{
    font-size: clamp(3rem, calc(3.1vw + 0.1rem), 6rem) !important;
}

.blandsset img{
    max-width: 300px;
    width: 100%;
    aspect-ratio: 364 / 467;
    object-fit: cover;
    position: absolute;
    top: -9em !important;
    left: 25%;
    opacity: 0;
    transition: 0.5s;
}

.blandsset h3:hover ~ img{
    top: -10em !important;
    opacity: 1;

}

@media screen and (max-width:1024px){
    .blandsset img{
    display: none;
}
    .blandsset h3:hover ~ img{
    opacity: 0;

}
}

@media screen and (max-width:767px){
.brandslist_flex_set{
    grid-template-columns: 1fr;
}

.blandsset .flex_set{
    gap: 1.5em;

}

}

/*便利なCSS*/
/* ブラウザ幅により、表示非表示を切り替えるCSS：クラス名一覧
◆パソコンのみ表示する
pconly
◆タブレットのみ表示する
tbonly
◆スマホのみ表示する
sponly
◆パソコン～タブレットのみ表示する
pctbonly
◆タブレット～スマホのみ表示する
tbsponly
◆パソコン・スマホのみ表示する
pcsponly
 */
/* パソコン幅 */
    /* パソコンのみ表示する */
    .npconly{
        display: none !important;
    }
    .pconly{
        display: block !important;
    }
    /* タブレットのみ表示する */
    .tbonly{
        display: none !important;
    }
    /* スマホのみ表示する */
    .sponly{
        display: none !important;
    }
    /* パソコン～タブレットのみ表示する */
    .pctbonly{
        display: block !important;
    }
    /* タブレット～スマホのみ表示する */
    .tbsponly{
        display: none !important;
    }
    /* パソコン・スマホのみ表示する */
    .pcsponly{
        display: block !important;
    }
    @media screen and (max-width:1024px){
        .npconly{
            display: block !important;
        }
    }
/* タブレット幅 */

@media screen and (max-width:1024px){
    /* パソコンのみ表示する */
    .pconly{
        display: none !important;
    }
    /* タブレットのみ表示する */
    .tbonly{
        display: block !important;
    }
    /* タブレット～スマホのみ表示する */
    .tbsponly{
        display: block !important;
    }
    /* パソコン・スマホのみ表示する */
    .pcsponly{
        display: none !important;
    }
}
/* スマホ幅 */
@media screen and (max-width:767px){
    /* タブレットのみ表示する */
    .tbonly{
        display: none !important;
    }
    /* スマホのみ表示する */
    .sponly{
        display: block !important;
    }
    /* パソコン～タブレットのみ表示する */
    .pctbonly{
        display: none !important;
    }
    /* パソコン・スマホのみ表示する */
    .pcsponly{
        display: block !important;
    }
}

