@charset "UTF-8";
/*
 Theme Name: SANGO Child
 Theme URI: https://saruwakakun.design
 Author: SARUWAKA
 Author URI: https://saruwakakun.com
 Template: sango-theme
 Version: 4.0
*/
/*こちらはSANGOの子テーマ用CSSです。以下にCSSを記入していきましょう。*/





/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */



#header { 
	width:100%; 
	height:100px; 
	z-index:20; 
	position:relative; 
	top:0px; 
/* 	position:absolute;  */
}

.home #header { 
	width:100%; 
	height:60px; 
	z-index:20; 
/* 	position:relative;  */
	top:0px; 
	position:absolute; 
}


/* ロゴ */
#header_logo {
  position:absolute; left:20px; top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); z-index:30;
  display:-webkit-box; display:-ms-flexbox; display:-webkit-flex; display:flex; align-items: center;
}
#header_logo .logo { line-height:1; margin:0; padding:0; font-weight:500; }
#header_logo img { display:block; -webkit-transition: opacity 0.35s ease-in-out; transition: opacity 0.35s ease-in-out; }
#header_logo img:hover { opacity:0.5; }
#header_logo .mobile_logo_image { display:none; }
#header_logo .mobile_logo_text { display:none; }
#header_logo .pc_logo_image.type2 { display:none; }


/* 説明文 */
#header_logo .desc { font-size:14px; font-weight:normal; margin:0 0 0 25px; }
#header_logo .desc.mobile { display:none; }


/* ボタン */
#footer_button { display:none; }


/* グローバルメニュー */
.pc #global_menu { position:absolute; z-index:20; top:1px; right:20px; }
.pc #global_menu > ul {
  position:relative; text-align:center; margin:0;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.pc #global_menu > ul > li { position:relative; line-height:1; float:left; text-align:center; font-size:14px; }

.pc #global_menu > ul > li > a {
  padding:0 18px; font-size:14px; text-decoration:none; height:100px; line-height:100px; display:block; position:relative; overflow:hidden;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
.pc #global_menu > ul > li.active > a, .pc #global_menu > ul > li.current-menu-item > a { }
.pc #global_menu a:hover { }

.pc #global_menu ul ul { display:none; width:100%; min-width:240px; position:absolute; top:100px; left:0px; margin:0; padding:0; }
.pc #global_menu ul ul ul { left: 100%; top:0; margin:0; border:none; }
.pc #global_menu ul ul li { line-height:1.5; padding:0; margin:0; text-align:left; position:relative; display:block; }
.pc #global_menu ul ul a { font-size:14px; display:block; border:none; position:relative; padding:14px 25px 12px; height:auto; line-height:1.6; margin:0; }
.pc #global_menu ul ul a:hover { text-decoration:none; border:none; }

.pc #global_menu ul ul li.menu-item-has-children > a:before {
/*   font-family:'design_plus';  */
	content:'\e910'; color:#ddd; display:block; position:absolute; right:9px; top:23px; font-size:9px; height:9px; line-height:9px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* 子メニューを逆方向にする */
.pc #global_menu ul > li.type2 > ul { left:auto; right:0%; }
.pc #global_menu ul ul > li.type2 ul { left:auto; right:100%; }
.pc #global_menu ul ul li.menu-item-has-children.type2 > a:before { content:'\e90f'; right:auto; left:9px; }


/* 子メニューにhoverした時headerの色を変える */
.pc #header.active { border-bottom:1px solid #ddd; }
.pc #header.active #header_logo .pc_logo_image.type1 { display:none; }
.pc #header.active #header_logo .pc_logo_image.type2 { display:block; }


/* その他 */
.pc #menu_button { display:none; }
.pc #header_mobile_banner { display:none; }
#drawer_menu { display:none; }


/* 固定ヘッダー */
.pc .header_fix { }/* #header_inner height + #header margin bottom */
.pc body.home.header_fix { padding-top:0; }
.pc body.admin-bar.header_fix { padding-top:112px; }
.pc .header_fix #header {
  position:fixed; top:0px; left:0px; z-index:200; width:100%; box-shadow:0 0 15px 5px rgba(0,0,0,0.1); border:none;
  -webkit-animation: slide_down_menu 0.5s ease; animation: slide_down_menu 0.5s ease;
}
.pc .header_fix #header #header_logo .pc_logo_image.type1 { display:none; }
.pc .header_fix #header #header_logo .pc_logo_image.type2 { display:block; }
.pc .admin-bar.header_fix { padding-top:190px; }
@-webkit-keyframes slide_down_menu {
  0% { top:-100px; }
  100% { top:0px; }
}
@keyframes slide_down_menu {
  0% { top:-100px; }
  100% { top:0px; }
}


