@charset "utf-8";
/**
*********************************************************************************
/*
/* reset
/*
/*******************************************************************************/

html {
    font-size: 62.5%;
    -moz-text-size-adjust: none;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    text-align: left;
}

body, select {
    font-family: var(--font-main);
    background: #fff;
    color: var(--main-font-color);
    font-size: 1.6rem;
    letter-spacing: 0px;
    line-height: 1.875;
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: normal;
    /* font-feature-settings: "palt"; */
}

body {
    margin: 0;
    padding: 0;
    border: 0;
}

h1, h2, h3, h4, h5, h6, th, optgroup {
    font-weight: normal
}

::-webkit-validation-bubble-heading {
    font-weight: normal
}

button, input, select, textarea {
    font-family: inherit;
    font-size: 100%;
}

*, *:before, *:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

address, article, aside, blockquote, canvas, dd, div, dl, dt, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hr, li, main, nav, noscript, ol, output, p, pre, section, table, tfoot, ul, video, audio, caption, details, embed, ins, legend, menu, summary, tbody, td, th, thead, tr, small {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: bottom;
    font-size: 100%;
    list-style: none;
    letter-spacing: var(--default-letter-spacing);
}

a, abbr, acronym, *:after, b, bdo, *:before, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, object, q, samp, script, select, small, span, strong, sub, sup, textarea, time, tt, var, applet, audio, del, mark, strike, u {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: bottom;
    list-style: none;
}

em {
    font-style: normal
}

address {
    font-weight: normal
}

article, aside, canvas, details, figcaption, figure, header, footer, main, menu, nav, section, summary {
    display: block
}

blockquote, q {
    quotes: none
}

blockquote:before, blockquote:after, q:before, q:after {
    content: none
}

input, button, textarea, select {
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    outline: none
}

textarea, input[type="text"], input[type="button"], input[type="submit"], input[type="search"], input[type="reset"], select {
    border: 0
}

input[type=text], select, textarea {
    border: 1px solid #ccc
}

input[type="submit"], input[type="button"] {
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer
}

input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration {
    display: none
}

input[type="submit"]:focus, input[type="button"]:focus {
    outline-offset: -2px
}

input[type="checkbox"], input[type="radio"] {
    vertical-align: middle
}

::-webkit-input-placeholder {
    color: #7f7f7f
}

::-moz-placeholder {
    color: #7f7f7f
}

:-moz-placeholder {
    color: #7f7f7f
}

:-ms-input-placeholder {
    color: #7f7f7f
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%
}

