@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
*/

/*============================================================================================
			Initialize
=============================================================================================*/
/*		html, body
=====================================================*/
html{
	font-size: 10px;
}
body{
  /* ベースが明朝体の場合以下を有効化
  font-family: YakuHanJPs, 'Roboto', "Noto Serif JP", "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", Georgia, "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  /* ベースがゴシック体の場合以下を有効化 */
  font-family: YakuHanJPs, 'Noto Sans JP', -apple-system, BlinkMacSystemFont, "Helvetica Neue", HelveticaNeue, "Segoe UI", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #222;
  font-size: 1.75rem;
  line-height: 2;
  -webkit-text-size-adjust: 100%;
}
@media (max-width: 960px){}
@media (max-width: 896px){}
@media (max-width: 782px){}
@media (max-width: 576px){}
@media (max-width: 374px){
  html {
    /* font-size: 2.6vw; */
  }
}



/*    a
=====================================================*/
a{
  color: inherit;
	text-decoration: inherit;
	font-size: inherit;
	text-align: inherit;
}


/*    img
=====================================================*/
img{
  line-height: 0;
  max-width: 100%;
  height: auto;
}


/*    button
=====================================================*/
button{
	font-size: inherit;
	font-family: inherit;
	border: none;
	padding: 0;
	cursor: pointer;
	background-color: transparent;
}
button:focus{
	outline: none;
}


/*    Form parts
=====================================================*/
select{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

/*    Superscript
=====================================================*/
sup{
	vertical-align: super;
	font-size: smaller;
}



/*    micro clearfix
=====================================================*/
.clearfix:before,
.clearfix:after{
	content: " ";
	display: table;
}
.clearfix:after{
	clear: both;
}
/* for IE */
.clearfix{
	*zoom: 1;/* hasLayout on */
}


/*    box sizing
=====================================================*/
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}


/*    word wrap
=====================================================*/
* {
	word-wrap: break-word;
}


/*============================================================================================
      Utility
=============================================================================================*/
/*    Display
=====================================================*/
/*-- PC --*/
.u_tbl{
  display: none!important;
}
.u_sp{
  display: none!important;
}
.u_pc{
  display: block!important;
}
.u_pc.u_inlineB{
  display: inline-block!important;
}
.u_pc.u_inline{
  display: inline!important;
}
@media (max-width: 896px){
  .u_pc{
    display: none!important;
  }
  .u_sp{
    display: none!important;
  }
  .u_tbl{
    display: block!important;
  }
  .u_tbl.u_pc{
    display: block!important;
  }
  .u_pc.u_inlineB{
    display: none!important;
  }
  .u_tbl.u_inlineB{
    display: inline-block!important;
  }
  .u_tbl.u_pc.u_inlineB{
    display: inline-block!important;
  }
  .u_pc.u_inline{
    display: none!important;
  }
  .u_tbl.u_inline{
    display: inline!important;
  }
  .u_tbl.u_pc.u_inline{
    display: inline!important;
  }
  .u_sp.u_tbl{
    display: block!important;
  }
  .u_sp.u_tbl.u_inlineB{
    display: inline-block!important;
  }
  .u_sp.u_tbl.u_inline{
    display: inline!important;
  }
}
/*-- SP --*/
@media (max-width: 576px){
  .u_pc{
    display: none!important;
  }
  .u_tbl{
    display: none!important;
  }
  .u_sp{
    display: block!important;
  }
  .u_tbl.u_pc{
    display: none!important;
  }
  .u_sp.u_tbl{
    display: block!important;
  }
  .u_sp.u_inlineB{
    display: inline-block!important;
  }
  .u_sp.u_tbl.u_inlineB{
    display: inline-block!important;
  }
  .u_sp.u_inline{
    display: inline!important;
  }
  .u_sp.u_tbl.u_inline{
    display: inline!important;
  }
}


/*    Contents
=====================================================*/
/*-- Images --*/
.u_img,
.u_img_def{
  display: block;
	line-height: 0;
}
.u_img img{
	display: block;
  width: 100%;
  margin: 0 auto;
}
.u_img_def img{
  display: block;
  margin: 0 auto;
}

/*-- Icon --*/
.u_ic{
  position: relative;
}
.u_ic::before,
.u_ic::after{
  content: "";
  margin: auto;
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 100% auto;
  position: absolute;
  pointer-events: none;
}

/* pattern background */
.u_bg{
  background-repeat: repeat;
  background-position: left top;
  background-size: 100% auto;
}

/*-- Clear text --*/
.u_clearTxt{
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}

/*-- Text Indent Small --*/
.u_indent{
	text-indent: -1em;
	padding-left: 1em;
}

/* Text Indent Large */
.u_indent_lg{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.u_indent_lg_hd{
	flex: 0 0 auto;
}


/*-- Text Align --*/
.u_alignC,
.u_alignC_spR,
.u_alignC_spL,
.u_alignC_mdL,
.u_alignC_mdR{
  text-align: center;
}
.u_alignL_spC,
.u_alignL_spR,
.u_alignL_mdC,
.u_alignL_mdR{
  text-align: left;
}
.u_alignR,
.u_alignR_spC,
.u_alignR_spL,
.u_alignR_mdC,
.u_alignR_mdL{
  text-align: right;
}

/*-- tbl --*/
@media (max-width: 896px){
  .u_alignL_mdC,
  .u_alignR_mdC{
    text-align: center;
  }
  .u_alignR_mdL,
  .u_alignC_mdL{
    text-align: left;
  }
  .u_alignL_mdR,
  .u_alignC_mdR{
    text-align: right;
  }
}

/*-- SP --*/
@media (max-width: 576px){
  .u_alignL_spC,
  .u_alignR_spC{
    text-align: center;
  }
  .u_alignR_spL,
  .u_alignC_spL{
    text-align: left;
  }
  .u_alignL_spR,
  .u_alignC_spR{
    text-align: right;
  }
}

/*-- Scroll prevent --*/
.u_scrollPrevent {
  overflow: hidden;
}
