@charset “UTF-8”;

/*===============================
	配置
================================*/

.all_warp {
	max-width: 100%;
	margin: 0 auto;
	padding: 0;
}

.positionRelative{
	position: relative;/*親要素に*/
}

.positionAbsol {
    position: absolute;/*絶対配置*/
}

/* display */
.flex{
	display: flex;
}
.inlineBlock{
	display: inline-block;/*中身に合わせた最小の横幅*/
}
.flexWrap{
	flex-wrap: wrap;
}

.contentDisplay{
	display: contents;
}
.tableDisplay{
	display: table;
}
.blockDisplay{
	display: block;
}
.justifyCenter{
	justify-content: center;
}
.justifyStart{
	justify-content: flex-start;
}
.justifyEnd{
	justify-content: flex-end;
}
.justifySpaceAround{
	justify-content:space-around;
}
.justifySpaceBetween{
	justify-content: space-between;
}

.alignBase{
	align-items: baseline;
}

.alignCenter{
	align-items: center;
}
.alignStretch{
    align-items: stretch;/*初期値/子要素を上下の余白を埋めるように配置*/
}

.textCenter{
	text-align: center;
}
.txtagein_c{
    text-align: center;
}
.textCenter-important{
    text-align: center!important;
}

.textRight{
    text-align: right;
}
.txtagein_r{
    text-align: right;
}
.textRight_impor {
    text-align: right!important;
}

.textLeft{
    text-align: left;
}
.textLeft-important{
    text-align: left!important;
}

.verticaltop{
    vertical-align: top;
}

.txtalignSt{
    text-align: start;
}

.txtalignJus {
    text-align:justify
}/*各行の両端を揃えていっぱいにテキストを配置(均等割付)*/



/* 高さ中央 */

.dgrid {
    display: grid;
    /*height: 100%;　要：高さ指定*/
    margin: 0;
    align-items: center;
    justify-content: center; 
}

.dtabele {
    display: table;
    height: 100%;
}

.dtabele_cell {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
}

.dtabelecell_only {
    display:table-cell;
}/* 要　高さ指定 */


/**/


/* blocKをcenterに text-align:center;併用 */
.blocCenter_innerLeft{
  display: inline-block;
  text-align: left;
}/* 中左寄せ */
/**/

.blocC_innerC{
  display: inline-block;
  text-align: center;
}


/* ex */
.contents_bace {
   display: flex;
   flex-wrap: wrap;
   /*width: 600px;*/
}

/* 縦に均等 */
.contents_vertica {
  display:flex;
  flex-flow: column;
  justify-content:space-between;
}

/*===============================
	center
================================*/
div.conta_care {
    height: calc(100% - 240px);
    position: relative 
}
div.container_care {　/*子クラス*/
    margin: 0;
    /*background:  ;*/
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%) 
}


/* 配置中央 */

.in_block_center {
	display: inline-block;
	margin: 0 auto;
}

.block_center {
	display: block;
	margin: 0 auto;
}


/**/
.box__center {
    position: relative;
    border-radius: 5px;
    text-align: center;
    max-width: 800px;
    margin: 0 auto; 
}


.box__center_860 {
    position: relative;
    /*padding: 20px;*/
    text-align: center;
    max-width: 860px;
    margin: 0 auto; 
}


.box__center_1000 {
    position: relative;
    text-align: center;
    max-width: 1000px;
    margin: 0 auto; 
}

.box__center_1080 {
    position: relative;
    /*padding: 20px;*/
    text-align: center;
    max-width: 1080px;
    margin: 0 auto;	
}

.box_wrap1380 {
    display: flex;
    max-width: 1380px;
 
        /*並び順*/
        /*
        flex-start：左寄せ（デフォルト）
        flex-end：右寄せ
        center： 中央寄せ
        space-between：残り余白の均等割り 
        space-around：左右余白 ＋ 均等割り
        justify-content: space-around;
        */
    justify-content: space-between;
    margin: 0;
    padding: 0;
}


/* sp */
.sp_box__center {
    position: relative;
    text-align: center!important;
    max-width: 850px;
    margin: 0 auto; 
}

.sp_box_100vw_c {
    position: relative;
    text-align: center!important;
    width: 100vw;
    margin: 0 auto; 
}



/*  */

.flex_center {
    /* ベンダープレフィックスは省略 */
    display: flex;
    justify-content: center; /* 子要素を中央揃え */
    position: relative;
}
.p_right {
    position: absolute;
    right: 0; /* 右寄せ　乗せたいobjectに */
}

.p_absolute {
    position: absolute;
}


.verticaltop{
	vertical-align: top;
}

