@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* POWERED BY ブロックここから */
#header .p-corpBrand,
#fix_header .p-corpBrand{
  display:inline-flex;
  flex-direction:row;
  align-items:center;
  gap:8px;
  line-height:1;
  margin-left:10px;
}

/* ラベル */
.p-corpBrand .p-poweredby{
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  color:#fecce3;
  text-transform:uppercase;
  margin:0;
}

/* .p-corpBrand .p-poweredby.-badge{
  display:inline-block;
  padding:2px 6px;
  border:1px solid #d8dce3;
  border-radius:999px;
  background:#f7f8fa;
  color:#5a6775;
  font-size:10px; font-weight:700; letter-spacing:.06em;
} */

/* コーポレートロゴ本体：通常ヘッダー（比率維持・少し小さめ） */
#header .p-corpLogo{
  display:inline-flex;
  align-items:center;
  height:calc(var(--logo_h, 48px) * 0.78);
}
#header .p-corpLogo img{
  height:100%;
  width:auto;
}

/* 固定ヘッダー時も同様 */
#fix_header .p-corpLogo{
  display:inline-flex;
  align-items:center;
  height:calc(var(--logo_h_fix, 28px) * 0.78);
}
#fix_header .p-corpLogo img{
  height:100%;
  width:auto;
}

/* 767px以下（スマホ）では非表示 */
@media (max-width: 767px){
  #header .p-corpBrand,
  #fix_header .p-corpBrand{
    display: none;
  }
}

/* footer
----------------------------------------------------*/
footer{
	clear:both;
	text-align:center;
	width:100%;
	background:#1e1e1e;
	color:#FFF;
	overflow:hidden;
	font-family:"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","Osaka","メイリオ",'Meiryo',"ＭＳ Ｐゴシック",verdana,arial, 'Lato', sans-serif;
	font-size:15px;
}

footer a:link, footer a:visited {
    color: #878787;
}

.footer_contents{
	margin:0px auto;
	width:calc(100% - 20px);
	max-width:1160px;
	padding:0 10px;
	overflow:hidden;
}

.footer_contents p#btn_pagetop{
	width:80px;
	height:80px;
	border-radius:40px;
	position:fixed;
	z-index:101;
	bottom:20px;
	right:20px;
	background:#c21972;
	text-align:center;
}

.footer_contents p#btn_pagetop:hover{
	background:#e82d90;
	transition:0.5s;
}

.footer_contents p#btn_pagetop img{
	padding-top:15px;
    width: 50px;
}

.footer_contents p#logo_footer{
	width:290px;
	padding:20px 10px 15px;
	float:left;
}

.footer_contents p#logo_footer img{
	width:100%;
}

.footer_contents p#tel_footer{
	width:559px;
	padding:22px 10px 20px;
	float:right;
}

.footer_contents p#tel_footer img{
	width:100%;
}

footer nav#nav_footer{
	clear:both;
	border-top:#646464 solid 1px;
	text-align:left;
	font-weight:700;
}

footer nav#nav_footer>ul{
	margin:25px auto;
	min-width:980px;
	max-width:1160px;
	padding:0 10px;
	overflow:hidden;
}

footer nav#nav_footer>ul>li{
	float:left;
	padding-right:calc(10px + 1.2vw);
}

footer nav#nav_footer>ul>li ul li,
footer nav#nav_footer>ul>li dl dt{
	padding-bottom:15px;
}

footer nav#nav_footer>ul>li dl dd{
	font-weight:300;
	padding-bottom:10px;
}

footer #footer03{
	padding:10px 0;
	color:#FFF;
	text-align:left;
	background:#A51F65;
}

footer #footer03 small{
	float:left;
}

footer #footer03 nav#l_nav_footer{
	float:right;
}

footer #footer03 nav#l_nav_footer ul a{
	display:inline-block;
	padding-left:20px;
}

footer #footer03 nav#l_nav_footer ul a,
footer #footer03 nav#l_nav_footer ul a:visited{
	color:#FFF;
}

.bnr_online{
    padding-bottom: 2em;
}