/* パンくずリンク */
#bread_crumb { width:100%; border-bottom:1px solid #ddd; background:#fff; }
#bread_crumb ul { width:800px; margin:0 auto; padding:0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
#bread_crumb li { display:inline; font-size:12px; padding:0 0 0 17px; margin:0 5px 0 0; height:60px; line-height:60px; position:relative; color:#000; }
#bread_crumb li:before {
  font-family:'design_plus'; content:'\e910'; font-size:9px; width:9px; height:9px; line-height:9px; color:#999;
  display:block; position:absolute; left:0; top:-1px; bottom:0; margin-top:4.5px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li a { color:#999; }
#bread_crumb li a:hover { }
#bread_crumb li.category a { display:none; }
#bread_crumb li.category a:first-of-type, #bread_crumb li.category a:only-of-type { display:inline; }
#bread_crumb li.home { padding:0; }
#bread_crumb li.home:before { display:none; }
#bread_crumb li.home a {
  text-indent:-200%; overflow:hidden; width:12px; height:13px; display:inline-block; top:2px; position:relative;
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#bread_crumb li.home a:before {
  font-family:'design_plus'; content:'\e90c'; width:12px; height:13px; line-height:13px;
  text-indent:0; display:block; position:absolute; top:0px; bottom:0; left:0px; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}


/* アニメーションの設定 */
.pc #header { opacity:0; }
.pc #header.no_animate { opacity:1; }
.pc #header.animate {
  -webkit-animation: opacityAnimation 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 2.0s;
  animation: opacityAnimation 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) forwards 2.0s;
}





.pc #global_menu > ul > li > a {
    padding: 0 18px;
    font-size: 14px;
    text-decoration: none;
    height: 100px;
    line-height: 100px;
    display: block;
    position: relative;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#global_menu > ul > li > a {
    color: #ffffff;
}



@media screen and (max-width: 1050px) {
    #header {
        color: #000000;
        background: #fff;
    }
}
#header, #header a, #menu_button:before {
    color: #ffffff;
}
@media screen and (max-width: 1050px) {
    #header {
        height: 70px;
        position: relative;
    }
}


/* メニューボタン */
#menu_button {
  position:absolute; z-index:50; right:0px;
  top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
  display:inline-block; font-size:11px; width:70px; height:70px; line-height:70px; text-decoration:none; text-align:center;
}
#menu_button span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#menu_button:before {
  color:#fff; 
/* 	font-family:'design_plus';  */
	display:block; position:absolute; top:0; bottom:0; left:0; right:0; margin:auto;
  font-size:18px; width:18px; height:18px; line-height:18px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#menu_button:before { 
/* 	content:'\f0c9'; 
  font-family: "Font Awesome 5 Free";
	 */
	
	
	  font-family: "Font Awesome 6 Free";
  font-weight: 900;         /* Solid アイコンは 900 */
  content: "\f0c9";         /* bars の Unicode */
	
}
#menu_button:hover, a.menu_button.active { }
#menu_button:hover:before, #menu_button.active:before { }
@media screen and (max-width:900px) {
  #menu_button { width:70px; height:70px; line-height:70px; }
}
@media screen and (max-width:650px) {
  #menu_button { width:60px; height:60px; line-height:60px; }
}

@media screen and (max-width: 1050px) {
    #header a:hover, #menu_button:hover:before {
        color: #999999;
    }
}
@media screen and (max-width: 1050px) {
    #menu_button span {
        text-indent: 100%;
        white-space: nowrap;
        overflow: hidden;
        display: block;
    }


    #menu_button:before {
        color: #000;
/*         font-family: 'design_plus'; */
		 font-family: "Font Awesome 6 Free";
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
        font-size: 18px;
        width: 18px;
        height: 18px;
        line-height: 18px;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
}


/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */

