@charset "utf-8";
/* CSS Document */
.Container {
    width:100%;
    max-width:1345px;
    padding:0 55px;
    margin:0 auto
}
.Container--fluid {
    max-width:100%;
    padding:0 55px
}
@media screen and (max-width: 768px) {
    .Container {
        max-width:100%;
        padding:0 20px
    }
    .Container--fluid {
        padding:0 20px
    }
}
.Footer {
    padding:34px 0;
    background:linear-gradient(97.61deg, #2495eb 13.66%, #0081e3 102.36%);
    color:#ffffff
}
.Footer__Title,.Footer .Link--primary:hover {
    color:#ffffff
}
.Footer .Form__Input::-moz-placeholder {
    color:#ffffff
}
.Footer .Form__Input:-ms-input-placeholder {
    color:#ffffff
}
.Footer .Link--secondary:hover,.Footer .Form__Input::placeholder {
    color:#ffffff
}
.Footer__Block {
    margin-top:48px
}
.Footer__Block:first-child {
    margin-top:0
}
.Footer__Title {
    margin-bottom:20px
}
.Footer__Social {
    margin-top:5px
}
.Footer__Content+.Footer__Newsletter {
    margin-top:18px
}
.Footer__Aside {
    text-align:center
}
.Footer__Inner+.Footer__Aside {
    margin-top:65px
}
.Footer__LocalizationForm {
    display:flex;
    justify-content:center;
    margin-bottom:20px
}
.Footer__LocalizationItem+.Footer__LocalizationItem {
    margin-left:30px
}
.Footer__ThemeAuthor {
    margin-top:4px
}
.Footer__PaymentList {
    margin:54px -24px 0;
    padding-top:28px;
    border-top:1px solid #dedede;
}
.Footer__PaymentList svg {
    opacity:.8;
    width:38px;
    height:24px
}
.Footer__StoreName {
    color:#ffffff
}
@media screen and (min-width: 641px) {
    .Footer {
        padding:75px 0 42px
    }
    .Footer__Inner {
        display:flex;
        flex-wrap:wrap;
        justify-content:space-between;
        margin-left:-40px;
        margin-right:-40px
    }
    .Footer__Block {
        flex:1 1 50%;
        margin-top:0;
        margin-bottom:50px;
        padding-left:25px;
        padding-right:25px
    }
    .Footer__Social {
        margin-top:14px
    }
    .Footer__Aside {
        text-align:left;
        display:flex;
        justify-content:space-between;
        align-items:center;
        flex-wrap:wrap
    }
    .Footer__Inner+.Footer__Aside {
        margin-top:40px
    }
    .Footer__Localization {
        width:100%
    }
    .Footer__LocalizationForm {
        justify-content:flex-start
    }
    .Footer__StoreName {
        font-size:calc(var(--base-text-font-size) - (var(--default-text-font-size) - 11px))
    }
    .Footer__PaymentList {
        padding:0;
        margin:0 -8px;
        border:none
    }
}
@media screen and (min-width: 1140px) {
    .Footer__Inner {
        display:flex;
        flex-wrap:wrap;
        justify-content:space-between
    }
    .Footer--center .Footer__Inner {
        justify-content:center
    }
    .Footer__Block {
        flex:0 1 auto
    }
    .Footer__Block--text,.Footer__Block--newsletter {
        flex-basis:240px
    }
    .Footer__Inner+.Footer__Aside {
        margin-top:80px
    }
}
@media screen and (min-width: 1140px) {
    .Footer__Block--text {
        flex-basis:400px
    }
    .Footer__Block--newsletter {
        flex-basis:305px
    }
}

.Footer {
    padding:81px 0 75px
}
@media print,screen and (max-width: 1139px) {
    .Footer {
        padding:60px 0 109px
    }
}
.Footer__Inner {
    margin:0
}
.Footer__Logo {
    width:20%;
    padding:0 17px 0 2px
}
@media print,screen and (max-width: 1139px) {
    .Footer__Logo {
        width:100%;
        padding:0 0 52px;
        text-align:center;
        border-bottom:1px solid #fff
    }
    .Footer__Logo img {
        max-width:250px
    }
}
.Footer__Link {
    width:80%;
    padding:0 15px;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end
}
@media print,screen and (max-width: 1139px) {
    .Footer__Link {
        display:block;
        width:100%;
        padding:0
    }
}
.Footer__Block {
    width:14%;
    margin-bottom:0
}
@media print,screen and (max-width: 1139px) {
    .Footer__Block {
        margin-top:0
    }
}
.Footer__Block h2 {
    width:100%;
    font-size:1.2rem;
    margin-top:-1px;
    margin-bottom:26px
}
@media print,screen and (max-width: 1139px) {
    .Footer__Block h2 {
        margin-top:0;
        margin-bottom:0;
        padding:30px 0 25px 1px;
        position:relative
    }
    .Footer__Block h2:before {
        content:"";
        position:absolute;
        right:10px;
        top:47%;
        width:12px;
        height:1px;
        background:#fff;
        opacity:1;
        -webkit-transition:all .3s ease-in-out;
        transition:all .3s ease-in-out
    }
    .Footer__Block h2:after {
        content:"";
        position:absolute;
        right:15px;
        top:40%;
        width:1px;
        height:12px;
        background:#fff;
        opacity:1;
        -webkit-transition:all .3s ease-in-out;
        transition:all .3s ease-in-out
    }
    .Footer__Block h2.is-show:after {
        opacity:0
    }
}
.Footer__Block ul li {
    margin-bottom:20px
}
@media print,screen and (max-width: 1139px) {
    .Footer__Block ul li {
        margin-bottom:19px
    }
}
.Footer__Block ul li a {
    font-size:1.1rem;
	color :#fff;
}
@media print,screen and (max-width: 1139px) {
    .Footer__Block ul li a {
        font-size:1rem
    }
}
.Footer__Block:first-child {
    width:46%;
    padding-right:0;
    padding-left:32px
}
@media print,screen and (min-width: 1140px) and (max-width: 1300px) {
    .Footer__Block:first-child {
        width:55%
    }
}
@media print,screen and (max-width: 1139px) {
    .Footer__Block:first-child {
        border-bottom:1px solid #fff
    }
}
.Footer__Block:first-child .Linklist {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-flow:column wrap;
    flex-flow:column wrap;
    max-height:139px
}
@media print,screen and (max-width: 1139px) {
    .Footer__Block:first-child .Linklist {
        max-height:230px;
		margin-top: 20px;
        margin-bottom:20px;
        margin-left:2px
    }
}
.Footer__Block:first-child .Linklist__Item {
    width:calc(100% / 3);
    margin-bottom:11.5px;
    padding-right:10px
}
@media print,screen and (max-width: 1139px) {
    .Footer__Block:first-child .Linklist__Item {
        width:40%;
        margin-bottom:15px
    }
}
.Footer__Block:first-child .Linklist__Item a {
    /*opacity:.6*/
}
.Footer__Block:nth-child(2) {
    padding:0 27px 0 28px;
    width:16%
}
@media print,screen and (min-width: 1140px) and (max-width: 1300px) {
    .Footer__Block:nth-child(2) {
        width:20%
    }
}
.Footer__Block:last-child {
    width:24%;
    padding-left:60px;
    padding-right:0;
    border-left:1px solid #fff
}
@media print,screen and (min-width: 1140px) and (max-width: 1300px) {
    .Footer__Block:last-child {
        width:30%
    }
}
@media print,screen and (max-width: 1139px) {
    .Footer__Block {
        width:100%!important;
        padding:0!important
    }
    .Footer__Block:nth-child(2) ul li {
        margin:0
    }
    .Footer__Block:nth-child(2) ul li a {
        position:relative;
        padding:30px 0 27px 2px;
        border-bottom:1px solid #fff;
        letter-spacing:1px
    }
    .Footer__Block:nth-child(2) ul li a:after {
        content:"";
        background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.48' height='11.547' viewBox='0 0 6.48 11.547'%3E%3Cpath id='Path_92' data-name='Path 92' d='M-2977.1,6356.025l5.42,5.42,5.42-5.42' transform='translate(-6355.672 -2965.904) rotate(-90)' fill='none' stroke='%23fff' stroke-width='1'/%3E%3C/svg%3E%0A");
        background-repeat:no-repeat;
        display:block;
        position:absolute;
        width:6px;
        height:11.547px;
        right:11px;
        top:51%;
        -webkit-transform:translateY(-50%);
        transform:translateY(-50%)
    }
    .Footer__Block:last-child {
        border-left:0;
        margin-top:39px
    }
}
.Footer__Aside {
    margin-top:53px
}
.Footer__Aside--right {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:end;
    -ms-flex-pack:end;
    justify-content:flex-end;
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap
}
.Footer__Aside--right.u-w100 {
    width:100%
}
@media print,screen and (max-width: 1139px) {
    .Footer__Aside {
        margin-top:32px;
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        -ms-flex-wrap:wrap;
        flex-wrap:wrap
    }
    .Footer__Aside--right {
        -webkit-box-ordinal-group:2;
        -ms-flex-order:1;
        order:1
    }
}
.Footer__Copyright {
    font-size:1rem
}
@media print,screen and (max-width: 1139px) {
    .Footer__Copyright {
        -webkit-box-ordinal-group:3;
        -ms-flex-order:2;
        order:2;
        font-size:.7rem;
        width:100%;
        text-align:left
    }
}
.Footer__Social {
    margin:0 0 0 88px
}
.Footer__Social li {
    margin:0
}
.Footer__Social li:not(:last-child) {
    margin-right:27px
}
.Footer__Social li a {
    font-size:2rem
}
@media print,screen and (max-width: 1139px) {
    .Footer__Social {
        -webkit-box-ordinal-group:2;
        -ms-flex-order:1;
        order:1;
        width:100%;
        text-align:left;
        margin:0 0 46px
    }
    .Footer__Social li:not(:last-child) {
        margin-right:16px
    }
    .Footer__Social li a {
        font-size:1.8rem
    }
}
.Footer__PaymentList {
    margin:0;
    padding:0;
    border:0
}
@media print,screen and (max-width: 1139px) {
    .Footer__PaymentList {
        -webkit-box-ordinal-group:3;
        -ms-flex-order:2;
        order:2;
        margin-top:20px
    }
}
.Linklist__Item {
    position:relative;
    display:block;
    margin-bottom:12px;
    width:100%;
    line-height:1.5;
    text-align:left;
    transition:all .2s ease-in-out
}
.Linklist__Item:last-child {
    margin-bottom:0!important
}
.Linklist__Item:before,.Linklist__Checkbox+.Link:before {
    position:absolute;
    content:"";
    display:inline-block;
    width:6px;
    height:6px;
    top:calc(50% - 3px);
    left:0;
    border-radius:100%;
    background:var(--text-color);
    opacity:0;
    transition:opacity .1s ease-in-out
}
.Linklist__Item label {
    cursor:pointer
}
.Linklist__Item>.Link {
    display:block;
    width:100%;
    text-align:inherit
}
.Linklist--spacingLoose .Linklist__Item {
    margin-bottom:18px
}
.Linklist__Item.is-selected {
    padding-left:18px
}
.Linklist__Item.is-selected:before,.Linklist__Checkbox:checked+.Link:before {
    opacity:1;
    transition-delay:.1s
}
.Linklist__Checkbox+.Link {
    transition:padding .2s ease-in-out,opacity .2s ease-in-out
}
.Linklist__Checkbox:checked+.Link {
    padding-left:18px;
    color:var(--text-color)
}
.Linklist--bordered {
    margin-left:8px;
    padding:0 20px 0 25px;
    border-left:1px solid var(--border-color)
}
.Linklist--bordered li:first-child .Linklist__Item {
    margin-top:2px
}
.Linklist--bordered li:last-child .Linklist__Item {
    margin-bottom:2px
}
.Icon-Wrapper--clickable {
    position:relative;
    background:transparent
}
.Icon-Wrapper--clickable:before {
    position:absolute;
    content:"";
    top:-8px;
    right:-12px;
    left:-12px;
    bottom:-8px;
    transform:translateZ(0)
}
.Icon {
    display:inline-block;
    height:1em;
    width:1em;
    fill:currentColor;
    vertical-align:middle;
    stroke-width:1px;
    background:none;
    pointer-events:none
}

.HorizontalList {
    list-style:none;
    /*margin:-6px -8px*/
}
.HorizontalList__Item {
    display:inline-block;
    margin:6px 8px
}
.HorizontalList__Item>.Link {
    display:inline-block
}

/******************************************************************************
 * MARGIN
*******************************************************************************/
.mt0 { margin-top: 0px !important; }
.mt5 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mt45 { margin-top: 45px !important; }
.mt50 { margin-top: 50px !important; }
.mt55 { margin-top: 55px !important; }
.mt60 { margin-top: 60px !important; }
.mt65 { margin-top: 65px !important; }
.mt70 { margin-top: 70px !important; }
.mt75 { margin-top: 75px !important; }
.mt80 { margin-top: 80px !important; }
.mt85 { margin-top: 85px !important; }
.mt90 { margin-top: 90px !important; }
.mt95 { margin-top: 95px !important; }
.mt100 { margin-top: 100px !important; }
.mb0 { margin-bottom: 0px !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb45 { margin-bottom: 45px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb55 { margin-bottom: 55px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb65 { margin-bottom: 65px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb75 { margin-bottom: 75px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb85 { margin-bottom: 85px !important; }
.mb90 { margin-bottom: 90px !important; }
.mb95 { margin-bottom: 95px !important; }
.mb100 { margin-bottom: 100px !important; }
.ml0 { margin-left: 0px !important; }
.ml5 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml35 { margin-left: 35px !important; }
.ml40 { margin-left: 40px !important; }
.ml45 { margin-left: 45px !important; }
.ml50 { margin-left: 50px !important; }
.ml55 { margin-left: 55px !important; }
.ml60 { margin-left: 60px !important; }
.ml65 { margin-left: 65px !important; }
.ml70 { margin-left: 70px !important; }
.ml75 { margin-left: 75px !important; }
.ml80 { margin-left: 80px !important; }
.ml85 { margin-left: 85px !important; }
.ml90 { margin-left: 90px !important; }
.ml95 { margin-left: 95px !important; }
.ml100 { margin-left: 100px !important; }
.mr0 { margin-right: 0px !important; }
.mr5 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr35 { margin-right: 35px !important; }
.mr40 { margin-right: 40px !important; }
.mr45 { margin-right: 45px !important; }
.mr50 { margin-right: 50px !important; }
.mr55 { margin-right: 55px !important; }
.mr60 { margin-right: 60px !important; }
.mr65 { margin-right: 65px !important; }
.mr70 { margin-right: 70px !important; }
.mr75 { margin-right: 75px !important; }
.mr80 { margin-right: 80px !important; }
.mr85 { margin-right: 85px !important; }
.mr90 { margin-right: 90px !important; }
.mr95 { margin-right: 95px !important; }
.mr100 { margin-right: 100px !important; }

/******************************************************************************
 * FONT
*******************************************************************************/
.bold { font-weight: bold!important; }
.normal { font-weight: normal; }
.underline { text-decoration: underline; }
.font_72 { font-size: 72px;}
.font_64 { font-size: 64px;}
.font_56 { font-size: 56px;}
.font_48 { font-size: 48px;}
.font_40 { font-size: 40px;}
.font_32 { font-size: 32px;}
.font_24 { font-size: 24px;}
.font_20 { font-size: 20px;}
.font_18 { font-size: 18px;}
.font_16 { font-size: 16px;}
.font_14 { font-size: 14px!important;}
.font_13 { font-size: 13px;}
.font_12 { font-size: 12px;}
.font_11 { font-size: 11px;}
.font_10 { font-size: 10px;}

.info-font_24 { font-size: 28px; color :#fff;margin-bottom: 15px;}
.info-font_12 { font-size: 12px; color :#fff}

.f_24 { font-size: 24px!important;
line-height: 1.8!important}
@media screen and (max-width: 767px),print {
	
.f_24 { font-size: 16px!important;
	line-height: 1.2!important}	
	
}

/******************************************************************************
 * COLOR
*******************************************************************************/
.red { color: #dd0000; }
.redpink { color: #ff6699; }
.pink { color: #ff3399; }
.pink2{ color: #d65678;}
.blue { color: #0099ff; }
.blue2 { color: #4790ce; }
.m-blue { color: #0084cf; }

.green { color: #148f2d; }
.green2 { color: #47a38a; }
.egreen { color: #2abfbf; }
.white { color: #ffffff; }
.orange { color: #ff6633; }
.gold { color: #D0A31A; }
.gray { color: #CCCCCC; }
.gray2 { color: #888888; }
.gray3 { color: #4d4d4d; }
.black { color: #000000; }
.bline {
    font-weight: 700;
    background: linear-gradient(transparent 70%, #ffa5b4 70%);
}
.blue-g{
	background : linear-gradient(97.61deg, #0a8be9 13.66%, #0ae9ad 101.36%);
		-webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
};
}

/******************************************************************************
 * bg_color
*******************************************************************************/
.bg_red { background-color: #fff2f2;}
.bg_green { background-color: #229c73; }

.bg_green2 { background-color: #f9fffe; }
.bg_gray { background-color: #fcfcfc; }
.bg_gray2 { background-color: #e9ebf2; }
.bg_gray3 { background-color: #ededed; }

.blue-b {
    background: linear-gradient(97.61deg, #29c0ff 13.66%, #0081e3 101.36%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/******************************************************************************
 * TEXT
*******************************************************************************/
.tx-left { text-align: left!important; }
.tx-center { text-align: center!important; }
.tx-right { text-align: right!important; }
.tx-justify{text-align: justify; text-justify: inter-ideograph;}
.ls-1 { letter-spacing: 1px; }
.ls-2 { letter-spacing: 2px; }
.v-top { vertical-align: top; }
.v-middle { vertical-align: middle; }
.underline { text-decoration:underline;}
.indent-1 {
	padding-left:1em;
	text-indent:-1em;
}
.indent-5 {
	padding-left:.5em;
	text-indent:-.5em;
}
.pc-tx-right { text-align: right!important; }
.pc-tx-center { text-align: center!important; }
@media screen and (max-width: 767px),print {
.pc-tx-center { text-align: left!important; }
.pc-tx-right { text-align: center!important; }	
	}

.border-line {
    border-top: 1px solid #e5e5e5;
    padding-top: 40px;
}
.b_bottom {
	border-bottom: 1px solid #eee;
}

.pc-tx-right { text-align: right!important; }
.pc-tx-center { text-align: center!important; }
.pc-tx-ml{ margin-left:20px;}

@media screen and (max-width: 767px),print {
.pc-tx-center { text-align: left!important; }
.pc-tx-right { text-align: center!important; }
.pc-tx-ml{ margin-left:0px;}	
	}
/******************************************************************************
 * b-raduis
*******************************************************************************/
.b-r10{
	border-radius: 10px;
}
.b-r20{
	border-radius: 20px;
}
.b-r30{
	border-radius: 30px;
}
.b-r40{
	border-radius: 40px;
}


/******************************************************************************
 * center
*******************************************************************************/
.cts-center{
	margin: 0 auto;
}

/******************************************************************************
 * responsive
*******************************************************************************/
.img-responsive {
  display: block;
  max-width: 100%;
  margin-left:auto;
  margin-right:auto;
  height: auto;
}
.img-no-responsive {
  display: block;
  max-width: auto;
  height: auto;
}
.br-pc{
display:block
}
.br-sp{
display:none
}
@media only screen and (max-width:1599px){
.br-1200{
display:block
}

}
@media only screen and (max-width:1199px){
.br-1200{
display:none
}
.br-900{
display:block
}

}
@media only screen and (max-width:899px){
.br-900{
display:none
}
.br-pc{
display:none
}
.br-sp{
display:block
}

}


.pc_only{
  display: block;
  margin: 0 auto;
}
.sp_only{
  display: none!important;
}
@media only screen and (max-width: 767px) {
  .pc_only{
    display: none!important;
  }
  .sp_only{
    display: block!important;
  }	
}

.no-spam {
    display: none;
}









.img--h a:hover{
	opacity: 0.8;
}
/* Float Clear
=============================================================================*/
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
	line-height: 0;
	font-size:0;
}
.clearfix {	display:inline-block;}
/*\*/
* html .clearfix { height: 1%;}
.clearfix {	display: block;}
/**/
.clear { clear: both; }

/* -----------------------------------------------------------
	.grid
----------------------------------------------------------- */
.row-c {
	margin: 30px 0 40px;
}
.row-c:before,
.row-c:after {
  content: " ";
  display: table;
}

.row-c:after {
  clear: both;
}


 .col-sm-1, .col-sm-2, .col-sm-21, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}


@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-21, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-stylethumb{
	  width: 33.33333333%;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  
  .col-sm-21 {
    width: 12.5%;
  }

  
  .col-sm-1 {
    width: 8.33333333%;
  }
 }

/* -----------------------------------------------------------
	.grid-sd
----------------------------------------------------------- */
 .col-sd-1, .col-sd-2, .col-sd-21, .col-sd-3, .col-sd-4, .col-sd-5, .col-sd-6, .col-sd-7, .col-sd-8, .col-sd-9, .col-sd-10, .col-sd-11, .col-sd-12 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}


@media (min-width: 1120px) {
  .col-sd-1, .col-sd-2, .col-sd-21, .col-sd-3, .col-sd-4, .col-sd-5, .col-sd-6, .col-sd-7, .col-sd-8, .col-sd-9, .col-sd-10, .col-sd-11, .col-sd-12 {
    float: left;
  }
  .col-stylethumb{
	  width: 33.33333333%;
  }
  .col-sd-12 {
    width: 100%;
  }
  .col-sd-11 {
    width: 91.66666667%;
  }
  .col-sd-10 {
    width: 83.33333333%;
  }
  .col-sd-9 {
    width: 75%;
  }
  .col-sd-8 {
    width: 66.66666667%;
  }
  .col-sd-7 {
    width: 58.33333333%;
  }
  .col-sd-6 {
    width: 50%;
  }
  .col-sd-5 {
    width: 41.66666667%;
  }
  .col-sd-4 {
    width: 33.33333333%;
  }
  .col-sd-3 {
    width: 25%;
  }
  .col-sd-2 {
    width: 16.66666667%;
  }
  
  .col-sd-21 {
    width: 12.5%;
  }

  
  .col-sd-1 {
    width: 8.33333333%;
  }
 }


@media screen and (min-width: 768px) and (max-width: 1119px) {
	
  .col-sd-3 {
    width: 50%;
  }
	
}
/* -----------------------------------------------------------
	.grid-4
----------------------------------------------------------- */
 .col-gd-4 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

  .col-gd-4 {
    float: left;
  }

 .col-gd-4 {
width: 50%;
}


@media (min-width: 768px) {
  .col-gd-4 {
    float: left;
  }
  .col-gd-4 {
    width: 25%;
  }
  }


.row-87 {
  width: 87%;
  margin: 0 auto;
}
@media (max-width: 768px) {
.row-87 {
	width: 100%;
	padding: 0 10px;
}
}

/*----------------------------------------------------
  l-main
--------------------------------------------------- */

.l-main {
    margin-top:118px;
    overflow:hidden
}

@media (max-width: 768px) {
.l-main {
    margin-top:118px;
    overflow:hidden
}
}

/*----------------------------------------------------
  web-std
--------------------------------------------------- */
.web-std{
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  z-index: 1;
  padding: 50px 0 0px;
 }
.web-std-b{
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  z-index: 1;
  padding: 20px 0 20px;
 }
.web-std-top{
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  z-index: 1;
  margin: 160px 0 0 0;	
 }

.web-std p{
  font-size: 16px;
  line-height: 32px;
  font-weight: 500;
}

.web-std .h_title {
    padding: 70px 0 65px;
    background: #337ab7;
}
.web-std .h_title .h_inner {
    width: 1080px;
    margin: 0 auto;
    font-size: 34px;
    color: #FFF;
    font-weight: bold;
    text-align: center;
}
.web-std .h_title span {
    font-size: 42px;
}
.web-std .inner{
  width: 900px;
  margin: 0 auto;
  position: relative;
}
.inner_600{
  width: 600px;
  margin: 0 auto;
  position: relative;
}

.inner_900{
  width: 900px;
  margin: 0 auto;
  position: relative;
  padding: 0 15px 0;	
}
.inner_500{
  width: 500px;
  margin: 0 auto;
  position: relative;
  padding: 0 15px 0;	
}

.inner_1200{
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  padding: 0 15px 0;	
}
.inner_1200_c{
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  padding: 0 15px 0;	
}

.inner_96{
  width: 96%;
  margin: 0 auto;
  position: relative;
	
}
.inner_bread{
      width: 82.43%;
    margin-left: auto;
    margin-right: auto;
    display: flex;

}
.inner_bread{
  width: calc(100% - 160px);
}

@media only screen and (min-width: 768px) and (max-width: 1100px) {
  .web-std .inner{
    width: 760px;
    margin: 0 auto;
    position: relative;
  }
  .inner_900{
    width: 94%;
    margin: 0 auto;
    position: relative;
  }
  .inner_1200{
    /*width: 760px;*/
    margin: 0 auto;
    position: relative;
  }
  .inner_1200_c{
    width: 760px;
    margin: 0 auto;
    position: relative;
  }
	
	
.web-std .h_title .h_inner {
    width: 720px;
}	
}
@media only screen and (max-width: 767px) {
  .web-std{
    padding: 0px 0 5px;
  }
  .web-std-top{
	margin: 60px 0 0 0;  
  }
	
.web-std p{
    font-size: 14px;
    line-height: 24px;
}	
  .web-std .inner{
    width: 96%;
  }
   .inner_600{
	max-width: 600px;   
    width: 96%;
  }
	
  .inner_900{
    width: 96%;
  }
  .inner_1200{
    width: 96%;
  }
  .inner_1200_c{
    width: 100%;
	padding: 0 0px 0;  
  }
.web-std-b{	
	display: none;
	}
 }
/*----------------------------------------------------
  #h-ttl_area
--------------------------------------------------- */


.h-ttl_area {
    position: relative;
	
}

.h-ttl_area h2 {
    position: relative;
    padding-bottom: 25px;
	margin-top: 40px;
    margin-bottom: 50px;
}

.h-ttl_area h2  {
    text-align: center;
    font-size: 1.2rem;
	color: #c1c1c1;
}
.h-ttl_area h2 span  {
    font-size: 3.4rem;
    display: block;
    margin-top: 25px;
	color:#171717;
}
.h-ttl_area h2:before  {
    left: 50%;
    margin-left: -30px;
    background: #00a0e9;
}
.h-ttl_area h2:after, .h-ttl_area h2:before  {
    content: "";
    position: absolute;
    bottom: 0;
    width: 30px;
    height: 3px;
}

.h-ttl_area h2:after  {
    right: 50%;
    margin-right: -30px;
    background: #0481ba;
}
@media only screen and (max-width: 767px) {
.h-ttl_area h2 span {
    font-size: 1.4rem;
}
	.sp-sm{
		font-size: 1.2rem!important;
	}	
	.sp-sm2{
		font-size: 1rem!important;
	}	
}

/******************************************************************************
 * webh2-title
*******************************************************************************/
.w_sub_title{
	font-size: 14px;
    letter-spacing: 0.08em;
    font-weight: 700;
	font-family: "Exo 2", "Noto Sans JP", sans-serif;
    color: #0080d9;	
	
}

@media (min-width: 769px) {
.h_sub_title {
  position: relative;
  font-size: 14px;
  font-weight: 700;
  line-height: 100%;
  padding-left: 17px;
  margin-bottom: 15px;
  }

.h_sub_title::before {
  position: absolute;
  display: block;
  left: 0;
  top: 10%;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #29c0ff; }
	
.web_h1_tit h1 {
    font-size: 50px;
    line-height: 70px;
    margin-top: 10px;
    font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  animation: flowing-anim 5s;

	
}
.web_h2_tit h2 {
    font-size: 30px;
    line-height: 70px;
    margin-top: 10px;
	color: #0080d9;
    font-weight: 700;
	border-bottom: #cde5ec 1px solid;

	
}	
	
}
@media (max-width: 768px) {
.h_sub_title {
  position: relative;
  font-size: 12px;
  font-weight: 500;
  line-height: 100%;
  padding-left: 17px;
  margin-bottom: 15px;
  }

.h_sub_title::before {
  position: absolute;
  display: block;
  left: 0;
  top: 10%;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #29c0ff; }
.web_h1_tit h1 {
    font-size: 24px;
    line-height: 70px;
    margin-top: 10px;
    font-weight: 700;
}
.web_h2_tit h2 {
    font-size: 24px;
    line-height: 70px;
    margin-top: 10px;
	color: #0080d9;
    font-weight: 700;
	border-bottom: #cde5ec 1px solid;

	
}	
	
}
@media (min-width: 769px) {
.web_h3_tit h3 {
    font-size: 30px;
    line-height: 70px;
    margin-top: 10px;
    font-weight: 700;
	border-bottom: #eeeeee 1px solid;

	
}	
.web_h3_tit:after {
    position: absolute;
    display: block;
    content: "";
    width: 60px;
    height: 3px;
    background: linear-gradient(100.06deg, #29c0ff 12.17%, #0081e3 82.98%);
   /* left: 15px;*/
	margin-top: -2px;
}
}

@media (max-width: 768px) {
.web_h3_tit h3 {
    font-size: 24px;
    line-height: 70px;
    margin-top: 10px;
    font-weight: 700;
	border-bottom: #eeeeee 1px solid;

	
}	
.web_h3_tit:after {
    position: absolute;
    display: block;
    content: "";
    width: 30px;
    height: 3px;
    background: linear-gradient(100.06deg, #29c0ff 12.17%, #0081e3 82.98%);
   /* left: 15px;*/
	margin-top: -2px;
}
}	


@keyframes flowing-anim {
 0%{
     width: 0%;
   }
100%{
     width: 100%;
   }
}

.web-intro-h2{
	font-size: 3.25rem;
    font-weight: 700;
    line-height: 1.5;
	margin-bottom: 5rem;
}
.web-intro-h2-2{
	font-size: 3.7rem;
    font-weight: 700;
    line-height: 1.5;
	margin-bottom: 5rem;
}

@media only screen and (max-width: 767px) {
.web-intro-h2{
	font-size: 2.25rem;
    font-weight: 700;
    line-height: 1.5;
	margin-bottom: 5rem;
}
.web-intro-h2-2{
	font-size: 2.25rem;
    font-weight: 700;
    line-height: 1.5;
	margin-bottom: 5rem;
}
}
/******************************************************************************
 * .cmn-post
*******************************************************************************/
.cmn-post h2 {
    position: relative;
    font-size: 30px	;
    margin-bottom: 40px;
}
.cmn-post h2:nth-child(n + 2),
.cmn-post h3:nth-child(n + 2),
.cmn-post h4:nth-child(n + 2)
{
	margin-top: 40px
}

.cmn-post  p+p{margin-top:1.4em}

.cmn-post h3 {
    font-size: 26px;
    line-height: 70px;
    margin-top: 10px;
	color: #0080d9;
    font-weight: 700;
	border-bottom: #cde5ec 1px solid;
	margin-bottom: 30px;

	
}	

.cmn-post h4 {
    margin-bottom: 40px;
    padding: 10px 15px;
    border-radius: 5px;
    background-color: #f3f4f5;
    line-height: 140%;
	font-size: 20px;
}


.cmn-post ol li{
	line-height: 1.4;
}

@media screen and (max-width: 750px){

.cmn-post h2:nth-child(n + 2),
.cmn-post h3:nth-child(n + 2),
.cmn-post h4:nth-child(n + 2)	{
	margin-top: 30px
}
	
	.cmn-post h2 {
		font-size: 24px
	}	
	.cmn-post h3 {
		font-size: 18px
	}	
	.cmn-post h4 {
		font-size: 16px
	}
	.cmn-post h4:before
	{
		margin-bottom: 15px;	
	}
	.cmn-post h4:after{
		margin-top: 15px;	
	}
}


.cmn-post ul {
    margin: 0 20px 30px 20px;
}

@media (max-width: 768px) {
.cmn-post ul {
    margin: 0 0px 0px 0px;
}
	
}	

.cmn-post li {
    display: block;
    padding: 0 0 0 32px;
    text-indent: -16px;
    list-style: none;
	font-size:16px;
	font-weight: 400;
	line-height: 1.8;
	align-items: center!important;
}

.cmn-post li:before {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #3c3a3a;
    content: '';
	margin: 0 8px 3px 0;
}
/*----------------------------------------------------
  flame
--------------------------------------------------- */

.flame-cmn {
    background: #faf9f4;
    box-sizing: border-box;
    padding: 40px 24px;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    margin: 16px 0;
}
.flame-cmn_h3_tit h3{
    font-weight: 700;
    font-size: 20px;
    line-height: 1.575em;
    letter-spacing: .05em;
}

@media (max-width: 768px) {

	.flame-cmn_h3_tit h3{
    font-size: 18px;
}

	
}	
.flame-cmn ul {
    margin: 0 20px 30px 20px;
}

@media (max-width: 768px) {
.flame-cmn ul {
    margin: 0 0px 0px 0px;
}
	
}	

.flame-cmn li {
    display: block;
    padding: 0 0 0 32px;
    text-indent: -16px;
    list-style: none;
	font-size:16px;
	font-weight: 400;
	line-height: 1.8;
	align-items: center!important;
}

.flame-cmn li:before {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #3c3a3a;
    content: '';
	margin: 0 8px 3px 0;
}
/* -----------------------------------------------------------
	.btn
----------------------------------------------------------- */
.common-btn.-en a {
	font-size: 1.5rem;
	letter-spacing: -.01em;
	color:#fff;
	background:#11a6f7;
}

.common-btn.-en a span{
	color:#fff;	
}

.common-btn a {
	max-width: 300px;
	margin: 0 auto;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: stretch;
	-ms-flex-pack: stretch;
	justify-content: stretch;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	min-height: inherit;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: .07em;
	background-color: #fff;
	border: 2px solid #11a6f7;
	border-radius: 20px;
	padding: 20px 65px 20px 40px
}
.common-btn a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 5px;
	display: inline-block;
	width: 40px;
	aspect-ratio: 1/1;
	background-color: #fff;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2019%2014%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M1%207H17%22%20stroke%3D%22%23232323%22%20stroke-width%3D%222%22%20stroke-miterlimit%3D%2210%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3Cpath%20d%3D%22M12%201L17.5%207L11.5%2013%22%20stroke%3D%22%23232323%22%20stroke-width%3D%222%22%20stroke-miterlimit%3D%2210%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 19px;
	border: 2px solid rgba(17, 166, 247, .1);
	border-radius: 1000px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: .2s ease-out;
	transition: .2s ease-out
}
.common-btn a:hover {
	opacity: 1
}
.common-btn a:hover::after {
	right: 8px;
	width: 30px;
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%207%2010%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M1.83333%201L5.5%205L1.5%209%22%20stroke%3D%22%23232323%22%20stroke-width%3D%222%22%20stroke-miterlimit%3D%2210%22%20stroke-linecap%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E%0A");
	background-size: 7px;
	border: 2px solid #11a6f7
}

/*============================================================================

	.kv

============================================================================*/
@media screen and (max-width: 1200px){
.kv{
   /* min-width: 880px;*/
}
}

/*============================================================================

	.kv

============================================================================*/

.kv {
	display: block;
	position: relative;
	height: 400px;
	background-color: rgba(18, 24, 50, .3);
	z-index: 1;
}

.kv_img {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}
.kv_img::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	background-position: center;
	background-repeat: repeat;
}
.kv_img::after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	/*background-color: rgba(0, 15, 50, .28);*/
}


@media screen and (min-width:1921px) {
	
.kv {
	height: 520px;
}
	
	
	
	
	
	
	
	
}


@media screen and (max-width: 767px){
.kv {
    background-position: center;
    background-attachment: scroll;
    height: 180px;
    padding-top: 0;
    background-size: cover;
    background-position: 75%;
}

.kv {
    min-width: auto;
}
	
	
}	

@media screen and (max-width:320px) {

.kv {
	min-width: 1080px;
}
}

.kv-com-top .kv_img {
	background-image: url(../images/com-top-img.jpg);
	background-position: center center;
	background-size: cover;
}

.kv-privacy-top .kv_img {
	background-image: url(../images/privacy-top-img.jpg);
	background-position: center center;
	background-size: cover;
}
.kv-works-top .kv_img {
	background-image: url(../images/works-top-img.jpg);
	background-position: center center;
	background-size: cover;
}
.kv-news-top .kv_img {
	background-image: url(../images/news-top-img.jpg);
	background-position: center center;
	background-size: cover;
}

.kv-business-top .kv_img {
	background-image: url(../images/business-top-img.jpg);
	background-position: center center;
	background-size: cover;
}
.kv-water-meter-top .kv_img {
	background-image: url(../images/water-meter-top-img.jpg);
	background-position: center center;
	background-size: cover;
}

.kv-maintenance-top .kv_img {
	background-image: url(../images/maintenance-top-img.jpg);
	background-position: center center;
	background-size: cover;
}

.kv-first-top .kv_img {
	background-image: url(../images/first-top-img.jpg);
	background-position: center center;
	background-size: cover;
}

.kv-replacement-top .kv_img {
	background-image: url(../images/replacement-top-img.jpg);
	background-position: center center;
	background-size: cover;
}

.kv-contact-top .kv_img {
	background-image: url(../images/contact-top-img.jpg);
	background-position: center center;
	background-size: cover;
}
.kv-wifi-top .kv_img {
	background-image: url(../images/wifi-top-img.jpg);
	background-position: center center;
	background-size: cover;
}

/******************************************************************************
 * common_info
*******************************************************************************/
.footer_info { display: flex; margin-top: 150px; overflow: hidden; }
body.page-id-94 .footer_info { margin-top: 0; }
.footer_info_about { width: 50%; position: relative; }
.footer_info_about .inner { padding-bottom: 57.39%; }
.footer_info_about .inner:after { content: ""; display: block; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: #000; opacity: 0.3; }
.footer_info_contact { width: 50%; position: relative; background: #80c3e1; }
.footer_info_about .ph { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); object-fit: cover; }
.footer_info_about .hd,
.footer_info_contact .hd { font-size: 3.0rem; color: #fff; position: absolute; left: 4.59vw; top: 54px; -webkit-transform: rotate(90deg) translate(0,-100%); transform: rotate(90deg) translate(0,-100%); -webkit-transform-origin: top left; transform-origin: top left; z-index: 2; }
.footer_info_about .copy { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); z-index: 2; }
.footer_info_contact .txt { width: 100%; text-align: center; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); z-index: 2; }
.footer_info_contact * { color: #fff; }
.footer_info_contact .ttl { font-size: 3.0rem; font-weight: 700; }
.footer_info_contact .ttl span { border-bottom: 1px solid #fff; }
.footer_info_contact .tel { font-size: 5.0rem; margin-top: 30px; font-weight: 400; }
.footer_info_contact .time { font-size: 1.2rem; margin-top: 5px; text-align: center; }


@media screen and (max-width: 1250px) {
	
    .footer_info_about .hd,
    .footer_info_contact .hd { font-size: 2.0rem; }
    .footer_info_contact .ttl { font-size: 2.0rem; font-weight: 700; }
    .footer_info_contact .tel { font-size: 3.5rem; margin-top: 30px; font-weight: 400; }
    .footer_info_contact .time { font-size: 1.2rem; margin-top: 5px; text-align: center; }
}
@media screen and (max-width: 1024px) {	
.footer_info { display: flex; margin-top: 100px; }
.footer_info_about { width: 50%; position: relative; }
.footer_info_about .inner { padding-bottom: 57.39%; }
.footer_info_contact { width: 50%; position: relative; background: #80c3e1; }
.footer_info_about .ph { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); object-fit: cover; }
    .footer_info_about .hd,
    .footer_info_contact .hd { font-size: 2.0rem; color: #fff; position: absolute; left: 4.59vw; top: 54px; -webkit-transform: rotate(90deg) translate(0,-100%); transform: rotate(90deg) translate(0,-100%); -webkit-transform-origin: top left; transform-origin: top left; }
.footer_info_about .copy { width: 184px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
.footer_info_contact .txt { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
.footer_info_contact * { color: #fff; }
    .footer_info_contact .ttl { font-size: 1.4rem; font-weight: 700; }
.footer_info_contact .ttl span { border-bottom: 1px solid #fff; }
    .footer_info_contact .tel { font-size: 2.4rem; margin-top: 20px; font-weight: 400; }
.footer_info_contact .time { font-size: 0.6rem; margin-top: 5px; text-align: center; }

	
	
}	


@media screen and (max-width: 767px) {
	
   .footer_info { display: flex; flex-wrap: wrap;margin-top: 100px; }
    .footer_info_about { width: 100%; position: relative; }
    .footer_info_about .inner { padding-bottom: 57.39%; }
    .footer_info_contact { width: 100%; position: relative; background: #80c3e1; padding-bottom: 57.39%; }
.footer_info_about .ph { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); object-fit: cover; }
    .footer_info_about .hd,
    .footer_info_contact .hd { font-size: 1.4rem; color: #fff; position: absolute; left: 4.59vw; top: 26px; -webkit-transform: rotate(90deg) translate(0,-100%); transform: rotate(90deg) translate(0,-100%); -webkit-transform-origin: top left; transform-origin: top left; }
.footer_info_about .copy { width: 184px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
    .footer_info_contact .txt { width: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); text-align: center; }
.footer_info_contact * { color: #fff; }
    .footer_info_contact .ttl { font-size: 1.6rem; font-weight: 700; }
.footer_info_contact .ttl span { border-bottom: 1px solid #fff; }
    .footer_info_contact .tel { font-size: 3.0rem; margin-top: 10px; font-weight: 400; }
    .footer_info_contact .time { font-size: 1.1rem; margin-top: 0; }
	
}
@media screen and (min-width: 900px) {  

    .footer_info_about .inner:after { -webkit-transition: opacity 1.0s cubic-bezier(.16,1,.3,1); transition: opacity 1.0s cubic-bezier(.16,1,.3,1); }
    .footer_info_about:hover .inner:after { opacity: 0.5; }
    
    .footer_info_contact:after { content: ""; display: block; width: 100%; height: 100%; background: #000; position: absolute; opacity: 0; -webkit-transition: opacity 1.0s cubic-bezier(.16,1,.3,1); transition: opacity 1.0s cubic-bezier(.16,1,.3,1); }
    .footer_info_contact:hover:after { opacity: 0.2; }
}

/*----------------------------------------------------
  company_outline
--------------------------------------------------- */
.company_outline_page .outline dl div {
    display: flex;
    align-items: baseline;
    min-height: 114px;
}


.company_outline_page .outline dl div dt {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: .8px;
    line-height: 1.5;
    width: 288px;
    position: relative;
    padding: 28px 32px 30px 0;
}

.company_outline_page .outline dl div dt::before {
    content: "";
    display: block;
    width: 8px;
    height: 2px;
    position: absolute;
    inset: 0 auto auto 0;
    background-color: #3e88c8;
    z-index: 1;
}

.company_outline_page .outline dl div dd {
    font-size: 16px;
    /*font-weight: 500;*/
    letter-spacing: 1px;
    line-height: 1.5;
    width: calc(100% - 288px);
    position: relative;
    padding: 28px 0 30px;
}
.company_outline_page .outline dl div dd::before {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    position: absolute;
    inset: 0 auto auto 0;
    background-color: #f6f6f6;
}

@media screen and (max-width: 767px){
.company_outline_page .outline dl div {
    flex-direction: column;
    min-height: auto;
	}
.company_outline_page .outline dl div dt {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .7px;
    line-height: 1.5;
    width: 100%;
    padding: 20px 0 0;
}
.company_outline_page .outline dl div dt::after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    position: absolute;
    inset: 0 auto auto 0;
    background-color: #f6f6f6;
}	
	
.company_outline_page .outline dl div dd {
    font-size: 14px;
    letter-spacing: .8px;
    line-height: 1.5;
    width: 100%;
    padding: 20px 0 34px;
}
.company_outline_page .outline dl div dd::before {
    content: none;
}
	
}
/*----------------------------------------------------
  #about-us
--------------------------------------------------- */

.ggmap {
position: relative;
padding-bottom: 50%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%!important;
height: 100%!important;
}
/*----------------------------------------------------
  news
--------------------------------------------------- */
#contents_>#news {
    display:grid;
    grid-template:"title list" auto "more  list" 1fr/40rem auto;
    padding:14rem
}

#contents_>#news>h1 {
    grid-area:title
}
#contents_>#news>.list {
    grid-area:list
}
#contents_>#news>.more {
    grid-area:more;
    justify-self:flex-start;
    align-self:flex-start;
    margin:4.3rem 0 0
}
@media screen and (max-width: 959px) {
    #contents_>#news {
        display:flex;
        flex-direction:column;
        padding:6rem 3.5rem
    }
    #contents_>#news>h1 {
        padding:3rem 0 0;
        font-size:4.2rem
    }
    #contents_>#news>h1::before {
        width:2rem;
        height:2px
    }
    #contents_>#news>.list {
        margin:2.5rem 0 0
    }
    #contents_>#news>.more {
        align-self:center;
        margin:3rem 0 0
    }
}
#contents_>.content>h1 {
    position:relative;
    padding:5.3rem 0 0;
    font-family:"Montserrat",sans-serif;
    font-weight:500;
    line-height:.95744;
    font-size:9.4rem;
    font-weight:600
}
#contents_>.content>h1::before {
    display:block;
    content:"";
    width:4rem;
    height:3px;
    position:absolute;
    left:0;
    top:0;
    background:#00a0e9;
    overflow:hidden
}
#contents_>.content>h1.-small {
    font-size:7.4rem
}
@media screen and (max-width: 959px) {
    #contents_>.content>h1 {
        padding:4.4rem 0 0;
        font-size:5.2rem;
        letter-spacing:0
    }
    #contents_>.content>h1::before {
        width:3rem;
        height:3px
    }
    #contents_>.content>h1.-small {
        font-size:4.2rem
    }
	
	
}	

.c-button {
    display:inline-flex;
    align-items:center;
    position:relative;
    padding:2.1em 3em;
    padding-right:5em;
    border:none;
    border-radius:10em;
    box-sizing:border-box;
    color:#222;
    font-size:1.4rem;
    font-weight:bold;
    text-decoration:none;
    line-height:1;
    -webkit-appearance:none;
    appearance:none;
    overflow:hidden;
    cursor:pointer;
    transition:.2s ease-in-out;
    transition-property:border-color,background-color,color,opacity
}
.c-button::before {
    display:block;
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:0;
    bottom:0;
    border:2px solid rgba(34,34,34,.1);
    border-radius:inherit;
    pointer-events:none
}
.c-button::after {
    display:flex;
    justify-content:center;
    align-items:center;
    content:url("../images/icon_left_arrow.svg");
    width:4em;
    position:absolute;
    right:1em;
    top:0;
    bottom:0;
    color:#00a0e9;
    font:normal 1em/1 icons;
    pointer-events:none
}
.c-button:hover {
    color:#00a0e9
}
.c-button:hover::after {
    animation:arrow .5s
}
.c-button>.c-button-input {
    display:flex;
    justify-content:center;
    align-items:center;
    width:calc(100% + 6em);
    margin:-2.1em -3em;
    padding:inherit;
    border:none;
    background:none;
    font:inherit;
    -webkit-appearance:none;
    appearance:none;
    cursor:pointer;
    transition:none
}
@media screen and (max-width: 959px) {
    .c-button {
        padding:1.7em 3.5em 1.6em 2.6em;
        font-size:1.2rem
    }
    .c-button::after {
        width:3em;
        top:.2rem
    }
    .c-button>.c-button-input {
        width:calc(100% + 6.1em);
        margin:-1.7em -3.5em -1.6em -2.6em
    }
}
.c-button.c-button--strong {
    background-color:#00a0e9;
    color:#fff
}
.c-button.c-button--strong::before {
    border-color:#00a0e9;
    opacity:1
}
.c-button.c-button--strong::after {
    color:inherit
}
.c-button.c-button--strong:hover {
    background-color:#fff;
    color:#00a0e9
}
.c-button.c-button--long {
    background-color:#00a0e9;
    color:#fff
}
.c-button.c-button--long::before {
    border-color:#00a0e9;
    opacity:1
}
.c-button.c-button--long::after {
    color:inherit;
    right:20em
}
.c-button.c-button--long:hover {
    background-color:#fff;
    color:#00a0e9
}
@media screen and (max-width: 959px) {
    .c-button.c-button--long::after {
        right:6em
    }
}
.-dark .c-button,.c-button.c-button--negative {
    background:#fff
}
.-dark .c-button::before,.c-button.c-button--negative::before {
    display:none
}
.c-button.c-button--back {
    padding-right:3em;
    padding-left:5em
}
.c-button.c-button--back::after {
    left:1em;
    right:auto;
    transform:rotate(180deg)
}
.c-button.c-button--back:hover::after {
    animation:arrow-reverse .5s
}
.c-button[target=_blank]::after {
    /*transform:rotate(-45deg)*/
	transform:rotate(0deg)	
}
.c-button[target=_blank]:hover::after {
    animation:arrow-external .5s
}


@keyframes arrow-external {
    0% {
        transform:translate(0, 0) rotate(0deg);
        opacity:1
    }
    40% {
        opacity:0
    }
    49.9% {
        transform:translate(0.5em, 0em) rotate(0deg);
        opacity:0
    }
    50% {
        transform:translate(-0.5em, 0em) rotate(0deg);
        opacity:0
    }
    100% {
        transform:translate(0, 0) rotate(0deg);
        opacity:1
    }
}
.c-news-list {
    border-top:1px solid rgba(34,34,34,.1)
}
.c-news-list>li,.c-news-list>li>a {
    display:grid;
    grid-template:"tags  date" "title title"/auto 1fr
}
.c-news-list>li {
    padding:3.8rem 0;
    border-bottom:1px solid rgba(34,34,34,.1)
}
.c-news-list>li>a {
    grid-area:title;
    position:relative;
    margin:-3.8rem 0;
    padding:inherit;
    padding-right:11.2rem;
    text-decoration:none
}
.c-news-list>li>a::after {
    display:flex;
    justify-content:center;
    align-items:center;
    content:url("../images/icon_left_arrow.svg");
    width:9.2rem;
    position:absolute;
    right:0;
    top:0;
    bottom:0;
    color:#00a0e9;
    font:normal .9em/1 icons
}
.c-news-list>li>a:hover {
    color:#00a0e9
}
.c-news-list>li>a:hover::after {
    animation:arrow .5s
}
.c-news-list>li>a[target=_blank]::after {
    /*transform:rotate(-45deg)*/
	transform:rotate(0deg)	
}
.c-news-list>li>a[target=_blank]:hover::after {
    animation:arrow-external .5s
}
.c-news-list>li>a[href$=".pdf"]::after {
    content:"PDF";
    width:auto;
    height:1.4rem;
    right:6rem;
    top:50%;
    bottom:auto;
    padding:0 .5rem;
    border:1px solid currentColor;
    border-radius:5rem;
    transform:translate(50%, -50%);
    font-family:"Montserrat",sans-serif;
    font-weight:500;
    line-height:.95744;
    font-size:1.1rem;
    font-weight:600;
    line-height:1;
    letter-spacing:0;
    animation:none !important
}
.c-news-list>li h2 {
    grid-area:title;
    margin:1.8rem 0 0;
    font-size:1.6rem;
    font-weight:400;
    line-height:1.7;
	margin-left: 30px;
}
.c-news-list>li h2 br {
    display:none
}
.c-news-list>li time {
    grid-area:date;
    display:flex;
    align-items:center;
    margin:0 0 0 1.8rem;
    color:#222;
    font-family:"Montserrat",sans-serif;
    font-weight:500;
    line-height:.95744;
    font-size:1.3rem;
    font-weight:600;
    opacity:.5
}
.c-news-list>li .tags {
    grid-area:tags;
    align-items:center
}
@media screen and (max-width: 959px) {
    .c-news-list>li {
        padding:2.3rem 0
    }
    .c-news-list>li>a {
        margin:-2.3rem 0;
        padding-right:3rem
    }
    .c-news-list>li>a::after {
        width:3rem
    }
    .c-news-list>li>a[href$=".pdf"]::after {
        height:.9rem;
        right:1.3rem;
        padding:0 .3rem;
        font-size:.7rem
    }
    .c-news-list>li h2 {
        margin:1.2rem 0 0;
        font-size:1.3rem;
        font-weight:300
    }
    .c-news-list>li time {
        margin:0 0 0 1rem;
        font-size:1rem
    }
}
.c-tags {
    display:flex;
    margin:0 0 0 .8rem;
    color:#222;
    font-size:1.4rem;
    line-height:1
}
.c-tags>li {
    display:flex;
    justify-content:center;
    align-items:center;
    min-width:11rem;
    font-size:1.1rem;
    margin:0 0 0 1rem;
    padding:.5rem;
    box-sizing:border-box;
    border-radius:1rem;
    background:#f2f4f7
}
@media screen and (max-width: 959px) {
    .c-tags {
        margin:0 0 0 -0.6rem;
        font-size:.9rem
    }
    .c-tags>li {
        min-width:8.8rem;
        margin:0 0 0 .6rem;
        padding:.4rem;
        font-size:.9rem
    }
}
.c-category-list {
    display:flex;
    flex-wrap:wrap;
    margin:-1rem 0 0 -1rem;
    font-size:1.2rem
}
.c-category-list>li {
    margin:1rem 0 0 1rem;
    padding:.9rem 2.5rem
}
.c-category-list>li>a {
    display:flex;
    justify-content:center;
    align-items:center;
    margin:-0.9rem -2.5rem;
    padding:inherit;
    border-radius:10rem;
    background:#f2f4f7;
    text-decoration:none
}
.c-category-list>li>a:hover,.c-category-list>li.selected>a {
    background-color:#00a0e9;
    color:#fff
}
@media screen and (max-width: 959px) {
    .c-category-list {
        margin:-1rem 0 0 -0.6rem;
        font-size:1rem
    }
    .c-category-list>li {
        margin:1rem 0 0 .6rem;
        padding:.5rem 2rem
    }
    .c-category-list>li>a {
        margin:-0.5rem -2rem
    }
}
/*----------------------------------------------------
  #news-single
--------------------------------------------------- */



.news-Header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 1px solid #e5e5e5;
  margin-bottom: 60px;	
}

.news-Header_Date {
  margin-right: 13px;
  font-size: 14px;
   color: #000;
  padding-top: 0.3em;
}

.news-Header_Categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  letter-spacing: 0;
}
.news-Header_Categories .post-categories {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}
.news-Header_Categories a {
  text-decoration: none;
  text-transform: uppercase;
  border: 1px solid #0068b7;
  background-color: #0068b7;
  border-radius: 6px;	
  padding: 3px 5px 3px;
  font-weight: 400;
  font-size: 14px;
  line-height: 1;
  color: #fff;
  letter-spacing: 0.05em;
}

.news-Header_Title {
  margin-top: 36px;
  width: 100%;
  font-weight: 500;
  font-size: 26px;
  line-height: 1.8;
  color: #49565e;
  letter-spacing: 0.09em;
}

@media (max-width: 991px) {
  .news-Header_Title {
    margin-top: 20px;
    margin-bottom: 10px;
    font-size: 1.25rem;
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
  .news-Header_Title br {
    display: none;
  }
}
.news-Header_Image {
  width: 100%;
  margin-top: 30px;
  text-align: center;
}

@media (max-width: 991px) {
  .news-Header_Image {
    margin-top: 10px;
  }
}


.news-BackBtn {
  position: relative;
  margin-top: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-bottom: 120px;
}
.news-BackBtn a {
  height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.news-BackBtn a div {
  position: relative;
  width: 100px;
  height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: 1px solid rgba(0, 0, 0, 0.24);
  border-radius: 50px;
  overflow: hidden;
}
.news-BackBtn a div > .circle {
  position: absolute;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  top: -2px;
  left: -2px;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}
.news-BackBtn a div > .circle circle {
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
  fill: transparent;
  stroke: #000;
  stroke-width: 1.5;
  stroke-dasharray: 0 366;
}
.news-BackBtn a div > .allow-right {
  width: 29.626px;
  height: 9.882px;
}
.news-BackBtn a div > .allow-right {
  -webkit-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
.news-BackBtn a > span {
  -webkit-transition: 0.3s all ease;
  transition: 0.3s all ease;
  display: block;
  padding-left: 20px;
  font-weight: 300;
  font-size: 0.875rem;
  line-height: 1.71429;
  color: #000;
  letter-spacing: 0.02em;
}
.news-BackBtn a:hover {
  opacity: 1;

}
.news-BackBtn a:hover div > .circle > circle {
  stroke-dasharray: 366 366;
}
.news-BackBtn a:hover > span {
  -webkit-transform: translateX(5px);
  transform: translateX(5px);
  color: #000;
}
.news-BackBtn.delighter {
  -webkit-transition: opacity 0.4s ease, -webkit-transform 1s ease;
  transition: opacity 0.4s ease, -webkit-transform 1s ease;
  transition: transform 1s ease, opacity 0.4s ease;
  transition: transform 1s ease, opacity 0.4s ease, -webkit-transform 1s ease;
}
.news-BackBtn.delighter:not(.started) {
  opacity: 0;
  -webkit-transform: translateY(10%);
  transform: translateY(10%);
}
.news-BackBtn.delighter.started {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

@media (max-width: 991px) {
  .news-BackBtn a > span {
    font-weight: 300;
    font-size: 0.875rem;
    line-height: 1.71429;
    color: #000;
    letter-spacing: 0.05em;
  }
}

/*----------------------------------------------------
  #works
--------------------------------------------------- */
.works .tb02 tr th {
	font-family: din-2014, sans-serif;
	font-weight: 500;
	font-size: 4rem;
	color: #aed2e9;
	line-height: 1;
	letter-spacing: 0.02em;
	/*vertical-align: middle;*/
	margin-bottom: 30px;
}
.works .tb02 tr:nth-child(odd) th {
	color: #CCCFDA;
}

.tb02{
	border-spacing: 0;
	text-align: left;
	width:100%;

}
.tb02 td,
.tb02 th{
	padding:2.8rem 0;
	border-bottom:1px solid #E1EBF3;
	line-height:1.75;

	
}

.tb02 th{
	padding-left:0;
	padding-right:4.4rem;
	white-space:nowrap;
	text-align:left;
	font-weight: bold;
	color:#333;
	vertical-align:top;
}
.tb02 td{

	padding-right:0 ;
	text-align:left;
		vertical-align:middle;
}
.tb02 tr:first-child td,
.tb02 tr:first-child th{
	border-top:1px solid #E1EBF3;
}
@media screen and (max-width:767px) {
.history  .tb02 th{
	padding-bottom:2%;
}
	
.tb02 tr:first-child td, .tb02 tr:first-child th {
    border-top: none;
}
.tb02 th{
    padding: 16px 0 0 0;
	border-bottom:none;
}
.tb02 td{
    padding: 2px 0 16px 0;
}
.tb02 td,
.tb02 th{
	display:block;
}
	
}	



/*----------------------------------------------------
  #product-dt
--------------------------------------------------- */

.product-dt dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 20px;
    overflow: hidden;
    -webkit-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch;
}
.product-dt dl.border-set {
}


.product-dt dl.border-set > dt {
    /* padding: 28px 0; */
    padding: 4px 15px;
    text-align: center;
    color: #000;
    background-color: #e9e8e9;
    border-radius: 4px;
    margin-bottom: 15px;
    height: 30px;
}


.product-dt dl.border-set > dd {
	line-height: 1.6;
}


.product-dt dt {
    width: 130px;
    padding: 0 0 10px;
	font-size: 14px;
    font-weight: normal;
    color: #222;
}


.product-dt dd {
    width: calc(100% - 130px);
    padding: 0 0 10px 20px;


}
@media screen and (max-width: 767px){
.product-dt dl {
    display: block;
    margin-bottom: 15px;
}	
.product-dt dl.border-set > dt {
    /*padding: 15px 0 5px;*/
    border-top: 0 none;
    font-size: 14px;
}
.product-dt dl.border-set > dd {
    width: auto;
    padding: 0 0 15px;
    border-top: 0 none;
 }	
	
.product-dt dt {
    width: auto !important;
    padding-bottom: 5px !important;
}	
.product-dt dd {
    width: auto !important;
    padding: 0 0 15px;
}
}	

/*------------------------------------------------------------------------------

  works Item

------------------------------------------------------------------------------*/
@media print, screen and (min-width: 768px) {
  .business_item_wrapper {
    margin-top: 60px;
  }
}

@media only screen and (max-width: 767px) {
  .business_item_wrapper {
    margin-top: 8vw;
  }
}

@media print, screen and (min-width: 768px) {
  .business_item + .business_item {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 767px) {
  .business_item + .business_item {
    margin-top: 8vw;
  }
}

.business_item > a {
  border: 1px solid #e0e0e0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

@media print, screen and (min-width: 768px) {
  .business_item > a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 325px;
  }
}

@media only screen and (max-width: 767px) {
  .business_item > a {
    display: block;
  }
}

.business_item > a:hover .business_item_mainTtl {
  color: #00a0e9;
}

@media print, screen and (min-width: 768px) {
  .business_item_img {
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
}

@media print, screen and (min-width: 768px) {
  .business_item_img img {
    max-width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .business_item_img img {
    width: 100%;
    height: auto;
  }
}

@media print, screen and (min-width: 768px) {
  .business_item_content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    padding: 60px 60px 65px;
  }
}

@media only screen and (max-width: 767px) {
  .business_item_content {
    padding: 6.66667vw 6.66667vw 10.66667vw;
  }
}

.business_item_ttl {
  line-height: 1.6;
}

@media print, screen and (min-width: 768px) {
  .business_item_ttl {
    margin-bottom: 10px;
  }
}

@media only screen and (max-width: 767px) {
  .business_item_ttl {
    margin-bottom: 2.66667vw;
  }
}

.business_item_subTtl {
  color: #555;
  display: block;
  margin-bottom: 5px;	
}

@media print, screen and (min-width: 768px) {
  .business_item_subTtl {
    font-size: 13px;
  }
}

@media only screen and (max-width: 767px) {
  .business_item_subTtl {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.business_item_mainTtl {
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

@media print, screen and (min-width: 768px) {
  .business_item_mainTtl {
    font-size: 30px!important;
	margin-bottom: 50px;  
  }
}

@media only screen and (max-width: 767px) {
  .business_item_mainTtl {
    font-size: 20px;
    font-size: 5.33333vw;
	margin-bottom: 30px;  
  }
}

.business_item_txt > p {
  color: #333;
  line-height: 1.9;
}

@media print, screen and (min-width: 768px) {
  .business_item_txt > p {
    font-size: 15px;
  }
}

@media only screen and (max-width: 767px) {
  .business_item_txt > p {
    font-size: 14px;
    font-size: 3.73333vw;
  }
}

.business_item_tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 768px) {
  .business_item_tag {
    margin-top: 15px;
  }
}

@media only screen and (max-width: 767px) {
  .business_item_tag {
    margin-top: 4vw;
  }
}

.business_item_tag > span {
  border: 1px solid #222;
  text-align: center;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media print, screen and (min-width: 768px) {
  .business_item_tag > span {
    font-size: 12px;
    min-width: 80px;
    border-radius: 10px;
    line-height: 20px;
    margin-right: 5px;
  }
}

@media only screen and (max-width: 767px) {
  .business_item_tag > span {
    font-size: 12px;
    font-size: 3.2vw;
    min-width: 21.33333vw;
    border-radius: 2.66667vw;
    line-height: 5.33333vw;
    margin-right: 1.33333vw;
  }
}

.business_item_tag.individuals > span {
  color: #fff;
  background-color: #222;
}

.business_item_tag.corporations > span {
  color: #222;
}

.business_item .business_arrow {
  position: absolute;
}

@media print, screen and (min-width: 768px) {
  .business_item .business_arrow {
    right: 20px;
    bottom: 20px;
  }
}

@media only screen and (max-width: 767px) {
  .business_item .business_arrow {
    right: 4vw;
    bottom: 4vw;
  }
}



@media print, screen and (min-width: 768px) {
.business_item_img {
width: 474px;
overflow: hidden;
position: relative;
}
.business_item_img img {
max-width: unset;
width: auto;
height: 100%;
position: absolute;
top: 50%;
left: 49%;
transform: translate(-50%, -50%);
}
}
html, body, a {
-webkit-tap-highlight-color: transparent;
}
.business_item_img::-moz-selection, img::-moz-selection {
background: transparent;
}
.business_item_img::selection, img::selection {
background: transparent;
}


/*
  Icon
------------------------------------------------------------------------------*/
.arrow_hover {
  position: relative;
}

.arrow_hover:hover .icon_arrow::after {
  -webkit-animation: arrowSlide 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s 1 forwards;
  animation: arrowSlide 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s 1 forwards;
}

.arrow_hover:hover .border_underLine::before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  -webkit-transform-origin: bottom left;
  transform-origin: bottom left;
}

.arrow_hover:hover .arrow_diagonal-g::after {
  background-image: url(../images/icon_arrow_diagonal.svg);
}

.arrow_hover:hover .icon_arrow-g::after {
  background-image: url(../images/icon_arrow.svg);
}

.arrow_hover.arrow_center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 1;
}

.arrow_hover .inner_txt {
  margin-right: auto;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.arrow_hover.reverse:hover .icon_arrow::after {
  -webkit-animation: arrowSlide_r 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s 1 forwards;
  animation: arrowSlide_r 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s 1 forwards;
}

.shift_hover {
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

@media print, screen and (min-width: 768px) {
  .shift_hover:hover {
    -webkit-box-shadow: 0 5px 20px 0 rgba(4, 0, 0, 0.1);
    box-shadow: 0 5px 20px 0 rgba(4, 0, 0, 0.1);
    -webkit-transform: translateY(-3px);
    transform: translateY(-3px);
  }
}

@media only screen and (max-width: 767px) {
  .shift_hover:hover {
    -webkit-box-shadow: 0 1.33333vw 5.33333vw 0 rgba(4, 0, 0, 0.1);
    box-shadow: 0 1.33333vw 5.33333vw 0 rgba(4, 0, 0, 0.1);
    -webkit-transform: translateY(-0.8vw);
    transform: translateY(-0.8vw);
  }
}

.icon_arrow {
  position: relative;
  display: inline-block;
  overflow: hidden;
}

@media print, screen and (min-width: 768px) {
  .icon_arrow {
    margin-left: 13px;
    width: 12px;
    height: 13px;
  }
}

@media only screen and (max-width: 767px) {
  .icon_arrow {
    margin-left: 2.93333vw;
    width: 3.2vw;
    height: 3.46667vw;
  }
}

.icon_arrow::after {
  content: '';
  position: absolute;
  display: block;
  background: url(../images/icon_arrow.svg) center/contain no-repeat;
  top: 0;
  left: 0;
}

@media print, screen and (min-width: 768px) {
  .icon_arrow::after {
    width: 12px;
    height: 13px;
  }
}

@media only screen and (max-width: 767px) {
  .icon_arrow::after {
    width: 3.2vw;
    height: 3.46667vw;
  }
}
/*
  Animation
------------------------------------------------------------------------------*/
@-webkit-keyframes arrowSlide {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  50.0% {
    -webkit-transform: translate3d(60%, 0, 0);
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
  50.1% {
    -webkit-transform: translate3d(-60%, 0, 0);
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
@keyframes arrowSlide {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  50.0% {
    -webkit-transform: translate3d(60%, 0, 0);
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
  50.1% {
    -webkit-transform: translate3d(-60%, 0, 0);
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@-webkit-keyframes arrowSlide_r {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  50.0% {
    -webkit-transform: translate3d(-60%, 0, 0);
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
  }
  50.1% {
    -webkit-transform: translate3d(60%, 0, 0);
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

@keyframes arrowSlide_r {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
  50.0% {
    -webkit-transform: translate3d(-60%, 0, 0);
    transform: translate3d(-60%, 0, 0);
    opacity: 0;
  }
  50.1% {
    -webkit-transform: translate3d(60%, 0, 0);
    transform: translate3d(60%, 0, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}
/******************************************************************************
 * features-content
*******************************************************************************/

.features-content {
    margin-bottom: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
}

.features-content-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 80px 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.features-content-img-wrap {
    position: relative;
}
.features-content-img-wrap::before {
    content: "";
    position: absolute;
    top: 20px;
    left: 20px;
    width: 460px;
    height: 460px;
    background: linear-gradient(100.06deg, #2094ed 12.17%, #0081e3 82.98%);
    border-radius: 10px;
}
.features-content-img {
    border: 4px solid #0081e3;
    border-radius: 10px;
    width: 460px;
    height: 460px;
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
}
.features-content-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    cursor: -webkit-grab;
    cursor: grab;
}

.features-content-text {
    max-width: 490px;
    margin: 0 auto;
    position: relative;
}

.features-content-text .ttl {
    font-size: 28px;
    font-weight: bold;
    padding-bottom: 20px;
    margin-bottom: 30px;
    position: relative;
    line-height: 1.6;
}
.features-content-text .ttl-1::before {
    background-image: url(../images/f-line.svg);
    width: 70px;
    height: 20px;
}
.features-content-text .ttl::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: left;
}
@media (max-width: 1120px) {

.features-content-left {
    margin-left: auto;
}
.features-content-inner {
    padding: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.features-content-img-wrap {
    margin: 0 auto 40px;
    padding-right: 2.66vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}	
.features-content-img-wrap::before {
    width: 72vw;
    height: 72vw;
    top: 10px;
    left: 10px;
}
.features-content-img {
    width: 72vw;
    height: 72vw;
}	
.features-content-text {
    max-width: 74.66vw;
}
.features-content-text .ttl {
    font-size: clamp(18px,5vw,3vw);
    margin-bottom: 25px;
}
.features-content-text .ttl-1::before {
    width: 50px;
    height: 13px;
}	
}

@media (max-width: 768px) {
	
.features-content-text {
    max-width: 100%;
}	
}	
/******************************************************************************
 * FLOW
*******************************************************************************/
.flow-step {
   /* border-top: 1px solid #e5e5e5;*/
	margin-top: 40px;
}

.flow-step__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 6rem 0;
    /*border-bottom: 1px solid #e5e5e5;*/
    --tw-bg-opacity: 1;
    --tw-shadow: 0px 3px 10px 0px hsla(0, 0%, 55%, .2);
    --tw-shadow-colored: 0px 3px 10px 0px var(--tw-shadow-color);
    --tw-shadow-color: rgba(0, 0, 0, .05);
    --tw-shadow: var(--tw-shadow-colored);
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
    border-radius: 30px;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    overflow: hidden;
	margin-bottom: 30px;
}

.flow-step__num {
    width: 16.7%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 45px!important;
    line-height: 1;
    text-align: center;
    color: #15171c;
    position: relative;
    top: .5rem;
}

.flow-step__num span {
    display: inline-block;
    margin-bottom: 15px;
    font-size: 12px;
    color: #777777;
    text-transform: uppercase;
}


.flow-step__inner {
    width: calc(100% - 16.7%);
}

.flow-step__heading {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.4;
    color: #15171c;
}

.flow-step__txt {
    margin-top: 1.7rem;
    font-size: 1.6rem;
    line-height: 2;
    color: #555555;
    text-align: justify;
}
.flow-step__txt[data-txtcrop=true]:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc(((-1.6rem * 2) + 1.6rem) / 2 + 0rem);
}

.flow-step__txt[data-txtcrop=true]:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    margin-top: calc(((-1.6rem * 2) + 1.6rem) / 2 + 0rem);
}
@media screen and (max-width: 768px){
	
	.flow-step__content {
    display: block;
    padding: 2.5rem 0;
}
	
	.flow-step__num {
    width: 100%;
    font-size: 4.6rem;
    top: 0;
}
	
	.flow-step__num span {
    margin-bottom: .3rem;
    font-size: 1.1rem;
}
.flow-step__inner {
    width: 100%;
    margin-top: 1rem;
}	
.flow-step__heading {
    font-size: 1.6rem;
    text-align: center;
}
.flow-step__txt {
    font-size: 1.3rem;
}	
.flow-step__txt[data-txtcrop=true]:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    margin-bottom: calc(((-1.3rem * 2) + 1.3rem) / 2 + 0rem);
}
.flow-step__txt[data-txtcrop=true]:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    margin-top: calc(((-1.3rem * 2) + 1.3rem) / 2 + 0rem);
}	
}
.flow-deadline__item {
    justify-content: space-between;
    align-items: center;
    padding-bottom: 10px;
    position: relative;
}


.flow-deadline__item .head {
    display: flex;
    margin-bottom: 25px;
    line-height: 1;
}

.flow-deadline__item .head .deadline {
    font-size: 12px;
    font-weight: 600;
    color: #ffffff;
}
.flow-deadline__item .head .deadline {
    letter-spacing: 0.12em;
	background-color: #000;
padding: 0.4em 0.8em 0.4em;
}
.flow-deadline__item .head .deadline:after {
    content: "";
    position: absolute;
    top: 17px;
    width: 1.3rem;
    height: 1px;
	margin-left: 22px;
	background-color: #e6e6e6
	
}
.flow-deadline__item .head .period {
    font-size: 12px;
    font-weight: 600;
    color: #727c7c;
}
.flow-deadline__item .head .period {
    letter-spacing: 0.12em;
	margin-left: 50px;
}

@media only screen and (max-width:768px){
	
	.flow-deadline__item .head .deadline {
    font-size: 12px;
    font-weight: 600;
    color: #ffffff;
	font-family: "Sawarabi Mincho", YuMincho, "Yu Mincho", 'Hiragino Mincho ProN', Georgia, "Times New Roman", Times, 'MS P Mincho', 'MS Mincho', serif;

}	
.flow-deadline__item .head .period {
    font-size: 12px;
    font-weight: 600;
    color: #727c7c;
}	
.flow-deadline__item .head .period {
    letter-spacing: 0.12em;
}
.flow-deadline__item .name {
    font-size: 20px;
    font-weight: 600;
    color: #1a1b1b;
}
.flow-deadline__item .head .deadline:after {
    top: 11px;
	
}
	
}

/******************************************************************************
 * business
*******************************************************************************/
.business_content .business_content_wrap {
  position: relative;
}
.business_content .business_content_wrap .bg_m-blue {
  background-color: #00a0e9;
  width: 50%;
  height: 60%;
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  z-index: -1;
  margin: 0 calc(50% - 50vw);
  width: 50vw;
  border-radius: 16px 0 0 16px;
}
@media screen and (min-width: 750px) {
  .business_content .business_content_wrap .bg_m-blue {
    height: 100%;
    width: 30vw;
  }
}
@media screen and (max-width: 749px) {
  .business_content .business_content_wrap .bg_m-blue {
    display: none;
  }
}
.business_content .business_content_wrap .bg_m-blue.is-top {
  height: 47%;
}
@media screen and (min-width: 750px) {
  .business_content .business_content_wrap .bg_m-blue.is-top {
    height: 80%;
  }
}
.business_content .business_content_wrap .business_top .bg_m-blue {
  height: 330px;
}
.business_content .business_content_wrap .business_top .business_img {
  aspect-ratio: 17/13;
}
@media screen and (min-width: 750px) {
  .business_content .business_content_wrap .business_top .business_img {
    aspect-ratio: 2/1;
  }
}
.business_content .business_content_wrap .business_mv {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 750px) {
  .business_content .business_content_wrap .business_mv {
    flex-direction: column-reverse;
  }
}
.business_content .business_content_wrap .business_mv .business_img_wrap {
  padding: 36px 0 50px;
  position: relative;
}
@media screen and (max-width: 749px) {
  .business_content .business_content_wrap .business_mv .business_img_wrap:before {
    content: "";
    position: absolute;
    margin: auto;
    top: 0;
    right: -16px;
    width: calc(50% + 16px);
    height: 100%;
    background-color: #ec6427;
    border-radius: 16px 0 0 16px;
    z-index: 0;
  }
}
.business_content .business_content_wrap .business_mv .business_img_wrap .business_img {
  width: 100%;
  position: relative;
  z-index: 1;
}
.business_content .business_content_wrap .business_mv .business_img_wrap .business_img.mid_img {
  max-width: 880px;
  margin: 0 auto;
}
.business_content .business_content_wrap .business_mv .business_img_wrap .business_img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  border-radius: 10px;
}
.business_content .business_content_wrap .business_mv .business_ttl {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
@media screen and (min-width: 750px) {
  .business_content .business_content_wrap .business_mv .business_ttl {
    flex-direction: row;
    gap: 40px;
    align-items: baseline;
  }
}
.business_content .business_content_wrap .business_mv .business_ttl .logo_kindest {
  width: 120px;
}
@media screen and (min-width: 750px) {
  .business_content .business_content_wrap .business_mv .business_ttl .logo_kindest {
    width: 220px;
  }
}
.business_content .business_content_wrap .business_mv .business_ttl .logo_kindest img {
  width: 100%;
}
.business_content .business_content_wrap .business_mv .business_ttl h3 {
  font-size: 18px;
  letter-spacing: 0.04rem;
}
@media screen and (min-width: 750px) {
  .business_content .business_content_wrap .business_mv .business_ttl h3 {
    font-size: 24px;
    line-height: 36px;
  }
}
.business_content .business_content_wrap .business_mv .business_ttl h3 img {
  height: auto;
  width: 40px;
  margin-right: 8px;
}
.business_content .business_content_wrap .business_txt {
  margin-top: 14px;
  letter-spacing: 1px;
  line-height: 2rem;
  font-size: 14px;
}
@media screen and (min-width: 750px) {
  .business_content .business_content_wrap .business_txt {
    font-size: 16px;
    width: 70%;
  }
}
/*----------------------------------------------------
  top-img
--------------------------------------------------- */

.hero img {
    width: 100%;
    height: auto;
}


/*----------------------------------------------------
  #Features
--------------------------------------------------- */

.features {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: 3.4%;
}
.features h3 {
  color: #fff;	
  position: relative;
  padding: 2%;
  /*border: 3px solid #086afc;*/
  border-radius: 10px;
  background: linear-gradient(97.61deg, #0081e3 13.66%, #29c0ff 101.36%);
  font-weight: bold;
  font-size: 20px;
  text-align: left;
  margin: 40px auto 40px;
  width: 100%;
  display: block;
}



.features h3 span {
  font-size: 28px;
  font-weight: bold;
  color: #FFF;
  -webkit-text-stroke: 0.5px #000!important;
  display: inherit;
  margin-bottom: 10px;
}

/*----------------------------------------------------
  #t-top-recruit
--------------------------------------------------- */

.t-top-recruit {
	color: #fff;
	padding: 5rem 0;
	text-align: center;
	border-radius: 15px;
	position: relative;
	text-decoration: none;
	overflow: hidden;
	background: url(../images/movie.jpg) no-repeat center center/cover;
	display: -webkit-box;
	display: -moz-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-moz-align-items: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-moz-justify-content: center;
	justify-content: center
}
@media screen and (max-width:768px) {
	.t-top-recruit {
		padding: 3rem;
		border-radius: 10px
	}
}
.t-top-recruit:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	background: rgba(0, 0, 0, 0.3);
	-webkit-transition: all .4s ease;
	-o-transition: all .4s ease;
	transition: all .4s ease
}
@media screen and (max-width:768px) {
	.t-top-recruit:after {
		background: rgba(0, 0, 0, 0.6)
	}
}
.t-top-recruit:hover:after {
	background: rgba(0, 0, 0, 0.4)
}
.t-top-recruit__text {
	position: relative;
	z-index: 10;
	font-family: "Zen Maru Gothic", serif;
}
.t-top-recruit__text__en {
	font-size: 1.6rem;
	font-weight: bold;
	text-transform: uppercase;
	color: #fff;
	text-shadow: #2a2a2a 1px 0 10px;
}
@media screen and (max-width:768px) {
	.t-top-recruit__text__en {
		font-size: 1.2rem
	}
}
.t-top-recruit__text__heading {
	font-size: 2.8rem;
	margin: 3rem 0;
	position: relative;
	color :#fff;
	text-shadow: #2a2a2a 1px 0 10px;
}
@media screen and (max-width:768px) {
	.t-top-recruit__text__heading {
		font-size: 2.6rem;
		line-height: 1.4;
		margin: .5rem 0 2rem
	}
}
.t-top-recruit__text__heading:after {
	content: "";
	width: 100%;
	height: 3px;
	background: #fff;
	display: block;
	margin-top: 1.5rem
}
@media screen and (max-width:768px) {
	.t-top-recruit__text__heading:after {
		display: none
	}
}
.t-top-recruit__text__copy {
	text-align: center;
	color: #fff;
	line-height: 2.14;
	text-shadow: #2a2a2a 1px 0 10px;
}



/* ---------------------------------------------
*  top-cts-bnr
--------------------------------------------- */
.top-cts-bnr__link {
  display: block;
  color: #fff!important;
  overflow: hidden;
  position: relative;
}
.top-cts-bnr__link::before {
  content: "";
  position: absolute;
  z-index: 0;
  display: block;
  background-image: url(../images/movie.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  transform: scale(1);
  transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}
.top-cts-bnr__inner {
  margin-left: auto;
  margin-right: auto;
  padding-left: 8vw;
  padding-right: 8vw;
  padding-top: 12.2666666667vw;
  padding-bottom: 35.4666666667vw;
  position: relative;
  z-index: 1;
}
.top-cts-bnr__hdg {
  font-size: max(3.0666666667vw, .8rem);
  font-weight: 400;
  letter-spacing: 0.04em;
  padding-bottom: max(4.2666666667vw, 16px);
  font-weight: 500;
  line-height: 1;
  position: relative;
}
.top-cts-bnr__hdg::after {
  content: "";
  display: block;
  width: 9.6vw;
  height: 0.5333333333vw;
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
}
.top-cts-bnr__copy {
  font-size: max(5.8666666667vw, 1.375rem);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.04em;
  margin-top: 6.4vw;
	text-align: center;
}
.top-cts-bnr__desc {
  font-size: max(4vw, 0.9375rem);
  line-height: 1.6;
  margin-top: 7.4666666667vw;
  text-align: center;	
}
.top-cts-bnr__btn {
  position: absolute;
  bottom: 9.3333333333vw;
  right: 6.6666666667vw;
}

.top-cts-bnr__btn svg{
	fill:#fff;
}





@media screen and (min-width: 769px) {


  .top-cts-bnr__link::before {
    background-image: url(../images/movie.jpg);
  }
  .top-cts-bnr__link:hover {
    transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);
  }
  .top-cts-bnr__link:hover::before {
    transform: scale(1.03);
  }
  .top-cts-bnr__link:hover .c-btnCircle__circle {
    transform: scale(1.15);
  }
  .top-cts-bnr__inner {
    padding-left: 9.375vw;
    padding-right: 9.375vw;
  }
  .top-cts-bnr__inner {
    padding-top: 7vw;
    padding-bottom: 5.59375vw;
  }
  .top-cts-bnr__hdg {
    font-size: 1.696875vw;
    font-size: max(1.5696875vw, 1.2375rem);
    padding-bottom: 12px;
    padding-bottom: max(0.9375vw, 12px);
  }
  .top-cts-bnr__hdg::after {
    width: 3.125vw;
    height: 0.15625vw;
  }
  .top-cts-bnr__copy {
    font-size: 2.5vw;
    font-size: max(2vw, 2rem);
    line-height: 1.5555555556;
    margin-top: 1.09375vw;
  }
  .top-cts-bnr__desc {
    font-size: 1.40625vw;
    font-size: max(1.40625vw, 1.125rem);
    line-height: 1.5555555556;
    font-weight: 500;
    letter-spacing: 0.04em;
    margin-top: 1.40625vw;
  }
  .top-cts-bnr__btn {
    bottom: 3.125vw;
    right: 3.125vw;
  }
  .top-cts-bnr__btn .c-btnCircle__text {
    font-weight: 500;
	  font-size: 16px;
  }
  }	
/*----------------------------------------------------
  #history
--------------------------------------------------- */
.history .tb02 th {
	font-family: din-2014, sans-serif;
	font-weight: 300;
	font-size: 4.8rem;
	color: #CCCFDA;
	line-height: 1;
	letter-spacing: 0.02em;
	vertical-align: middle;
}
.tb02{
	border-spacing: 0;
	text-align: left;
	width:100%;

}
.tb02 td,
.tb02 th{
	padding:2.8rem 0;
	border-bottom:1px solid #E1EBF3;
	line-height:1.75;

	
}

.tb02 th{
	padding-left:0;
	padding-right:4.4rem;
	white-space:nowrap;
	text-align:left;
	font-weight: bold;
	color:#333;
	vertical-align:top;
}
.tb02 td{

	padding-right:0 ;
	text-align:left;
		vertical-align:middle;
}
.tb02 tr:first-child td,
.tb02 tr:first-child th{
	border-top:1px solid #E1EBF3;
}
@media screen and (max-width:767px) {
.history  .tb02 th{
	padding-bottom:2%;
}
	
.tb02 tr:first-child td, .tb02 tr:first-child th {
    border-top: none;
}
.tb02 th{
    padding: 16px 0 0 0;
	border-bottom:none;
}
.tb02 td{
    padding: 2px 0 16px 0;
}
.tb02 td,
.tb02 th{
	display:block;
}
	
}	
/******************************************************************************
 * cmn-tbl
*******************************************************************************/
.cmn-tbl table {
  border-collapse: collapse;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  box-shadow: 0 0 15px -6px #00000073;
}
.cmn-tbl table tr {
  background-color: #fff;
}
.cmn-tbl table tbody tr.gray-c {
  background-color: #f9f9f9;
}

.cmn-tbl table tbody tr:hover{
  background-color: #fffae9;
}
.cmn-tbl table th,
.cmn-tbl table td {
  padding: 1em 1em;
  border: 1px solid #eee;
}
.cmn-tbl table thead th {
    font-size: 18px;
    padding: 1em;
	text-align: left;
}
.cmn-tbl table thead tr{
  background-color: #0068b7;
  color:#fff;
}
.cmn-tbl table tbody th {
	vertical-align: middle;
	line-height: 1.4;
}
.cmn-tbl table tbody td {
	vertical-align: middle;
	line-height: 1.4;
}	

.cmn-tbl .txt{
   text-align: left;
   font-size: 14px;
}
.cmn-tbl .occupation{
  text-align: left;
  color: #000;
  font-weight: bold;
}

.cmn-tbl .outline{
  text-align: left;
  color: #000;
  font-weight: bold;
}
.cmn-tbl .comment {
  margin: 0 auto;
  width: 90%;
}
.cmn-tbl .p-small{font-size: 14px;line-height: 24px}

.cmn-new {
    font-family: Open Sans,sans-serif;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    font-size: 12px;
    font-style: normal;
	margin-right: 10px;
}
.cmn-new {
    font-weight: 700;
    color: #e30d0d;
}

@media screen and (max-width: 600px) {
	.sp-th{display: none;}	
  .cmn-tbl table {
    border: 0;
    width:100%
  }
  .cmn-tbl table th{
    background-color: #0068b7;
    display: block;
    border-right: none;
	  width: 100%!important;
  }
  .cmn-tbl table thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  .cmn-tbl table tr {
    display: block;
    margin-bottom: .625em;
  }
  .cmn-tbl table td {
    border-bottom: 1px solid #bbb;
    display: block;
    font-size: .9em;
	line-height: 1.4;
    text-align: left;
    position: relative;
    padding: .625em .825em 2em 8em;
    border-right: none;
	  
  }
  
  .cmn-tbl table td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
    color: #000;
	white-space: pre  
  }
  .cmn-tbl table td:last-child {
    border-bottom: 0;
  }
  .cmn-tbl table tbody th {
    color: #fff;
}
.cmn-tbl .occupation{
  color: #fff;
}

.cmn-tbl .outline{
  color: #a6a6a6;
}
.cmn-new {
    font-weight: 700;
}
	
}
/******************************************************************************
 * rec-new
*******************************************************************************/

.c-bracketsHeader_inner {
  display: inline-block;
  position: relative;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#00b7ff), color-stop(35%, #0098ec), color-stop(55%, #007bd7), color-stop(75%, #0062c4), to(#004bb1));
  background-image: linear-gradient(-180deg, #00b7ff 0%, #0098ec 35%, #007bd7 55%, #0062c4 75%, #004bb1 100%);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 2px 100%;
  text-align: center;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", Meiryo;
  font-weight: bold;
  line-height: 1;
}
@media (min-width: 768px) {
  .c-bracketsHeader_inner {
    background-position: 0 0; 
    background-size: 4px 100%;
  }
}
.c-bracketsHeader_inner::before,
.c-bracketsHeader_inner::after {
  content: "";
  position: absolute;
  left: 0;
  width: 5px;
  height: 2px;
}
@media (min-width: 768px) {
  .c-bracketsHeader_inner::before,
  .c-bracketsHeader_inner::after {
    width: 11px;
    height: 4px;
  }
}
.c-bracketsHeader_inner::before {
  top: 0;
  background-color: #00b6ff;
}
@media (min-width: 768px) {
  .c-bracketsHeader_inner::before {
    top: 0%;
  }
}
.c-bracketsHeader_inner::after {
  bottom: 0;
  background-color: #004bb1;
}
@media (min-width: 768px) {
  .c-bracketsHeader_inner::after {
    top: calc(100% - 4px);
    bottom: auto;
  }
}
.c-bracketsHeader_inner .cts {
  display: inline-block;
  padding: 0 30px;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#00b7ff), color-stop(35%, #0098ec), color-stop(55%, #007bd7), color-stop(75%, #0062c4), to(#004bb1));
  background-image: linear-gradient(-180deg, #00b7ff 0%, #0098ec 35%, #007bd7 55%, #0062c4 75%, #004bb1 100%);
  background-repeat: no-repeat;
  background-position: 100% 0;
  background-size: 2px 100%;
  line-height: 1.5;
}


@media (min-width: 768px) {
  .c-bracketsHeader_inner .cts {
    width: 100%;
    background-position: 100% 0%;
    background-size: 4px 100%;
    letter-spacing: 5px;
    line-height: 2;
  }
}
.c-bracketsHeader_inner .cts::before,
.c-bracketsHeader_inner .cts::after {
  content: "";
  position: absolute;
  right: 0;
  width: 5px;
  height: 2px;
}
@media (min-width: 768px) {
  .c-bracketsHeader_inner .cts::before,
  .c-bracketsHeader_inner .cts::after {
    width: 11px;
    height: 4px;
  }
}
.c-bracketsHeader_inner .cts::before {
  top: 0;
  background-color: #00b6ff;
}
@media (min-width: 768px) {
  .c-bracketsHeader_inner .cts::before {
    top: 0;
  }
}
.c-bracketsHeader_inner .cts::after {
  bottom: 0;
  background-color: #004bb1;
}
@media (min-width: 768px) {
  .c-bracketsHeader_inner .cts::after {
    top: calc(100% - 4px);
  }
}


.typesquare_option h2{
	
	text-align: left;
	font-size :28px;
	font-weight: 600;
}
/*
.table_basic 
*/
table.table_basic {
  width: 100%;
  table-layout: fixed;
  font-size: 0.933rem;
  /*margin: 2rem 0;*/
	padding-bottom: 60px;
  border-top: 1px solid var(--clrBorderColor, #c0e5ff);
}
table.table_basic tr {
  border-bottom: 1px solid var(--clrBorderColor, #c0e5ff);
}
table.table_basic tr:nth-child(odd) {
  background-color: var(--clrBodyToneBg, #d9efff);
}
table.table_basic th {
  padding: 0.5em;
  width: 15em;
  white-space: nowrap;
  vertical-align: top;
  line-height: 1.6;
  text-align: left;
  font-size: 14px;
  font-weight: 300;
}
table.table_basic td {
  padding: 0.5em;
  width: auto;
  vertical-align: top;
  line-height: 1.6;	
  font-size: 14px;	
  text-align: right;	
  font-weight: 700;
	
}
@media only screen and (max-width: 767px){
	
.dl_table.rwd dl {
    margin: 0;
    border: none !important;
    background-color: transparent !important;
}	
.dl_table.rwd dt {
    display: block;
    background-color: var(--clrBodyToneBg, #f8f8f8);
}
.dl_table.rwd dd {
    display: block;
    padding: 0.75em 0;
}
	
table.table_basic tr {
    margin: 0;
    border: none !important;
    background-color: transparent !important;
}	
table.table_basic th {
    display: block;
    background-color: var(--clrBodyToneBg, #f8f8f8);
	width: 100%;
}
table.table_basic td {
    display: block;
    padding: 0.75em 0;
}	
	
}	

.heading {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 440px;
    height: 26px;
    margin-bottom: 30px;
    padding-top: 1px;
    font-size: 1.4rem;
    color: #fff;
    background: linear-gradient(97.61deg, #0081e3 13.66%, #29c0ff 101.36%);
    border-radius: 6px;
    box-sizing: border-box;
}

@media only screen and (max-width: 767px) {
    .heading {
        width: 64.666666666666668vw;
        height: 5.866666666666666vw;
        margin-bottom: 5.333333333333334vw;
        padding-top: 0.266666666666667vw;
        font-size: 2.666666666666667vw;
        border-radius: 4px;
    }
}
