@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Jost:wght@500&family=Noto+Sans+JP:wght@400;500;700&family=Roboto:wght@500&display=swap');


* {
    margin: 0;
    padding: 0;
} 
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
}
strong {
font-weight: bold;
}
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
    display: block;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

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

.clearfix:before, .clearfix:after{content:""; display:table;}
.clearfix:after{clear:both;}
.clearfix{zoom:1;}

/*base*/
html {
	font-size: 62.5%;
	position: relative;
	text-align: center;
	/*scroll-behavior: smooth;*/
}
body {
	background: #ffffff;
	text-align: center;
	color: #494949;
	font-size: 1.6rem;
	font-family: 'Noto Sans JP', "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
	line-height: 1.8;
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-weight: 400;
	position:relative;
	min-width: 140rem;
	overflow-x:hidden;
}

a {
	color: #333;
	text-decoration: none;
	-webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all  0.2s ease;
}

img {
	box-shadow: #fff 0 0 0;
	vertical-align:middle;
	max-width:100%;
}
a:hover {
	color: #eb6120;
}
a img{
	-webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all  0.2s ease;
}


.fw_roboto{ font-family: 'Roboto', sans-serif;}
.fw_jost{ font-family: 'Jost', sans-serif;}
.fw_mincho{font-family: "ヒラギノ明朝 ProN W3","HiraMinProN-W3","HG明朝E","ＭＳ Ｐ明朝","MS PMincho",serif;}

.container{
max-width:136rem;
margin:0 auto;
}

/*------------------------------------------------------------------------------------header*/
#header{
    position: fixed;
    left: 0;
    top: 0;
    margin: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    background-color: #fff;
    z-index: 50;
}

#header h1{
    text-align: left;
    position: relative;
    z-index: 6;
    padding: 1.5em 0 0 3.5em;
}
#header h1 a{
}
#header h1 img{
    height: 2.3em;
}
#header ul{
    display: flex;
    align-items: center;
    padding: 1em 3.5em 1.5em 1em;
}
#header li{
    padding-left:2.5em;
    font-size: 1.5rem;
    font-weight: 500;
}
#header li.btn2{
    padding-left: 1em;
}
#header li.btn1 a,#header li.btn2 a{
    display: block;
    font-size: 1.6rem;
    border-radius: 0.4em;
    width: 11em;
    padding: 0.6em 0;
    color: #fff;
}
#header li.btn1 a{
    background-color: #eb6120;
}
#header li.btn2 a{
    background-color: #01a175;
}
#header li.btn1 a:hover,#header li.btn2 a:hover{
    background-color: #93c1df;
}
/* Underline From Left */
.hvr{
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  position: relative;
  overflow: hidden;
}
.hvr:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 100%;
  bottom: -0.1em;
  background: #eb6120;
  height: 0.3em;
  -webkit-transition-property: right;
  transition-property: right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr:hover:before, .hvr:focus:before, .hvr:active:before {
  right: 0;
}


/*------------------------------------------------------------------------------------popup*/
.kengaku_pop{
    cursor: pointer;
}
#popup{
    display: none;
    position: fixed;
    top: 6em;
    right: 3.5em;
    background-color: rgba(0,0,0,0.8);
    color: #fff;
    padding: 2.5em;
    font-weight: 500;
    width: 57.5em;
    z-index: 6;
    border-radius: 0.8em;
    text-align: justify;
}
#popup h3{
    font-size: 2.2rem;
    font-weight: 700;
}
#popup .txt{
    padding: 0.8em 0 1em 0;
}
#popup .pdf a{
    display: inline-block;
    background-color: #c90000;
    color: #fff;
    padding: 0.6em 3em;
    margin-right: 1em;
}
#popup .pdf a:hover{
    background-color: #eb6120;
}
#popup .pdf img{
    width: 2em;
    margin-right: 0.5em;
}
#popup .pdf span{
    font-size: 1.4rem;
    vertical-align: bottom;
}
#popup #close{
    position: absolute;
    font-size: 3rem;
    text-align: center;
    width: 1.5em;
    line-height: 1.5em;
    right: 0.5em;
    top: 0.5em;
    background-color: #fff;
    color: #000;
    cursor: pointer;
    border-radius: 50%;
}

/*------------------------------------------------------------------------------------drawer*/
#drawer {
    overflow: auto;
}
#drawer .inner{
    padding: 10% 0;
}
#drawer .navibox{
    padding: 7em 0 0 0;
}
#drawer .navibox ul{
    margin: 0 auto;
text-align:center;
}
#drawer .navibox li{
font-size:1.6rem;
    line-height: 1.2;
    padding-top: 2em;
}

#drawer .navibox li.stxt{
font-size:1.8rem;
    line-height: 1.2;
}
#drawer .navibox li p{
font-size:2rem;
    line-height: 1.2;
}
#drawer .navibox a{
color:#939393;
display:block;
padding:0.2em 0;
position:relative;
}
#drawer .navibox a:hover{
color:#fff;
}



/*------------------------------------------------------------------------------------detail*/

#maintitle{
    width: 100%;
    padding: 15em 8em;
    text-align: justify;
    position: relative;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
    margin-top: 5.5em;
}
#maintitle .txtbox{
}
#maintitle h2{
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
    padding-bottom: 0.5em;
}
#maintitle p{
    font-size: 4em;
    line-height: 1;
    font-weight: 700;
}

.flexbox{
    display: flex;
}