@media screen and (max-width: 500px) {
  .footer-links {
    display: flex;
    gap: 1.5rem;
    list-style: none;
    padding: 0;
    margin: 0;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
}



#footer { width:100%;     max-width: 100%; background:#f2f2f2; }
#footer_inner { width:800px; margin:0 auto; padding:100px 0 70px; position:relative; max-width: 100%;}


/* バナー一覧 */
#footer_banner { margin:0 0 50px 0; }
#footer_banner .item { width:395px; height:150px; overflow:hidden; float:left; margin:0 10px 10px 0; }
#footer_banner .item:nth-child(2n) { margin-right:0; }
#footer_banner .item a { display:block; width:100%; height:100%; position:relative; z-index:1; }
#footer_banner .item .caption {
  z-index:3; position:absolute; text-align:center; left:0; right:0;
  top:50%; -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
#footer_banner .item .title { line-height:1.6; }
#footer_banner .item .desc { line-height:1.8; }
#footer_banner .item .overlay { width:100%; height:100%; position:absolute; top:0px; left:0px; z-index:2; }
#footer_banner .item .image { width:100%; height:100%; position:absolute; top:0px; left:0px; z-index:1; }


/* ロゴ */
#footer_logo { margin:0 auto; text-align:center; }
#footer_logo .logo { line-height:1; padding:0; font-weight:500; }
#footer_logo img { display:block; margin:0 auto 25px; }
#footer_logo .pc_logo_text { display:block; margin:0 0 25px; }
#footer_logo .mobile_logo_image { display:none; }
#footer_logo .mobile_logo_text { display:none; }


/* インフォメーション */
#footer_information { text-align:center; margin:0 0 20px 0; }
#footer_information p { font-size:16px; line-height:1.8; }


/* SNSボタン */
#footer_social_link { margin:0 0 30px 0; font-size:0; z-index:20; text-align:center; }
#footer_social_link li { display:inline-block; margin:0 10px; position:relative; }
#footer_social_link li a {
  display:block; overflow:hidden; width:20px; height:20px; line-height:20px; text-align:center; position:relative;
}
#footer_social_link li a span { display:none; }
#footer_social_link li a:before {
  font-family:'design_plus'; font-size:15px; display:block;
  position:absolute; top:1px; left:0; right:0;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#footer_social_link li a:hover:before { color:#aaa; }
#footer_social_link li.twitter a:before { content:'\e904'; }
#footer_social_link li.facebook a:before { content:'\e902'; }
#footer_social_link li.insta a:before { content:'\ea92'; }
#footer_social_link li.pinterest a:before { content:'\e905'; }
#footer_social_link li.google a:before { content:'\e900'; }
#footer_social_link li.youtube a:before { font-family: 'footer_bar'; content: "\ea9d"; }
#footer_social_link li.contact a:before { content:'\f003'; }
#footer_social_link li.rss a:before { content:'\e90b'; }


/* フッターメニュー */
#footer_menu { width:100%; background:#fff; height:54px; line-height:54px; }
#footer_menu ul { margin:0; font-size:0; z-index:20; text-align:center; }
#footer_menu ul li { display:inline; font-size:14px; margin:0 19px; }
#footer_menu ul li a:hover { color:#666; }


/* コピーライト */
#copyright { width:100%; line-height:60px; height:60px; font-size:12px; z-index:10; text-align:center; background:#000; color:#fff; }


/* ページ上部へ戻るボタン */
#return_top { display:block; }
#return_top a { background:#222; display:block; height:60px; width:60px; line-height:60px; text-decoration:none; z-index:100; position:relative; }
#return_top a:hover { color:#fff !important; }
#return_top span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#return_top a:before {
  color:#fff; 
/* 	font-family:'design_plus';  */
	 font-family: "Font Awesome 6 Free";
/* 	content:'\e911';  */
	content: "\f077";
	font-weight: 900;
	font-size:12px; display:block; width:12px; height:12px;
  position:absolute; left:0; right:0; top:4px; margin:auto;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#return_top {
  position:fixed; right:0px; bottom:0px; z-index:999;
  -webkit-transform: translate3d(0,100%,0); transform: translate3d(0,100%,0);
  -webkit-transition: -webkit-transform 0.35s; transition: all 0.35s;
}
#return_top.active { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }
body.light_color #return_top a { color:#000; }


