@charset "UTF-8";
/*  
Theme Name:Original Style - 1column
Version:1.2
*/


.home #contents > .inner {/* トップページ幅 100% */
	width:100%;
	max-width:100%;
}
.topinner {/* コンテンツは1000pxに */
	width:1000px;
	margin:0 auto;
	max-width:96%;
}

/* tinyMCE用に見出しをリセット */
.toppage h3,
.toppage h4,
.toppage h5 {
	background:none;
	border:none;
	color:inherit;
	font-size:inherit;
	line-height:inherit;
	margin:0;
	padding:0;
}
.toppage h3::before,
.toppage h3::after ,
.toppage h4::before,
.toppage h4::after,
.toppage h5::before,
.toppage h5::after {
	display:none;
}

/*==========================
	　mainimage
==========================*/

/*-- スライダーの時 ------------*/

.slider { }
.slick-slide img { margin:0 auto;}

button.slick-arrow {/* 矢印ボタン */
	background:none;
	border:none;
	position:absolute;
	top:50%;
	margin-top:-20px;
	height:40px;
	width:16px;
	text-indent:-9px;
	z-index:1;
}
button.slick-arrow:hover {
 	cursor:pointer;
	opacity:0.7;
}
button.slick-prev {/* 矢印（前へ）ボタン */
	background:url(./img/btn_prev.png) no-repeat;
	left:18%;
	margin-left:-16px;
}
button.slick-next {/* 矢印（次へ）ボタン */
	background:url(./img/btn_next.png) no-repeat;
	right:18%;
	margin-right:-16px;
}
@media screen and (max-width: 1650px) {
button.slick-prev {	left:13.7%;}
button.slick-next {	right:13.7%;}
}
@media screen and (max-width: 1400px) {
button.slick-prev {	left:8%;}
button.slick-next {	right:8%;}
}
@media screen and (min-width: 1200px) {
.slick-track {}
.slick-slide:not(.slick-center) {/* 前と次の画像を半透明に */
	opacity: 0.4;
	-moz-opacity: 0.4;
	filter: alpha(opacity=40);
}
}

/*==========================
	新着情報
==========================*/
.topnews .news {
	margin-bottom:0;
	position:relative;
}

/* 新着情報見出し */

.topnews h3 {
	font-size:28px;
	padding:0.4em 0 0.6em 2.6em;
	background:url(img/h3_icon.svg) no-repeat 0.6em top;
	position:relative;
	text-align:left;
	margin-bottom:1.2em;
}
.topnews h3::before ,
.topnews h3::after {
	position:absolute;
	content:"";
	display:block;
	bottom:0;
	left:0;
	height:2px;
}
.topnews h3::before {
	background:#ccc;
	width:100%;
}
.topnews h3::after {
	background:#1a1a1a;
	width:24%;
}

/* 一覧へボタン */

.topnews .btn {
	position:absolute;
	top:10px;
	right:20px;
}
.topnews .news .btn a {
	display:inline-block;
	line-height:1.2;
	padding:0.25em 0.5em 0.15em;
	text-decoration:none;
	color:#555;
	font-size:16px;
	letter-spacing:0.08em;
}
.topnews .news .btn a:hover {
	color:#8cbfdb;
}

/* 新着情報 */
.topnews .news dl {
	line-height:1.3;
	margin:1.2em 0;
}
.topnews .news dt {
	 font-weight:nomal;
	 color:#8cbfdb;
	padding:0 20px 7px;
}
.topnews .news dd {
	margin-bottom:18px;
	padding:0 20px 15px;
	border-bottom:1px dashed #e6e6e6;
}
.topnews .news dd a {
	 text-decoration:none;
	 color:#555;
}
.topnews .news dd a:hover {
	color:#8cbfdb;
}

