@charset "UTF-8";
/* !HTML5 elements
---------------------------------------------------------- */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}
/* !Reseting
---------------------------------------------------------- */
body {
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 16px;
    color: #333333;
}
body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td, figure, figcaption {
    margin: 0;
    padding: 0;
}
input, textarea {
    margin: 0;
    font-size: 100%;
}
label {
    cursor: pointer;
}
img {
    max-width: 100%;
    width: 100%; 
    height: auto; v
    ertical-align: top;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 100%;
}
fieldset, img {
    border: 0;
}
address, caption, cite, code, dfn, em, th, var {
    font-style: normal;
    font-weight: normal;
}
ol, ul {
    list-style: none;
}
caption, th {
    text-align: left;
}
h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal;
}
q:after, q:before {
    content: '';
}
a, input {
    outline: none;
}
input, textarea {
    border-radius: 0;
    font-family: "メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
input[type="button"], input[type="submit"] {
    -webkit-appearance: none;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
}
abbr, acronym {
    border: 0;
}
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
/* !Clearfix
---------------------------------------------------------- */
.clearfix, #header, #contents, section, .box_layout01, .box_column01, .list_inline01 {
    display: block;
    min-height: 1%;
}
.clearfix:after, #header:after, #contents:after, section:after, .box_layout01:after, .box_column01:after, .list_inline01:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}
/* !contents
---------------------------------------------------------- */
html {
    overflow-y: scroll;
}
@media print {
    html, html body {
        *zoom: 0.65;
    }
}
.Clear {
    clear: both;
}
a {
    color: #999;
    text-decoration: none;
}
a:hover {
    color: #000;
    text-decoration: none;
}
.row {
    width: 94%;
    margin: 0 auto;
}
.contents {
    margin: 0 auto;
    max-width: 800px;
    text-align: left;
    position: relative;
}
/* !汎用コンテンツ
---------------------------------------------------------- */
#Container {
    background: #fff;
    z-index: 10;
    padding-top: 60px;
}

/*---メインビジュアル---*/
#mainvisual {
    position: relative;
    width: 100%;
	height: 400px; /* 縦の高さを固定します */
	object-fit: cover; /* 横幅は画面サイズにあわせて伸縮します */
	background: url(../img/main.jpg) no-repeat center center;
}
#mainvisual img {
    width: 200px;
    position: absolute;
    left: 0;
    right: 0;
    top: 120;
    margin: auto;
}
@media screen and (max-width: 500px) {
    #mainvisual img {
    width: 180px;
    }
}
/*---メインビジュアル2---*/
#mainvisual2 {
	margin-bottom: 1px;
    width: 100%;
	height: 200px; /* 縦の高さを固定します */
	object-fit: cover; /* 横幅は画面サイズにあわせて伸縮します */
	background-image: url(../img/main2.jpg);
}
/*---ナビゲーション---*/ :root {
    --background-navbar: rgba(102, 102, 102, 1);
}
.header {
    background: var(--background-navbar);
    position: fixed;
    z-index: 999;/*最前面へ*/
    top: 0px;
    left: 0px;
    display: flex;
    width: 100%;
    height: 52px;0
    justify-content: space-between;
}

/* Nav items */
.menu {
    list-style: none;
    position: absolute;
    width: 100%;
    height: auto;
    top: 0;
    margin-top: 52px;
    padding: 0 0 10px 0;
    clear: both;
    background: var(--background-navbar);
    transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
    transform: scale(1, 0);
    transform-origin: top;
}
/* Hamburger menu button */
.menu-btn:checked ~ .menu {
    transform: scale(1, 1);
    transform-origin: top;
    transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}