/* 固定コンテンツ */
#fixed_footer_content {
  position:fixed; bottom:0; left:0; width:100%; height:120px; color:#fff; padding:40px; z-index:9999;
  -webkit-box-sizing:border-box; box-sizing:border-box;
  -webkit-transform: translate3d(0,100%,0); transform: translate3d(0,100%,0);
  -webkit-transition: -webkit-transform 0.35s; transition: transform 0.35s;
}
#fixed_footer_content.active { -webkit-transform: translate3d(0,0,0); transform: translate3d(0,0,0); }
#fixed_footer_content a { color:#fff; text-decoration:none; }
#fixed_footer_content .content_left {
  position:absolute; left:40px; top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
  width:-webkit-calc(100% - 530px); width:calc(100% - 530px);
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#fixed_footer_content .has_image .content_left { width:-webkit-calc(100% - 840px); width:calc(100% - 840px); }
#fixed_footer_content .button {
  position:absolute; right:55px; top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
  min-width:300px; height:55px; line-height:55px; text-align:center; display:inline-block; padding:0 40px 0 10px; font-size:16px;
}
#fixed_footer_content .button:after {
  font-family:'design_plus'; content:'\e910'; color:#fff; font-size:14px; display:block; position:absolute; top:1px; right:16px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#fixed_footer_content .image {
  position:absolute; right:55px; max-width:728px;
  top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
}
#fixed_footer_content .image img { width:100%; max-width:100%; height:auto; display:block; }
#fixed_footer_content .close {
  position:absolute; right:5px; top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
  display:block; width:40px; height:40px; border-radius:100%;
}
#fixed_footer_content span { display:none; }
#fixed_footer_content .close:before {
  font-family:'design_plus'; color:#fff; font-size:20px; display:block;
  content:'\e91a'; position:absolute; top:10px; left:10px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#fixed_footer_content .close:hover { background:rgba(255,255,255,0.1); }
#fixed_footer_content .catch { font-size:21px; margin:0; line-height:1.5; }
#fixed_footer_content .desc { font-size:14px; margin:5px 0 0 0; line-height:2; }
#fixed_footer_content .pr { background:#fff; color:#333; display:inline; font-size:12px; margin:5px 15px 0 0; padding:0 12px; border-radius:2px; height:20px; line-height:20px; float:left; }
#fixed_footer_content .pr1 { display:none; }

#fixed_footer_content .free {
  width:100%; padding-right:100px; position:absolute; left:40px;
  top:50%; -webkit-transform: translateY(-50%); transform: translateY(-50%);
  -webkit-box-sizing:border-box; box-sizing:border-box;
}
#fixed_footer_content .post_content p { margin:0; line-height:1.6; }


.footer-links {
  display: flex;
  gap: 1.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
	    justify-content: center;
}

.footer-link {
  text-decoration: none;
  color: #666;
}

.footer-link:hover {
  color: #000;
}










nav#global_menu {
    position: absolute;
    z-index: 20;
    top: 1px;
    right: 20px;
}

ul#menu-\%e3\%82\%b5\%e3\%83\%b3\%e3\%83\%97\%e3\%83\%ab\%e3\%83\%a1\%e3\%83\%8b\%e3\%83\%a5\%e3\%83\%bc {
    position: relative;
    text-align: center;
    margin: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}


li#menu-item-68 {
    position: relative;
    line-height: 1;
    float: left;
    text-align: center;
    font-size: 14px;
}

#global_menu > ul > li > a {
    color: #ffffff;
    padding: 0 18px;
    font-size: 14px;
    text-decoration: none;
    height: 100px;
    line-height: 100px;
    display: block;
    position: relative;
    overflow: hidden;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

li#menu-item-67 {
    position: relative;
    line-height: 1;
    float: left;
    text-align: center;
    font-size: 14px;
}


.popular-section__heading {
    font-family: 'Lusitana', serif;
    font-weight: 700;
    text-align: center;
    margin-right: auto;
    margin-left: auto;
    display: block;
    font-size: 24px;
  
}

h2.popular-section__decorative-title{
    font-size: 20px !important;
    border-left: 0px solid var(--wp--preset--color--sango-main)!important;
    padding: 0em!important;
    background: unset!important;
    color: #323232!important;
    margin-bottom: 15px!important;
	text-align:center;
	    margin: 0em 0 0.7em!important;
}






.am_fv {
    position: relative;
    width: 100% !important;
    height: 650px;
    overflow: hidden;
}
.am_fv .am_background-video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto !important;
    height: auto !important;
    min-width: 100%;
    min-height: 100%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    z-index: 0;
}
.am_overlay {
    position: absolute;
    inset: 0;
    background-color: rgba(0,0,0,0.30);
    z-index: 1;
    pointer-events: none;
}
.fv-top .sgb-full-bg__content {
    max-width: 100%;
    padding-left: 0px;
    padding-right: 0px;
}
.fv-top .sgb-full-bg.sgb-full-bg--first-no-margin {
    padding-top: 0px !important;
}
.page-forfront {
    margin-top: 0px !important;
}