/*==========================
	汎用に使えるボタン
==========================*/
.btn-style { text-align:center; }
.btn-style a {
	background: #8cbfdb;
	width:280px;
	max-width:100%;
	padding:0.8em 1em;
	text-align:center;
	color:#fff;
	display:inline-block;
	text-decoration:none;
	line-height:1.2;
	box-sizing:border-box;
	font-size:18px;
	border-radius:6px;
	position:relative;
}
.btn-style a::after {
	display: block;
	content: "";
	position: absolute;
	top:50%;
	right:10px;
	background:url(img/icon_arrow02.svg) no-repeat;
	width:16px;
	height:16px;
	margin-top:-8px;
}
.btn-style a:hover {
	opacity: 0.7;
	-moz-opacity: 0.7;
	filter: alpha(opacity=70);
 	cursor:pointer;
}
.under .btn-style a {
	width:auto;
	min-width:280px;
}

/*==========================
	loopSlider　無限ループスライダー
==========================*/
.loopSliderWrap {
    top: 0;
    left: 0;
    height: 200px;
    overflow: hidden;
    position: absolute;
}
 
.loopSlider {
    margin: 0 auto;
    width: 100%;
    height: 200px;
    text-align: left;
    position: relative;
    overflow: hidden;
}
 
.loopSlider ul {
    height: 200px;
    float: left;
    overflow: hidden;
}
 
.loopSlider ul li {
    width: 300px;
    height: 200px;
    float: left;
    display: inline;
    overflow: hidden;
}


/********************************
	Responsive
*********************************/


@media screen and (min-width: 768px) {
    .mainimage {
        background: url("./img/mainimage01.jpg") no-repeat center;
        height: 763px;
    }
    .pc_none{
    display: none;
}
}

@media screen and (min-width: 768px)  and (max-width: 1829px) {
.mainimage {
    height: 0;
    padding-bottom: 42%;
    background-size: cover;
    background-position: 75% center;
    }
}
@media screen and (min-width: 768px)  and (max-width: 1041px) {

}

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

}


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

.topinner {
	width:700px;
	margin:0 auto;
	box-sizing:border-box;
}


/*==========================
	新着情報
==========================*/
#main .news {
    margin-top: 1.5em;
    margin-bottom: 1.5em;
    position: relative;
}
#main .news h3 { font-size:20px;}
#main .news h3 .subtitle { font-size:12px; margin-left:0;}
#main .news dt,#main .news dd { padding-left:10px; padding-right:10px;}
#main .news .btn {
    right: 5px;
    top: 10px;
}
#main .news .btn a {
	font-size:12px;
}

/*==========================
	電話ボタン
==========================*/

#main > .telbtn {
	margin-bottom:1.2em;
}
.telbtn {
	text-align:center; 
	margin-bottom:1em;
}
.telbtn a {
	background:#8cbfdb;
	text-align:center;
	width:280px;
	max-width:100%;
	color:#fff;
	display:inline-block;
	padding:10px 5px 10px;
	text-decoration:none;
	font-size:24px;
	box-sizing:border-box;
	letter-spacing:0.08em;
	border-radius:4px;
	line-height:1.2em;
}
.telbtn a .subtxt {
	font-size:14px;
	display:block;
	margin-bottom:1px;
}
.telbtn a:hover {
	opacity: 0.7;
	-moz-opacity: 0.7;
	filter: alpha(opacity=70);
}

/*==========================
	loop
==========================*/

.loopSlider {    height: 100px;}
.loopSlider ul {    height: 100px;}
.loopSlider ul li {
    width: 150px;
    height: 100px;
}

#youtube01 {
    width: 98%;
    margin: 0 auto;
}

}

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

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

/*==========================
	　TOP コンテンツ
==========================*/

body {
    font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
    letter-spacing: 0.05em;
}

.top .mainblock a {
	text-decoration:none;
}
.top .mainblock a:hover {
}
.topinner p:last-child {
    margin-bottom: 0;
}

@media screen and (min-width: 768px) {
.columns {
    display: flex;
}
.columns.reverse {
    flex-direction: row-reverse;
}
}

/*-- 余白・背景 --------------*/


@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
}

/*-- 見出し --------------*/

h2.h2 {
    background: url("./img/h2_bg.png") no-repeat center top;
    font-size: 30px;
    font-weight: bold;
    line-height: 1.6em;
    margin-bottom: 1em;
    padding-top: 78px;
    text-align: center;
}

.big_title {
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 2em;
    letter-spacing: 0.1em;
}