/* Hamburger menbu text */
.menu a {
    text-decoration: none;
    font-weight: 500;
    letter-spacing: 2px;
    font-size: 16px;
    text-transform: capitalize;
    color: #ddd;
    opacity: 0;
    transition: 0.5s;
}
.menu li {
    border-top: 1px solid rgb(75, 75, 75);
    padding: 15px 0;
    margin: 0 54px;
    opacity: 0;
    transition: 0.5s;
}
.menu-btn:checked ~ .menu a, .menu-btn:checked ~ .menu li {
    opacity: 1;
    transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.2s;
}
.menu-btn {
    display: none;
}
.menu-icon {
    display: inline-block;
    position: relative;
    cursor: pointer;
    padding: 24px 14px;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.navicon {
    background: #ddd;
    display: block;
    height: 3px;
    width: 26px;
    position: relative;
    transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}
.navicon:before, .navicon:after {
    content: "";
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    background: #ddd;
    transition: 0.3192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}
.navicon:before {
    top: 9px;
}
.navicon:after {
    bottom: 9px;
}
/* Hamburger Menu Animation Start */
.menu-btn:checked ~ .menu-icon .navicon:before {
    transform: rotate(-45deg);
}
.menu-btn:checked ~ .menu-icon .navicon:after {
    transform: rotate(45deg);
}
.menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before {
    top: 0;
}
.menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
    bottom: 0;
}
.menu-btn:checked ~ .menu-icon .navicon {
    background: rgba(0, 0, 0, 0);
    transition: 0.2192s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;
}
/* Hamburger Menu Animation End */
/* Navbar Container */
.navtext-container {
    width: 100%;
    height: 52px;
    position: absolute;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
}
/* Navbar Text */
.navtext {
    position: absolute;
    text-transform: uppercase;
    color: #ddd;
    letter-spacing: 4px;
    font-size: 20px;
}

/* !Box
----------------------------------------------------------- */
/*---通常---*/
.box_column01 {
	margin: -16px 0 0 0;
}
	.box_column01 .col {
		float: left;
	}
	.box_column01.col2 .col {
		margin: 16px 2.2% 0 0;
		width: 48.9%;
	}
	.box_column01.col3 .col {
		margin: 16px 2.2% 0 0;
		width: 31.85%;
	}
	.box_column01.col4 .col {
		margin: 16px 2.2% 0 0;
		width: 23.35%;
	}
	.box_column01.col5 .col {
		margin: 24px 2.2% 0 0;
		width: 18.24%;
	}
	.box_column01.col6 .col {
		margin: 16px 2.2% 0 0;
		width: 14.83%;
		border: 1px solid #CCC;
		padding: 10px;
	}
	.box_column01.col2 .col:nth-child(2n),
	.box_column01.col3 .col:nth-child(3n),
	.box_column01.col4 .col:nth-child(4n),
	.box_column01.col5 .col:nth-child(5n),
	.box_column01.col6 .col:nth-child(6n) {
		margin-right: 0;
	}
	.box_column01.col2 .col:nth-child(2n+1),
	.box_column01.col3 .col:nth-child(3n+1),
	.box_column01.col4 .col:nth-child(4n+1),
	.box_column01.col5 .col:nth-child(5n+1),
	.box_column01.col6 .col:nth-child(6n+1) {
		clear: both;
	}
	.box_column01 a {
	}
	.box_column01 figure {
	}

@media screen and (max-width:500px){
.box_column01  {
	margin: 0;
}
	.box_column01 .col,
	.box_column01.col2 .col,
	.box_column01.col3 .col,
	.box_column01.col4 .col,
	.box_column01.col5 .col {
		float: none;
		width: auto;
		margin: 0;
		padding: 10px 0;
	}
	.box_column01.col6 .col {
		float: none;
		width: auto;
		margin: 0;
		padding: 10px;
	}
	.box_column01 figure {
		float: left;
		width: 100px;
		margin-right: 10px;
		margin-bottom: 10px;
		width: 100%;
	}
}