.am_content {
    position: relative;
    top: 41%;
    z-index: 2;
}
section.am_fv {
    background-color: rgb(0 0 0 / 30%);
}
.entry-content .am_center img {
    max-width: 100%;
    height: auto;
    width: 500px;
}
.am_center {
    text-align: center;
}
@media (min-aspect-ratio: 16/9) {
  .am_fv .am_background-video {
      min-width: 120%;
  }
}




.home #content.page-forfront .entry-content {
    padding: 0 !important;
    max-width: 100% !important;
	}
.home .wrap, .maximg, .home .single #inner-content, .home .page:not(.no-bg) #inner-content, .home .error404 #inner-content, .home .inner-footer{
width: 100%!important;
    }

@media only screen and (min-width: 769px) {
    #content.page-forfront {
        margin-top: 0;
        padding: 0px;
    }
}








.top-btn-cta a {
    display: flex
;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 100%;
    max-width: 300px;
    height: 60px;
    font-size: 18px;
    font-weight: normal;
    text-decoration: none;
    transition: 0.1s;
    border-radius: 7px;
    margin-right: auto;
    margin-left: auto;
    background-color: var(--wp--preset--color--sango-accent);
    color: #fff;
    transition: all 0.1s 
ease-in-out;
	font-weight:700;
}

.top-btn-cta a:hover {
    opacity: 0.7;
    transition: all 0.1s 
ease-in-out;
}

.top-btn-cta a::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 20px;
    transform: rotate(45deg) translateY(-50%);
    width: 6px;
    height: 6px;
    border-width: 2px 2px 0 0;
    border-style: solid;
    border-color: #fff;
}


body #inner-content .main-bc {
    background-color:#f58700;
}





.wpcf7-submit {
    background-color: var(--wp--preset--color--sango-accent)!important;
}





/* sidebar */

#sidebar1 div#block-11, 
#sidebar1 div#block-10{
    margin-bottom: 0px;
    color: #ffffff;
    background-color: #000;
    border-radius: 4px 4px 0px 0px;
    padding-left: 12px;
}

#sidebar1 div#block-11 p, 
#sidebar1 div#block-10 p{
	 margin-top: 4px;
		 margin-bottom: 4px;
	}
ul.wp-block-latest-posts__list.wp-block-latest-posts{
    border-radius: 0px 0px 4px 4px !important;
}


.rlmg img {
    transition: .1s;
}



/* drower */
@media screen and (max-width: 1050px) {
    .open_menu #drawer_menu {
        right: 0;
        box-shadow: -5px 0 20px 0 rgba(0, 0, 0, 0.4);
    }
}

#drawer_menu {
    background: #222222;
}
@media screen and (max-width: 1050px) {
    #drawer_menu {
        display: block;
        position: fixed;
        top: 0px;
        right: -400px;
        width: 400px;
        height: 100%;
        background: #333;
        overflow: auto;
        z-index: 9999;
        -webkit-transition: right 300ms 
cubic-bezier(0.190, 1.000, 0.220, 1.000);
        transition: right 300ms 
cubic-bezier(0.190, 1.000, 0.220, 1.000);
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-overflow-scrolling: touch;
    }
}







/* ハンバーガーの見た目 */
.hamburger {
  display: none;
  position: fixed;
  top: 12px;
  right: 12px;
  width: 44px; height: 44px;
  z-index: 10001; 
  background: transparent;
  border: 0;
  cursor: pointer;
}
.hamburger span {
  display:block;
  width: 28px; height: 2px;
  margin: 6px auto;
  background:#fff;
}
@media screen and (max-width:1050px){
  .hamburger { display:block; }
}







/* オーバーレイ */
#drawer_overlay{
  display:none;
  position:fixed;
  inset:0;
  z-index: 9998; 
  background: rgba(0,0,0,.4);
}
@media screen and (max-width:1050px){

  body.open_menu #drawer_menu { right: 0; }
}



@media (max-width:1050px){
  #drawer_menu { right:-400px; width:400px; }

  body.open_menu #drawer_menu {
    right:0;
    box-shadow:-5px 0 20px rgba(0,0,0,.4);
  }
}



.home #content.page-forfront {
    padding: 0px;
	}