.border_text {
    display: inline-block;
    position: relative;
    z-index: 2;
}
.border_text::before {
    background: #fff2e2;
    bottom: 0;
    content: "";
    height: 13px;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: -1;
}
.big_text {
    font-size: 30px;
    line-height: 1.6;
    letter-spacing: 0.08em;
}
.big_letter {
    font-size: 1.3em;
    display: inline-block;
}

@media screen and (min-width: 768px) {
}
@media screen and (min-width: 768px) and (max-width: 1000px){
.big_text {
    font-size: 3vw;
}
}
@media screen and (max-width: 767px) {
h2.h2 {
    font-size: 26px;
    }
.big_title {
    font-size: 22px;
    line-height: 1.6;
}
    .big_text {
    font-size: 26px;
}
}
@media screen and (max-width: 460px) {
h2.h2 {
    font-size: 5.6vw;
    }
    .big_text {
    font-size: 4.6vw;
}
}


/* contact_bnr */
.section_contact {
    padding: 100px 0;
}
.footer_contact {
}
.contact_bnr{
    background: url("./img/contact_bg.png");
    border-radius: 10px;
    display: block;
    padding: 5.5% 5.5% 4%;
    text-align: center;
}
.contact_bnr h2 {
    margin-bottom: 30px;
}
.contact_bnr .official_btn {
    margin-top: 30px;
}
@media screen and (min-width: 768px) {
    .contact_bnr .columns .column:first-child {
        margin-right: 6.7%;
    }
}
@media screen and (max-width: 767px) {
.section_contact {
    padding: 13% 0;
}
.contact_bnr h2 {
    margin-bottom: 4.4%;
}
    .contact_bnr .columns .column:first-child {
        margin-bottom: 4%;
    }
}

/* section01 */
.section01 h2 {
    text-align: center;
    margin-bottom: 50px;
}
.section01 h2 img {
    max-width: 75%;
}
.section01 .block01 {
    background: url("./img/bg_img002.jpg") no-repeat top center;
    background-size: auto 100%;
    padding: 100px 0 200px;
}
.section01 .block02 {
    text-align: center;
    padding: 40px 0 100px;
}
@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
.section01 .block01 {
    background: url("./img/sp_bg_img001.jpg") no-repeat top center;
    background-size: auto 100%;
    padding: 13% 0 26%;
}
.section01 .block02 {
    padding: 5.2% 0 13%;
}
}

/* section02 */

.section02 {
    background: url("./img/bg_img001.jpg") no-repeat top center;
    background-size:cover;
    padding: 100px 0 100px;
}
@media screen and (min-width: 768px) {
    .section02 p {
        margin-left: -1.7%;
        margin-right: -1.7%;
    }
}
@media screen and (max-width: 767px) {
.section02 {
    background-image: url("./img/sp_bg_img002.jpg");
    padding: 13% 0 13%;
}
}