.verticalbaseline{
	vertical-align: baseline;
}

.verticalmiddle{
	vertical-align: middle;
}

.middle_impo{
    vertical-align: middle!important;
}

.verticalbottom{
	vertical-align: bottom;
}


/* float */

  .flort_left{
      float: left;
    }
  .flort_right{
      float: right;
    }
  .flort_clear{
      clear: both;
    }



/* overflow */

.overflowHidden{
	overflow: hidden;
}


/*===============================
	画像文字乗せ用
================================*/

.conta_baceposi {
    position: relative 
}
.container_posiAbs {　/*子クラス*/
    margin: 0;
    /*background:  ;*/
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%) 
}



/*===============================
	分割
================================*/


.calc_2 {
	width: calc(100% / 2);	
}

.calc_2_98 {
	width: calc(98% / 2);	
}

.calc_2_96 {
	width: calc(96% / 2);	
}


.calc_3 {
	width: calc(100% / 3);	
}

.calc_4 {
	width: calc(100% / 4);	
}



/*===============================
	重なりセット　/　レイヤー重なり順 
================================*/

.under {
    position:  absolute;        /* 位置指定 */
    /* top: 70px;*/                  /* 位置指定 */
    /*left: 100px;*/                /* 位置指定 */
    z-index: 0;               /* 最低面 */
}


.under20 {
    position:  absolute;        /* 位置指定 */
    /* top: 70px;*/                  /* 位置指定 */
    /*left: 100px;*/                /* 位置指定 */
    z-index: 20;               /* 最低面 */
}

.z_20 {
  z-index: 21;
  position: absolute;
  /*left: 20px;*/
  /*top: 20px;*/
}


.under30 {
    position:  absolute;        /* 位置指定 */
    /* top: 70px;*/                  /* 位置指定 */
    /*left: 100px;*/                /* 位置指定 */
    z-index: 30;               /* 最低面 */
}

.under40 {
    position:  absolute;        /* 位置指定 */
    /* top: 70px;*/                  /* 位置指定 */
    /*left: 100px;*/                /* 位置指定 */
    z-index: 40;               /* 最低面 */
}
.under50 {
    position:  absolute;        /* 位置指定 */
    /* top: 70px;*/                  /* 位置指定 */
    /*left: 100px;*/                /* 位置指定 */
    z-index: 50;               /* 最低面 */
}


.under70 {
    position:  absolute;        /* 位置指定 */
    /* top: 70px;*/                  /* 位置指定 */
    /*left: 100px;*/                /* 位置指定 */
    z-index: 70;               /* 最低面 */
}


.under2 {
    position:  relative;        /* 位置指定 */
    z-index: 80;                /* 上 */
}

.z_100 {
  z-index: 100; /* 上 */
  position: relative;
}

.cover1 {
    position:  relative;        /* 位置指定 */
    z-index: 201;                /* 上 */
}

.cover1000 {
    position:  relative;        /* 位置指定 */
    z-index: 1000;                /* 上 */
}

.under {
    position:  absolute;        /* 位置指定 */
    /* top: 70px;*/                  /* 位置指定 */
    /*left: 100px;*/                /* 位置指定 */
    z-index: 0;               /* 最低面 */
}


/*===============================
    前・非表示
================================*/

ul._none {
    list-style:none;
}

/*===============================
    配置下揃え
================================*/

ul .btn-buttom1 {
  display: flex;
  justify-content: space-between;
}
 
li .btn-buttom2{
  display: flex;
  flex-direction: column;
  width: 30%;
}
 
.btn-buttom3 {
  margin-top: auto;
}



/* ================
    ul li 
====================*/

ul.li_disk li {
    list-style-type: disc!important;
}

/* ================
    その他
====================*/

@media (max-width: 1100px) {
    .sp_ptxt_left {
        text-align: left;/* 本文用 */
    }
}


/* 前  */
.check-icon01:before {
  content: "・";
  padding-right : 5px;/*文字との隙間*/
  color: #dd0000;/*アイコンの色*/
}


/* ================
    配置 
====================*/
/* 親要素に
.positionRelative{
    position: relative;
}*/
.txt_up {
    position: absolute;
    top:0;
    left:0;
    /*font-size:30px;*/
    /*color: red;*/
    padding:0;
    margin:0;
}
/* ================*/

/*斜めコンテンツ*/

.clippathRight{
    clip-path: polygon(0 0, 78% 0%, 100% 100%, 0% 100%);
}

/*.skew > * {
  transform: skewY(10deg);
}*/
.clippathLeft{
    clip-path: polygon(22% 0, 100% 0, 100% 100%, 0% 100%);

}