/*------------------------------------------------------------------------------------footer*/
#foot_btn{
    padding: 5em 0;
}
#foot_btn ul{
    display: flex;
    justify-content: center;
}
#foot_btn li{
    padding: 0 2em;
    line-height: 1.5;
}
#foot_btn li img{
    width: 12em;
}
#foot_btn li p{
    font-size: 1.8rem;
    padding-top: 1em;
}

#footer{
position:relative;
background-color:#f1f2f3;
font-size:1.5rem;
padding:6em 4em 2em 4em;
}
#footer .banner{
    display: flex;
    justify-content: center;
}
#footer .banner a{
    margin: 0 2em;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    color: #fff;
    text-align: left;
    font-size: 1.8rem;
    font-weight: 700;
    width: 23em;
    padding: 1em;
}
#footer .banner a p{
    display: block;
    text-align: center;
    width: 2.5em;
    line-height: 2.5em;
    background-color: rgba(255,255,255,0.5);
    border-radius: 50%;
    margin: 1.5em 0 0 auto;
	-webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all  0.2s ease;
}
#footer .banner a:hover p{
    background-color: rgba(255,255,255,1);
    color: #000;
}
#footer .banner a.banner1{
    background-image: url("../img/footer_btn1.jpg");
}
#footer .banner a.banner2{
    background-image: url("../img/footer_btn2.jpg");
}
#footer ul{
    display: flex;
    align-items: center;
    padding-top: 5em;
}
#footer li.logo{
    width: 10em;
}
#footer li{
    padding-left: 2em;
}

#copyright{
    font-size: 1.2rem;
    font-weight: 300;
    color: #fff;
    padding: 1.5em 1.5em 4em 1.5em;
    background-color: #3d3d3d;
}
#pagetop{
    position: fixed;
    right: 0;
    bottom: 0;
    width: 10em;
    z-index: 5;
}
/* Grow Rotate */
.rotate {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.rotate:hover, .rotate:focus, .rotate:active {
  -webkit-transform: scale(1.1) rotate(4deg);
  transform: scale(1.1) rotate(4deg);
}


@media screen and (min-width: 769px) and (max-width: 1486px) {
/*base*/
html {
	font-size: 0.7vw;
}
body {
	min-width: 100%;
	font-size:1.6rem;
}

.container{
max-width:100%;
padding:0 2.5em;
margin:0 auto;
}
/*------------------------------------------------------------------------------------header mini*/

/*------------------------------------------------------------------------------------detail mini*/
    
.scrolltxt{
    right: 0em;
}
#maintitle{
}
/*------------------------------------------------------------------------------------footer mini*/


}

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


html{
	font-size:2.5vw;
	}

body {
	min-width: 100%;
}

.container{
max-width:100%;
padding:0 1.5em;
margin:0 auto;
}
/*------------------------------------------------------------------------------------header sp*/
#header{
    width: 100%;
}
#header:after {
    border: 10em solid transparent;
    border-bottom-color: #fff;
    left: -10em;
}

#header h1{
    padding: 0.8em 0 0.8em 1em;
}
#header h1 img{
    height: 2em;
}

/*------------------------------------------------------------------------------------popup sp*/
#popup{
    top: auto;
    bottom: 8em;
    right: 0;
    left: 0;
    margin: 0 auto;
    padding: 2.5em 1.5em;
    background-color: rgba(0,0,0,0.9);
    width: 95%;
    z-index: 91;
}
#popup h3{
    font-size: 2.2rem;
    font-weight: 700;
}
#popup .txt{
    padding: 0.8em 0 1em 0;
}
#popup .pdf a{
    display: block;
    text-align: center;
    padding: 0.6em 3em;
    margin-right: 0;
}
#popup .pdf img{
    width: 2em;
    margin-right: 0.5em;
}
#popup .pdf span{
    display: block;
}
#popup #close{
    font-size: 3.5rem;
    right: 0.5em;
    top: 0.5em;
}

/*------------------------------------------------------------------------------------drawer sp*/
#drawer{
}
#drawer .inner{
padding:3em 0 5em 0;
}
#drawer .navibox{
    background-size: 100% auto;
}
#drawer .navibox ul{
width:100%;
}



/*------------------------------------------------------------------------------------detail sp*/

#maintitle{
    padding: 4em 1.5em;
    margin-top: 3.7em;
}
#maintitle h2{
    font-size: 1.8rem;
}
#maintitle p{
    font-size: 2.7rem;
}
    
    
/*------------------------------------------------------------------------------------footer sp*/
#foot_btn{
    padding: 4em 0;
}
#foot_btn ul{
}
#foot_btn li{
    width: 33%;
    padding: 0;
    font-size: 1.4rem;
}
#foot_btn li img{
    width: 90%;
}
#foot_btn li p{
    font-size: 1.6rem;
    line-height: 1.3;
    padding-top: 1em;
}

#footer{
font-size:1.5rem;
padding:4em 1.5em;
}
#footer .banner{
    justify-content: space-between;
}
#footer .banner a{
    margin: 0;
    font-size: 1.6rem;
    width: 48%;
}
#footer .banner a p{
    width: 2.5em;
    line-height: 2.5em;
    margin: 1.5em 0 0 auto;
}
    
#footer ul{
    display: none;
}
#copyright{
    text-align: left;
    padding-bottom: 7em;
}
#pagetop{
    width: 8em;
}

}

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

}