/* section03 */
.section03 {
    background: url("./img/bg_img003.png") center;
    padding: 100px 0 50px;
}
.section03 h3 {
    text-align: center;
    margin-bottom: 25px;
}
.section03 .block01,
.section03 .block02 {
    margin-bottom: 50px;
}
.section03 .block02 .column {
    background: #fff;
    border: 2px dashed #f9e2ba;
    border-radius: 10px;
    box-sizing: border-box;
    font-size: 20px;
    font-weight: bold;
    padding-top: 48px;
    padding-bottom: 30px;
    text-align: center;
}
.section03 .block02 .column:first-child {
    padding-top: 60px;
}
.section03 .block02 .column:nth-child(2) {
    padding-top: 30px;
}
.border_img {
    border: 2px dashed #f9e2ba;
    border-radius: 10px;
}
@media screen and (min-width: 768px) {
    .section03 .block01 {
        padding-top: 20px;
    }
.section03 .columns {
    justify-content: space-between;
}
.section03 .block01 .column {
    flex: 0 0 50%;
}
    .section03 .block01 .column .inner {
        padding: 0 10%;
    }
.section03 .block02 .column {
    flex: 0 0 23.1%;
    width: 23.1%;
}
}
@media screen and (min-width: 768px) and (max-width: 1000px){
.section03 .block02 .column {
    font-size: 2vw;
}
}
@media screen and (max-width: 767px) {
.section03 {
    padding: 13% 0 6.5%;
}
    .section03 .block01, .section03 .block02 {
    margin-bottom: 6.5%;
}
    .section03 .block01 .columns .column:first-child {
        margin-bottom: 30px;
        text-align: center;
    }
    .section03 .block02 .columns {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .section03 .block02 .columns .column {
        flex: 0 0 49%;
        margin-bottom: 2%;
        
    }
    .section03 .block02 .columns .column {
    }
}
@media screen and (max-width: 480px) {
.section03 h3 img {
    height: 164px;
}
.section03 .block02 .column {
    font-size: 4.3vw;
    line-height: 1.6;
    padding-bottom: 8%;
    padding-top: 10%;
}
.section03 .block02 .column:first-child {
    padding-top: 60px;
}
.section03 .block02 .column:nth-child(2) {
    padding-top: 9%;
}
}

/* section04 */
.section04 {
    background: url("./img/bg_img005.jpg") no-repeat top center;
    background-size:cover;
    padding: 100px 0 100px;
    text-align: center;
}
@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
.section04 {
    padding: 13% 0 ;
    }
}

/* section05 */
.section05 {
    background: url("./img/bg_img006.jpg") no-repeat top center;
    background-size:cover;
    padding: 100px 0 100px;
    text-align: center;
}
.section05 .column {
    background: #fff url("./img/sec05_figure01.png") no-repeat 15px 15px / auto 61px ;
    border: 2px dashed #8cbfdb;
    border-radius: 10px;
    box-sizing: border-box;
    padding-top: 5%;
    padding-bottom: 3%;
    text-align: center;
    margin-bottom: 20px;
}
.section05 .column h3 {
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-bottom: 1.2em;
}
.section05 .column h3,
.section05 .column p {
    padding-left: 10%;
    padding-right: 10%;
}
.section05 .column p {
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.15em;
}
.section05 .column:nth-child(2) {
    background-image: url("img/sec05_figure02.png");
}
.section05 .column:nth-child(3) {
    background-image: url("img/sec05_figure03.png");
}
.section05 .column:nth-child(4) {
    background-image: url("img/sec05_figure04.png");
}
.section05 .column:nth-child(5) {
    background-image: url("img/sec05_figure05.png");
}
.section05 .column:nth-child(6) {
    background-image: url("img/sec05_figure06.png");
}
.section05 .column:nth-child(3) ,
.section05 .column:nth-child(4),
.section05 .column:last-child {
    padding-top: 3.3%;
}
.section05 .column:nth-child(3) h3,
.section05 .column:nth-child(4) h3,
.section05 .column:last-child h3 {
    margin-bottom: 0.7em;
}
@media screen and (min-width: 768px) {
    .section05 .columns {
    justify-content: space-between;
        flex-wrap: wrap;
}
.section05 .column {
    flex: 0 0 32%;
    margin-bottom: 2%;
    
}
}
@media screen and (min-width: 768px)  and (max-width: 1000px) {
.section05 .column h3 {
    font-size: 2.1vw;
}
}
@media screen and (max-width: 767px) {
.section05 {
    padding: 13% 0 ;
    }
.section05 .column,
.section05 .column:nth-child(3) ,
.section05 .column:nth-child(4),
.section05 .column:last-child {
    padding-top: 5.5%;
}
.section05 .column h3,
    .section05 .column:nth-child(3) h3, .section05 .column:nth-child(4) h3, .section05 .column:last-child h3{
    margin-bottom: 4%;
}
}