/*---テーブル（枠なし）---*/
.table_basic02 {
	width: 100%;
	border: none;
}
.table_basic02 th,
.table_basic02 td {
	vertical-align: top;
	border: none;
	padding: 10px;
}
@media screen and (max-width:500px){
.table_basic02 {
    width: 100%;
}

.table_basic02 th{
    background-color: #f0f0f0;
    width: 100%;
    display: block;
    border: none;
}
.table_basic02,
.table_basic02 thead,
.table_basic02 tbody,
.table_basic02 tr,
.table_basic02 td {
    width: 100%;
    display: block;
    border: none;
}
.table_basic02 th,
.table_basic02 td {
	border: none;
}
}


/*---ボタンmore---*/
.button {
	display: inline-block;
	position: relative;
	z-index: 2;
	width: 100%;
	padding: 4px;
	text-decoration: none;
	background: #697752;
	color: #FFF;
	overflow: hidden;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}

.button::before,
.button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button,
.button::before,
.button::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.button:hover {
	background: #b0b38a;
	color: #FFF;
}


/*---角丸---*/
.border_radius {
   border-radius: 5px;
   -webkit-border-radius: 5px;
   -moz-border-radius: 5px;
}

#Pd {
   width:100%;
   background: #C6C0B5;
   padding: 40px 0 40px;
}

/*---!Footer--- */
#Footer_Wrap {
   color: #fff;
   background: #646e59;
   padding-top: 1px;
   padding-bottom: 40px;
}

/*---見だし---*/
h2 {
    font-size: 28px;
    font-family: 'Montserrat Alternates', sans-serif;
    color: #666666;
}
h3 {
    font-size: 20px;
    font-family: 'Montserrat Alternates', sans-serif;
    color: #262626;
}
/* !Fonts -------------------------------------------------------------- */
.fwB {font-weight: bold;}
.fcWhite {color: #FFF;}
.fcGray {color: #CCCCCC;}
.fcRed {color: #FF0000;}
.fcGreen {color: #669933;}
.fz12 {font-size: 12px;}
.fz14 {font-size: 14px;}
.fz16 {font-size: 16px;}
.fz18 {font-size: 18px;}
.fz20 {font-size: 20px;}
.fz24 {font-size: 24px;}
.fz26 {font-size: 26px;}
.fz34 {font-size: 34px;}
.fz60 {font-size: 60px;}
.font_space {letter-spacing: 0.15em}


/* !Margin ------------------------------------------------------------------ */
.mt10 {margin-top: 10px !important;}
.mt20 {margin-top: 20px !important;}
.mt30 {margin-top: 30px !important;}
.mt40 {margin-top: 40px !important;}
.mt50 {margin-top: 50px !important;}
.mt60 {margin-top: 60px !important;}
.mt80 {margin-top: 80px !important;}
.mt120 {margin-top: 120px !important;}
.mb60 {margin-bottom: 60px !important;}
.mb120 {margin-bottom: 120px !important;}

/* !Padding ------------------------------------------------------------------ */
.pt60 {padding-top: 60px !important;}

/* !Width ------------------------------------------------------------------- */
.w7per {width: 7% !important;}
.w10per {width: 10% !important;}
.w20per {width: 20% !important;}
.w40per {width: 10% !important;}
.w60per {width: 60% !important;}
.w70per {width: 70% !important;}
.w80per {width: 80% !important;}
.w90per {width: 90% !important;}

@media screen and (max-width:500px){
.w40per {width: 20% !important;}
}

/* !img ------------------------------------------------------------------- */
p.line {border-bottom: 1px solid #000000;}

/* !Inline Align ------------------------------------------------------------ */
.taC {text-align: center !important;}
.taR {text-align: right !important;}
.taL {text-align: left !important;}
.ImgC {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.line_top {
   width:100%;
   border-top: 1px solid #ccc;
}

.line_bottom {
   width:100%;
   border-bottom: 1px solid #ccc;
}

/* !Floats ------------------------------------------------------------------ */
.flL {
    display: inline;
    float: left;
}
.flR {
    display: inline;
    float: right;
}

/* !line-height ------------------------------------------------------------------ */
.lh24 {line-height: 2.4em;}
.lh20 {line-height: 2em;}