#bnr_footer{
    width: 40%;
    max-width: 300px;
    position: fixed;
    bottom: 60px;
    right: 0;
    z-index: 100;
}

#bnr_footer img{
    width: 100%;
}

small#copyright {
    font-size: smaller;
}

@media screen and (max-width: 480px) and (orientation: portrait) {
/* footer_info
----------------------------------------------------*/
#footer_info{
	padding-top:15px;
}

#footer_info ul.sp_min{
	text-align:center;
}

#footer_info ul.sp_min li{
	width:calc(47% - 8px);
	margin-bottom:6px;
	display:inline-block;
}

.footer_info_contact{
	width:calc(94% - 24px);
	border-radius:10px;
	margin:15px auto;
	padding:10px;
}

.footer_info_contact p#tel_footerinfo{
	float:left;
	width:100%;
	padding:6px 0 10px 0;
}

.footer_info_contact p#btn_footerinfo{
	float:none;
	width:100%;
	min-height:inherit;
	clear:both;
}

.footer_info_contact p#btn_footerinfo a{
	width:calc(100% - 50px);
	padding:5px 25px;
	text-align:center;
	font-size:110%;
	background:url(../img/common/ico_arrow02.png) no-repeat right 10px top 13px , #43b525;
	border-radius:5px;
}

.footer_info_contact p#btn_footerinfo a{
	border-radius:5px;
}

.footer_info_contact p#btn_footerinfo a span{
	font-size:90%;
}

/* footer
----------------------------------------------------*/
.footer_contents{
	min-width:100%;
	max-width:100%;
	width:100%;
	padding:0;
}

.footer_contents p#btn_pagetop{
	width:60px;
	height:60px;
	border-radius:30px;
	bottom:20px;
	right:20px;
}

.footer_contents p#btn_pagetop img{
	padding-top:10px;
	width:40px;
}

.footer_contents p#logo_footer{
	width:94%;
	padding:20px 3% 15px;
	float:none;
	border-bottom:#646464 solid 1px;
}

.footer_contents p#logo_footer img{
	width:70%;
}

.footer_contents p#tel_footer{
	width:94%;
	padding:22px 3% 20px;
	float:none;
}

.footer_contents p#tel_footer img{
	width:70%;
}

footer #footer03{
	padding:10px 0;
	text-align:center;
}

footer #footer03 small{
	float:none;
}

footer #footer03 nav#l_nav_footer{
	float:none;
}

footer #footer03 nav#l_nav_footer ul a{
	padding:0 20px;
}

.bnr_online{
    width: 100%;
    border-radius: 15px;
}
    
.bnr_online img{
    width: 100%;
}
    
#bnr_footer{
    bottom: 60px;
}

    
}

/* 以下、共通CSS */
/* インラインボタン */
.swl-inline-btn a {
    padding: .8em 1.5em;
}

/* 中央寄せ */
.center {
    text-align: center;
}

/* 引用元デザイン */
p.quote {
    color: #aaaaaa;
    font-size: 0.8em;
    margin-top: -20px;
}

p.quote a {
    color: #aaaaaa;
    text-decoration: none;
}

/* 色付き文字を太字に */
span.swl-inline-color {
    font-weight: bold;
}

/* テーブルデザイン */
.wp-block-table tbody {
  background-color: #ffffff;
}

figure.wp-block-table {
    font-size: 0.8em;
}

/* 強調デザイン */
.post_content strong {
  background: linear-gradient(transparent 60%, rgba(254, 198, 214, 0.6) 60%);
  padding: 0 2px 2px;
}

/* ヘッダーにボタンを設置 */
li.is-style-btn_normal.header-cta {
    height: auto;
    margin: auto;
    padding: 0 30px;
}

@media screen and (max-width: 960px){
	li.is-style-btn_normal.header-cta {
    margin-top: 30px;
}
}
li.is-style-btn_normal.header-cta a {
    padding: 15px 40px;
    color: #fff;
}

/* フロントページ */
.frontpage [class*=is-style-btn_] {
    margin-bottom: 0;
}

/* ウィジェットデザイン調整 */
.textwidget [class*=is-style-btn_] {
    margin-bottom: 0;
}