/* section06 */
.section06 {
    background: url("./img/bg_img007.jpg") no-repeat center;
    background-size:cover;
    padding: 100px 0 100px;
    line-height: 1.9;
}
.section06 h2 {
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 15px;
    text-align: center;
}
.section06 h2 .sub_ttl {
    font-size: 20px;
    font-weight: normal;
    display: block;
    margin-bottom:0.4em;
    line-height: 1.6;
}
.section06 table {
    margin-bottom: 2em;
}
.section06 table th {
    padding-right:1em; 
    text-align: left;
}
.section06 li {
    position: relative;
    padding-left: 1em;
}
.section06 li::before {
    position: absolute;
    content: '・';
    left: 0;
    top: 0;
}
@media screen and (min-width: 768px) {
    .section06 .column { flex: 0 0 50%}
}
@media screen and (max-width: 767px) {
.section06 {
    padding: 13% 0 ;
    background: url("./img/sp_bg_img005.jpg") no-repeat center;
    background-size: cover;
    }
    .section06 table th,
    .section06 table td,
    .section06 table tr {
        display: block;
    }
}

/* section07 */
.section07 {
    background: url("img/bg_img008.png") center;
    padding: 200px 0 70px;
    text-align: center;
}
.section07 h2 {
    background: #8cbfdb url("img/h2_bg02.png") no-repeat center 34px;
    box-sizing: border-box;
    color: #fff;
    font-size: 30px;
    font-weight: bold;
    height: 215px;
    margin: -180px auto 40px;
    padding-top: 130px;
    width: 215px;
}
.section07 .dash_box { 
    background: #fff;
    border: 2px dashed #8cbfdb;
    padding: 8px;
}
.section07 .dash_box .inner {
    border: 1px solid #8cbfdb;
    padding: 6%;
}
.section07 table {
    width: 100%;
    font-size: 20px;
    font-weight: bold;
    table-layout: fixed;
}
.section07 table th,
.section07 table td {
    border-bottom: 1px solid #dbdbdb;
    padding: 3%;
}
.section07 table th {
    background: #8cbfdb;
    color: #fff;
    text-align: left;
}
.section07 table td {
    color: #8cbfdb;
    text-align: right;
    border-right:1px solid #bfbfbf;
}
.section07 table tr:first-child th{
    border-top:1px solid #8cbfdb;
}
.section07 table tr:first-child td{
    border-top:1px solid #bfbfbf;
}
.section07 table tr:last-child td{
    border-bottom:1px solid #bfbfbf;
}
 
@media screen and (min-width: 768px) {
}
@media screen and (min-width: 768px)  and (max-width: 1000px) {
.section07 table  {
    font-size:2vw;
    table-layout: auto;
}
}
@media screen and (max-width: 767px) {
.section07 {
    padding: 26% 0 9.12%;
    }
.section07 table tr,
.section07 table th,
.section07 table td {
    display: block;
    }
.section07 table td {
    border-left:1px solid #bfbfbf;
}
}
@media screen and (max-width: 660px) {
.section07 h2 {
    background-position:center 20px;
    background-size: 44px;
    font-size: 22px;
    height: 130px;
    margin: -29% auto 25px;
    padding-top: 75px;
    width: 130px;
}
}

/* section08 */
.section08 {
    background: url("img/bg_img009.png") center;
    padding: 100px 0 100px;
    text-align: center;
}
.section08 .column img {
    border: 2px dashed #8cbfdb;
    border-radius: 10px;
}

@media screen and (min-width: 768px) {
    .section08 .columns {
        justify-content: space-between;
    }
    .section08 .column {
        flex: 0 0 28.4%;
    }
}
@media screen and (max-width: 767px) {
.section08 {
    padding: 13% 0 ;
    }
    .section08 .column {
        margin-bottom: 2%;
    }
    .section08 .column:last-child {
        margin-bottom: 0;
    }
}

/* section09 */
.section09 {
    background: url("img/bg_img010.png") center;
    padding: 100px 0 100px;
}
.td_color {
    color: #8cbfdb;
}
@media screen and (min-width: 768px) {
    .section09 .columns {
        justify-content: space-between;
    }
    .section09 .column {
        flex: 0 0 50%;
    }
    .section09 .column:first-child {
        flex-basis: 49%;
    }
    .section09 .googlemap {
        padding-bottom: 100%;
    }
}
@media screen and (max-width: 767px) {
.section09 {
    padding: 13% 0 ;
    }
}
.table01 th {
  width: 5em;
}

/* section10 */
.section10 {
    padding: 30px 0;
}