a, a div, a p, a img, a:hover, a:hover div, a:hover p, a:hover img, a li, a dd {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

a:focus {
    outline: none
}

img {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    display: block
}

sup {
    font-size: 45%;
    vertical-align: top;
    position: relative;
    top: -.1em
}

sub {
    font-size: 75%;
    vertical-align: baseline;
    position: relative;
}

strong {
    font-weight: bold
}

a {
    display: inline-block;
    text-decoration: underline;
    color: inherit;
    opacity: 1;
    transition: 0.5s ease;
}

a img {
    backface-visibility: hidden;
}


#wrapper {
    position: relative;
    overflow: hidden;
}
video {
    filter: drop-shadow(0px 0px #000);
}

.slick-slider .slick-list img {
    -webkit-backface-visibility: hidden;
}

/*
****************************************
----------------------------------------
------- utility
----------------------------------------
****************************************
*/

.sent p+p, .sent .pstyle+.pstyle, .sent p+.pstyle, .sent p+.pstyle {
    margin-top: 0.8em
}


.hosoku {
    font-size: 1.3rem;
}

.txtb {
    font-size: 120%;
    vertical-align: baseline;
}

.txtms {
    font-size: 90%;
    vertical-align: baseline;
}

.txts {
    font-size: 70%;
    vertical-align: baseline;
}

.txtf {
    color: #56c4f5
}

.txtf02 {
    color: #ff0000
}

.attxt {
    color: #ff0000
}

.bold, .strong {
    font-weight: bold
}

.tal {
    text-align: left !important
}

.tar {
    text-align: right !important
}

.tac {
    text-align: center !important
}
.kome_block {
    padding-left: 1em;
    text-indent: -1em;
    display: block
}

.kome {
    text-indent: -1em;
    padding-left: 1em;
    line-height: 1.7;
}

.kome * {
    text-indent: 0
}

.clearfix::after {
    content: "";
    display: block;
    clear: both;
}

.mt00 {
    margin-top: 0 !important;
}

.mt05 {
    margin-top: 0.5rem !important;
}

.mt10 {
    margin-top: 1rem !important;
}

.mt15 {
    margin-top: 1.5rem !important;
}

.mt20 {
    margin-top: 2rem !important;
}

.mt25 {
    margin-top: 2.5rem !important;
}

.mt30 {
    margin-top: 3rem !important;
}

.mt35 {
    margin-top: 3.5rem !important;
}

.mt40 {
    margin-top: 4rem !important;
}

.mt45 {
    margin-top: 4.5rem !important;
}

.mt50 {
    margin-top: 5rem !important;
}

.mt55 {
    margin-top: 5.5rem !important;
}

.mt60 {
    margin-top: 6rem !important;
}

.mt65 {
    margin-top: 6.5rem !important;
}

.mt70 {
    margin-top: 7rem !important;
}

.mt75 {
    margin-top: 7.5rem !important;
}

.mt80 {
    margin-top: 8rem !important;
}

.mt85 {
    margin-top: 8.5rem !important;
}

.mt90 {
    margin-top: 9rem !important;
}

.mt95 {
    margin-top: 9.5rem !important;
}

.mt100 {
    margin-top: 10rem !important;
}

.mt105 {
    margin-top: 10.5rem !important;
}

.mt110 {
    margin-top: 11rem !important;
}

.mt115 {
    margin-top: 11.5rem !important;
}

.mt120 {
    margin-top: 12rem !important;
}

.mt125 {
    margin-top: 12.5rem !important;
}

.mt130 {
    margin-top: 13rem !important;
}

.mt135 {
    margin-top: 13.5rem !important;
}

.mt140 {
    margin-top: 14rem !important;
}

.mt145 {
    margin-top: 14.5rem !important;
}

.mt150 {
    margin-top: 15rem !important;
}

.mb00 {
    margin-bottom: 0 !important;
}

.mb05 {
    margin-bottom: 0.5rem !important;
}

.mb10 {
    margin-bottom: 1rem !important;
}

.mb15 {
    margin-bottom: 1.5rem !important;
}

.mb20 {
    margin-bottom: 2rem !important;
}

.mb25 {
    margin-bottom: 2.5rem !important;
}

.mb30 {
    margin-bottom: 3rem !important;
}

.mb35 {
    margin-bottom: 3.5rem !important;
}

.mb40 {
    margin-bottom: 4rem !important;
}

.mb45 {
    margin-bottom: 4.5rem !important;
}

.mb50 {
    margin-bottom: 5rem !important;
}

.mb55 {
    margin-bottom: 5.5rem !important;
}

.mb60 {
    margin-bottom: 6rem !important;
}

.mb65 {
    margin-bottom: 6.5rem !important;
}

.mb70 {
    margin-bottom: 7rem !important;
}

.mb75 {
    margin-bottom: 7.5rem !important;
}

.mb80 {
    margin-bottom: 8rem !important;
}

.mb85 {
    margin-bottom: 8.5rem !important;
}

.mb90 {
    margin-bottom: 9rem !important;
}

.mb95 {
    margin-bottom: 9.5rem !important;
}

.mb100 {
    margin-bottom: 10rem !important;
}

.mb105 {
    margin-bottom: 10.5rem !important;
}

.mb110 {
    margin-bottom: 11rem !important;
}

.mb115 {
    margin-bottom: 11.5rem !important;
}

.mb120 {
    margin-bottom: 12rem !important;
}

.mb125 {
    margin-bottom: 12.5rem !important;
}

.mb130 {
    margin-bottom: 13rem !important;
}

.mb135 {
    margin-bottom: 13.5rem !important;
}

.mb140 {
    margin-bottom: 14rem !important;
}

.mb145 {
    margin-bottom: 14.5rem !important;
}

.mb150 {
    margin-bottom: 15rem !important;
}

.pt00 {
    padding-top: 0 !important;
}

.pt05 {
    padding-top: 0.5rem !important;
}

.pt10 {
    padding-top: 1rem !important;
}

.pt15 {
    padding-top: 1.5rem !important;
}

.pt20 {
    padding-top: 2rem !important;
}

.pt25 {
    padding-top: 2.5rem !important;
}

.pt30 {
    padding-top: 3rem !important;
}

.pt35 {
    padding-top: 3.5rem !important;
}

.pt40 {
    padding-top: 4rem !important;
}

.pt45 {
    padding-top: 4.5rem !important;
}

.pt50 {
    padding-top: 5rem !important;
}

.pt55 {
    padding-top: 5.5rem !important;
}

.pt60 {
    padding-top: 6rem !important;
}

.pt65 {
    padding-top: 6.5rem !important;
}

.pt70 {
    padding-top: 7rem !important;
}

.pt75 {
    padding-top: 7.5rem !important;
}

.pt80 {
    padding-top: 8rem !important;
}

.pt85 {
    padding-top: 8.5rem !important;
}

.pt90 {
    padding-top: 9rem !important;
}

.pt95 {
    padding-top: 9.5rem !important;
}

.pt100 {
    padding-top: 10rem !important;
}

.pt105 {
    padding-top: 10.5rem !important;
}

.pt110 {
    padding-top: 11rem !important;
}

.pt115 {
    padding-top: 11.5rem !important;
}

.pt120 {
    padding-top: 12rem !important;
}

.pt125 {
    padding-top: 12.5rem !important;
}

.pt130 {
    padding-top: 13rem !important;
}

.pt135 {
    padding-top: 13.5rem !important;
}

.pt140 {
    padding-top: 14rem !important;
}

.pt145 {
    padding-top: 14.5rem !important;
}

.pt150 {
    padding-top: 15rem !important;
}

.pb00 {
    padding-bottom: 0 !important;
}

.pb05 {
    padding-bottom: 0.5rem !important;
}

.pb10 {
    padding-bottom: 1rem !important;
}

.pb15 {
    padding-bottom: 1.5rem !important;
}

.pb20 {
    padding-bottom: 2rem !important;
}

.pb25 {
    padding-bottom: 2.5rem !important;
}

.pb30 {
    padding-bottom: 3rem !important;
}

.pb35 {
    padding-bottom: 3.5rem !important;
}

.pb40 {
    padding-bottom: 4rem !important;
}

.pb45 {
    padding-bottom: 4.5rem !important;
}

.pb50 {
    padding-bottom: 5rem !important;
}

.pb55 {
    padding-bottom: 5.5rem !important;
}

.pb60 {
    padding-bottom: 6rem !important;
}

.pb65 {
    padding-bottom: 6.5rem !important;
}

.pb70 {
    padding-bottom: 7rem !important;
}

.pb75 {
    padding-bottom: 7.5rem !important;
}

.pb80 {
    padding-bottom: 8rem !important;
}

.pb85 {
    padding-bottom: 8.5rem !important;
}

.pb90 {
    padding-bottom: 9rem !important;
}

.pb95 {
    padding-bottom: 9.5rem !important;
}

.pb100 {
    padding-bottom: 10rem !important;
}

.pb105 {
    padding-bottom: 10.5rem !important;
}

.pb110 {
    padding-bottom: 11rem !important;
}

.pb115 {
    padding-bottom: 11.5rem !important;
}

.pb120 {
    padding-bottom: 12rem !important;
}

.pb125 {
    padding-bottom: 12.5rem !important;
}

.pb130 {
    padding-bottom: 13rem !important;
}

.pb135 {
    padding-bottom: 13.5rem !important;
}

.pb140 {
    padding-bottom: 14rem !important;
}

.pb145 {
    padding-bottom: 14.5rem !important;
}

.pb150 {
    padding-bottom: 15rem !important;
}


/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
PC
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
@media all and (min-width: 601px) {
	.tac_pc {
		text-align: center !important;
	}
	
	.mbs {
		margin-bottom: 10px !important;
	}
	
	.mbm {
		margin-bottom: 30px !important;
	}
	
	.mbl {
		margin-bottom: 60px !important;
	}
	
	.mbl01 {
		margin-bottom: 90px !important;
	}
	
	.mts {
		margin-top: 10px !important;
	}
	
	.mtm {
		margin-top: 30px !important;
	}
	
	.mtl {
		margin-top: 60px !important;
	}
	
	.mtl01 {
		margin-top: 90px !important;
	}
	
	.pbs {
		padding-bottom: 10px !important;
	}
	
	.pbm {
		padding-bottom: 30px !important;
	}
	
	.pbl {
		padding-bottom: 60px !important;
	}
	
	.pbl01 {
		padding-bottom: 90px !important;
	}
	
	.pts {
		padding-top: 10px !important;
	}
	
	.ptm {
		padding-top: 30px !important;
	}
	
	.ptl {
		padding-top: 60px !important;
	}
	
	.ptl01 {
		padding-top: 90px !important;
	}

	.mt00_pc {
		margin-top: 0px !important;
	}

	.mt05_pc {
		margin-top: 5px !important;
	}

	.mt10_pc {
		margin-top: 10px !important;
	}

	.mt15_pc {
		margin-top: 15px !important;
	}

	.mt20_pc {
		margin-top: 20px !important;
	}

	.mt25_pc {
		margin-top: 25px !important;
	}

	.mt30_pc {
		margin-top: 30px !important;
	}

	.mt35_pc {
		margin-top: 35px !important;
	}

	.mt40_pc {
		margin-top: 40px !important;
	}

	.mt45_pc {
		margin-top: 45px !important;
	}

	.mt50_pc {
		margin-top: 50px !important;
	}

	.mt55_pc {
		margin-top: 55px !important;
	}

	.mt60_pc {
		margin-top: 60px !important;
	}

	.mt65_pc {
		margin-top: 65px !important;
	}

	.mt70_pc {
		margin-top: 70px !important;
	}

	.mt75_pc {
		margin-top: 75px !important;
	}

	.mt80_pc {
		margin-top: 80px !important;
	}

	.mt85_pc {
		margin-top: 85px !important;
	}

	.mt90_pc {
		margin-top: 90px !important;
	}

	.mt95_pc {
		margin-top: 95px !important;
	}

	.mt100_pc {
		margin-top: 100px !important;
	}

	.mt105_pc {
		margin-top: 105px !important;
	}

	.mt110_pc {
		margin-top: 110px !important;
	}

	.mt115_pc {
		margin-top: 115px !important;
	}

	.mt120_pc {
		margin-top: 120px !important;
	}

	.mt125_pc {
		margin-top: 125px !important;
	}

	.mt130_pc {
		margin-top: 130px !important;
	}

	.mt135_pc {
		margin-top: 135px !important;
	}

	.mt140_pc {
		margin-top: 140px !important;
	}

	.mt145_pc {
		margin-top: 145px !important;
	}

	.mt150_pc {
		margin-top: 150px !important;
	}

	.mb00_pc {
		margin-bottom: 0px !important;
	}

	.mb05_pc {
		margin-bottom: 5px !important;
	}

	.mb10_pc {
		margin-bottom: 10px !important;
	}

	.mb15_pc {
		margin-bottom: 15px !important;
	}

	.mb20_pc {
		margin-bottom: 20px !important;
	}

	.mb25_pc {
		margin-bottom: 25px !important;
	}

	.mb30_pc {
		margin-bottom: 30px !important;
	}

	.mb35_pc {
		margin-bottom: 35px !important;
	}

	.mb40_pc {
		margin-bottom: 40px !important;
	}

	.mb45_pc {
		margin-bottom: 45px !important;
	}

	.mb50_pc {
		margin-bottom: 50px !important;
	}

	.mb55_pc {
		margin-bottom: 55px !important;
	}

	.mb60_pc {
		margin-bottom: 60px !important;
	}

	.mb65_pc {
		margin-bottom: 65px !important;
	}

	.mb70_pc {
		margin-bottom: 70px !important;
	}

	.mb75_pc {
		margin-bottom: 75px !important;
	}

	.mb80_pc {
		margin-bottom: 80px !important;
	}

	.mb85_pc {
		margin-bottom: 85px !important;
	}

	.mb90_pc {
		margin-bottom: 90px !important;
	}

	.mb95_pc {
		margin-bottom: 95px !important;
	}

	.mb100_pc {
		margin-bottom: 100px !important;
	}

	.mb105_pc {
		margin-bottom: 105px !important;
	}

	.mb110_pc {
		margin-bottom: 110px !important;
	}

	.mb115_pc {
		margin-bottom: 115px !important;
	}

	.mb120_pc {
		margin-bottom: 120px !important;
	}

	.mb125_pc {
		margin-bottom: 125px !important;
	}

	.mb130_pc {
		margin-bottom: 130px !important;
	}

	.mb135_pc {
		margin-bottom: 135px !important;
	}

	.mb140_pc {
		margin-bottom: 140px !important;
	}

	.mb145_pc {
		margin-bottom: 145px !important;
	}

	.mb150_pc {
		margin-bottom: 150px !important;
	}

	.pb00_pc {
		padding-bottom: 0px !important;
	}

	.pb05_pc {
		padding-bottom: 5px !important;
	}

	.pb10_pc {
		padding-bottom: 10px !important;
	}

	.pb15_pc {
		padding-bottom: 15px !important;
	}

	.pb20_pc {
		padding-bottom: 20px !important;
	}

	.pb25_pc {
		padding-bottom: 25px !important;
	}

	.pb30_pc {
		padding-bottom: 30px !important;
	}

	.pb35_pc {
		padding-bottom: 35px !important;
	}

	.pb40_pc {
		padding-bottom: 40px !important;
	}

	.pb45_pc {
		padding-bottom: 45px !important;
	}

	.pb50_pc {
		padding-bottom: 50px !important;
	}

	.pb55_pc {
		padding-bottom: 55px !important;
	}

	.pb60_pc {
		padding-bottom: 60px !important;
	}

	.pb65_pc {
		padding-bottom: 65px !important;
	}

	.pb70_pc {
		padding-bottom: 70px !important;
	}

	.pb75_pc {
		padding-bottom: 75px !important;
	}

	.pb80_pc {
		padding-bottom: 80px !important;
	}

	.pb85_pc {
		padding-bottom: 85px !important;
	}

	.pb90_pc {
		padding-bottom: 90px !important;
	}

	.pb95_pc {
		padding-bottom: 95px !important;
	}

	.pb100_pc {
		padding-bottom: 100px !important;
	}

	.pb105_pc {
		padding-bottom: 105px !important;
	}

	.pb110_pc {
		padding-bottom: 110px !important;
	}

	.pb115_pc {
		padding-bottom: 115px !important;
	}

	.pb120_pc {
		padding-bottom: 120px !important;
	}

	.pb125_pc {
		padding-bottom: 125px !important;
	}

	.pb130_pc {
		padding-bottom: 130px !important;
	}

	.pb135_pc {
		padding-bottom: 135px !important;
	}

	.pb140_pc {
		padding-bottom: 140px !important;
	}

	.pb145_pc {
		padding-bottom: 145px !important;
	}

	.pb150_pc {
		padding-bottom: 150px !important;
	}

	.pt00_pc {
		padding-top: 0px !important;
	}

	.pt05_pc {
		padding-top: 5px !important;
	}

	.pt10_pc {
		padding-top: 10px !important;
	}

	.pt15_pc {
		padding-top: 15px !important;
	}

	.pt20_pc {
		padding-top: 20px !important;
	}

	.pt25_pc {
		padding-top: 25px !important;
	}

	.pt30_pc {
		padding-top: 30px !important;
	}

	.pt35_pc {
		padding-top: 35px !important;
	}

	.pt40_pc {
		padding-top: 40px !important;
	}

	.pt45_pc {
		padding-top: 45px !important;
	}

	.pt50_pc {
		padding-top: 50px !important;
	}

	.pt55_pc {
		padding-top: 55px !important;
	}

	.pt60_pc {
		padding-top: 60px !important;
	}

	.pt65_pc {
		padding-top: 65px !important;
	}

	.pt70_pc {
		padding-top: 70px !important;
	}

	.pt75_pc {
		padding-top: 75px !important;
	}

	.pt80_pc {
		padding-top: 80px !important;
	}

	.pt85_pc {
		padding-top: 85px !important;
	}

	.pt90_pc {
		padding-top: 90px !important;
	}

	.pt95_pc {
		padding-top: 95px !important;
	}

	.pt100_pc {
		padding-top: 100px !important;
	}

	.pt105_pc {
		padding-top: 105px !important;
	}

	.pt110_pc {
		padding-top: 110px !important;
	}

	.pt115_pc {
		padding-top: 115px !important;
	}

	.pt120_pc {
		padding-top: 120px !important;
	}

	.pt125_pc {
		padding-top: 125px !important;
	}

	.pt130_pc {
		padding-top: 130px !important;
	}

	.pt135_pc {
		padding-top: 135px !important;
	}

	.pt140_pc {
		padding-top: 140px !important;
	}

	.pt145_pc {
		padding-top: 145px !important;
	}

	.pt150_pc {
		padding-top: 150px !important;
	}
}

/*______________________________________________________________________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
SP
______________________________
^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
@media all and (max-width: 600px) {
    .tal_sp {
		text-align: left !important;
	}

	.tac_sp {
		text-align: center !important;
	}

	.mbs {
		margin-bottom: 3vw !important;
	}

	.mbm {
		margin-bottom: 5vw !important;
	}

	.mbl {
		margin-bottom: 7vw !important;
	}

	.mbl01 {
		margin-bottom: 10vw !important;
	}

	.mts {
		margin-top: 3vw !important;
	}

	.mtm {
		margin-top: 5vw !important;
	}

	.mtl {
		margin-top: 7vw !important;
	}

	.mtl01 {
		margin-top: 10vw !important;
	}

	.pbs {
		padding-bottom: 3vw !important;
	}

	.pbm {
		padding-bottom: 5vw !important;
	}

	.pbl {
		padding-bottom: 7vw !important;
	}

	.pbl01 {
		padding-bottom: 10vw !important;
	}

	.pts {
		padding-top: 3vw !important;
	}

	.ptm {
		padding-top: 5vw !important;
	}

	.ptl {
		padding-top: 7vw !important;
	}

	.ptl01 {
		padding-top: 10vw !important;
	}

}