@charset "utf-8";
/*
Theme Name: theme636_rwd
Theme URI: http://theme.o2gp.com/
Description: theme636_rwd
Version: 1.0
Author: o2 Group
Author URI: http://theme.o2gp.com/
Tags: simple

	o2 Group v1.0
	 http://theme.o2gp.com/

	This theme was designed and built by o2 Group,
	whose blog you will find at http://theme.o2gp.com/

	The CSS, XHTML and design is released under GPL:
	http://www.opensource.org/licenses/gpl-license.php

*/


/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
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, font, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border:0;font-family:inherit;font-size:100%;font-style:inherit;font-weight:inherit;margin:0;outline:0;padding:0;vertical-align:baseline;}
:focus {outline:0;}

ol, ul {list-style:none;}
table {border-collapse:separate;border-spacing:0;}
caption, th, td {font-weight:normal;text-align:left;}
blockquote:before, blockquote:after,q:before, q:after {content:"";}
blockquote, q {quotes:"" "";}
a img {border:0;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block;}

body{
font:80%/1.5 "Lucida Sans Unicode", "Lucida Grande", Arial, "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
color:#252525;
-webkit-text-size-adjust:none;
background:#f2f2f2 url(images/bg.png);
}
html{background:#16BDCF;}


/* リンク設定
------------------------------------------------------------*/
a{
	margin: 0;
	padding: 0;
	text-decoration: none;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
	font-size: 100%;
	color: #16BDCF;
}

a:hover, a:active{
	-webkit-transition: opacity 1s;
	-moz-transition: opacity 1s;
	-o-transition: opacity 1s;
	outline: none;
	color: #FF9900;
}


/**** Clearfix ****/
nav .panel:after, #mainNav:after, .newsTitle:after, .bg:after,.post:after{content:""; display:table;clear:both;}
nav .panel,#mainNav,.newsTitle,.bg, .post{zoom:1;}

/* フォント
------------------------------------------------------------*/
.greenbold12{
	font-size: 1.2em;
	color: #16BDCF;
	font-weight:bold;
}
.redbold10{
	font-size: 1em;
	color: #FF0000;
	font-weight: bold;
}
.orangebold10{
	font-size: 1em;
	color: #FF9900;
	font-weight: bold;
}
.blaklarge22{
	font-size: 2.52rem;
	color: #333;
	font-weight: bold;
}

/* 価格部分
------------------------------------------------------------*/
/* イメージ制御*/
.img-responsive {
  display: block;
  height: auto;
  max-width: 100%;
}


/* レイアウト
------------------------------------------------------------*/
#wrapper, .inner{
margin:0 auto;
width:960px;
}

#header{
overflow:hidden;
background:#fff;
}

#content{
width:100%;
padding:30px 0;
}

#sidebar{
float:right;
width:225px;
padding:30px 0;
}

#footer{
	clear: both;
	overflow: hidden;
	padding-top: 20px;
	border-top: 1px solid #e2e2e2;
	background-color: #E9E9E9;
	text-align:center;
} 


/* ヘッダー
*****************************************************/
#header .bg{background:#16BDCF;}


.h_box{
	background-color:#FFF;
}
.h_box_in1{
	width:100%;
	text-align:center;
}
.h_box_in2{
	width:100%;
	text-align:center;
}
.h_box_in3{
	width:100%;
	text-align:center;
}
@media only screen and (min-width:768px){
.h_box{
	display:flex;
	margin:10px auto 5px auto;
	max-width:960px;
}
.h_box img{
  display: block;
  height: auto;
  max-width: 100%;
}
}


@media only screen and (min-width:960px){
.h_box{
}
.h_box_in1{
	width:33%;
	text-align:left;
}
.h_box_in2{
	width:225px;
	text-align:right;
	margin:auto;
}
.h_box_in3{
	width:300px;
	margin-left:auto;
	margin-right:0;
	text-align:right;
}
}


/* サイト説明文 + 住所
----------------------------------*/
#header .h_title,#header p{
float:left;
padding:3px 0;
color: #fff;
font-size:90%;
font-weight:normal;
}

#header p{
float:right;
}


/* ロゴ (サイトタイトル)
----------------------------------*/
#header h2{
clear:both;
float:left;
padding:30px 0;
color:#515151;
font-size:160%;
font-weight:bold;
}

/* サブナビゲーション
----------------------------------*/
#header ul{
padding-top:40px;
float:right;
}

#header ul li{
display:inline;
margin-left:10px;
}

#header ul li a{
padding-left:15px;
background:url(images/arrowSub.png) no-repeat 0 50%;
}

#header ul li a:hover{background-position:3px 50%;}


/* コンテンツ
----------------------------------*/

.postWrap{
margin:0 0 20px 0;
padding:3px;
border:1px solid #e2e2e2;
background:url(images/tp.png);
}

.post{
padding:10px;
border:1px solid #f1f1f1;
background: #fff;
}

article.archive span{padding-left:10px;}


/* タイポグラフィ
*****************************************************/
h2.title{
	font-size: 150%;
	color: #fff;
	border-radius: 4px;
	background: #16BDCF;
	box-shadow: 0 0 3px rgba(0,0,0,0.2);
	font-weight: bold;
	border-left-width: 5px;
	border-left-style: solid;
	border-left-color: #FFFF00;
	margin-top: 20px;
	margin-right: 0;
	margin-bottom: 5px;
	margin-left: 0;
	padding-top: 5px;
	padding-right: 10px;
	padding-bottom: 5px;
	padding-left: 10px;
}

h2.first{margin-top:0;}

.dateLabel{
margin:0 0 10px;
text-align:right;
font:italic 1em "Palatino Linotype", "Book Antiqua", Palatino, serif;
}

.post p{padding-bottom:15px;}

.post ul{margin:0 0 10px 10px;}

.post ul li{
margin:5px 0 0 15px;
list-style:disc;
}

.post ol{margin:0 0 10px 30px;}

.post ol li{list-style:decimal;}

.post h1{
margin:20px 0;
padding:5px 0;
font-size:150%;
color:#000;
border-bottom:3px solid #000;
}

.post h2{
margin:20px 0;
padding:5px 10px;
font-size:150%;
color: #fff;
border-radius:4px;
background:#16BDCF;
box-shadow:0 0 3px rgba(0,0,0,0.2); 
}

.post h2{
	margin: 10px 0;
	padding: 3px 5px;
	font-size: 130%;
	font-weight: bold;
	color: #FFFFFF;
	border-left-width: 5px;
	border-left-style: solid;
	border-left-color: #FFFF00;
}

.post h3{
	width:300px;
	font-size: 130%;
	font-weight: bold;
	color: #16BDCF;
	background-color: #F5F4E0;
	margin-top: 10px;
	margin-right: 0;
	margin-bottom: 10px;
	margin-left: 0;
	padding-top: 5px;
	padding-right: 5px;
	padding-bottom: 2px;
	padding-left: 20px;
	border-bottom-width: 2px;
	border-left-width: 5px;
	border-bottom-style: solid;
	border-left-style: solid;
	border-bottom-color: #CCCCCC;
	border-left-color: #16BDCF;
}

.post blockquote {
clear:both;
padding:10px 0 10px 15px;
margin:10px 0 25px 30px;
border-left:5px solid #ccc;
}
 
.post blockquote p{padding:5px 0;}

.post table{
border: 1px #16BDCF solid;
border-collapse: collapse;
border-spacing: 0;
margin:10px 0 20px;
}

.post table th{
	padding: 7px 10px 7px 5px;
	border: #16BDCF solid;
	border-width: 0 0 1px 1px;
	font-weight: bold;
	color: #16BDCF;
	background-color: #E2F9FC;
}

.post table td{
padding:7px 5px;
border: 1px #16BDCF solid;
border-width: 0 0 1px 1px;
background:#fff;
}

.post table .price{
	text-align:right;
	color:#F00;
padding:7px 5px;
border: 1px #16BDCF solid;
border-width: 0 0 1px 1px;
background:#fff;
}



.post dt{font-weight:bold;}

.post dd{padding-bottom:10px;}

.post img{max-width:100%;height:auto;}

img.aligncenter {
display:block;
margin:5px auto;
}

img.alignright, img.alignleft{
padding:4px;
margin:0 0 2px 7px;
display:inline;
}

img.alignleft{margin:0 7px 2px 0;}

.alignright{float:right;}
.alignleft{float:left;}


/* フッター
*****************************************************/
#footerWrapper{
width:990px;
margin-right:-30px;
	text-align:center;
}



.footnavi {
    text-align:center;
	margin: 0 auto;
	padding: 0;
}
.footnavi ul {
    display:inline-block;
	margin: 0px;
	list-style-type:none;
	padding: 0;
}
.footnavi li {
	float: left;
	width: auto;
	margin: 0px;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #666666;
	padding-top: 0px;
	padding-right: 10px;
	padding-bottom: 0px;
	padding-left: 10px;
	background: none;
	border-left: none;
	border-top: none;
	border-bottom: none;
}
.footnavi li.end  {
float:left;
width:auto;
	margin: 0px;
	border-right: none;
	padding-top: 0px;
	padding-right: 15px;
	padding-bottom: 0px;
	padding-left: 15px;
	background: none;
	border: none;
}



#copyright{
clear:both;
padding:5px;
text-align:center;
font-size:90%;
zoom:1;
color:#fff;
background:#16BDCF;
}



/* 個別追加
------------------------------------------------------------*/













/* メインメニュー　PC用
------------------------------------------------------------*/
@media only screen and (min-width:1025px){
nav div.panel{
display:block !important;
float:left;
}

a#menu{display:none;}

#mainNav{
clear:both;
position:relative;
z-index:200;
background:#16BDCF url(images/mainnavBg.png) repeat-x;
}

#mainNav li{
float: left;
position: relative;
border-right:1px solid #000;
}

#mainNav li:first-child{border-left:1px solid #000;}

#mainNav li a{
	display: block;
	text-align: center;
	_float: left;
	color: #fff;
	height: 30px;
	line-height: 40px;
	padding: 20px 19px 5px 18px;
}

#mainNav li a span,#mainNav li a strong{
display:block;
font-size:90%;
line-height:1.4;
}

#mainNav li a span{
font-size:70%;
}

#mainNav li.current-menu-item, #mainNav li:hover, #mainNav li.current-menu-parent{
background:#16BDCF url(images/mainnavBg.png) repeat-x 0 100%;
}

#mainNav ul ul{width:160px;}

#mainNav li ul{display: none;}

#mainNav li:hover ul{
display: block;
position: absolute;
top:60px;
left:0;
z-index:500;
}

#mainNav li li{
padding:0 0 0 10px;
margin:0;
float: none;
height:40px;
line-height:40px;
width:160px;
border:0;
background:#16BDCF url(images/mainnavBg.png) repeat-x;
border-bottom:1px solid #000;
}

#mainNav li li:first-child{border-left:0;}

#mainNav li li a{
width:100%;
height:40px;
padding:0 0 0 ;
line-height:40px;
font-size:95%;
text-align:left;
}

#mainNav li li.current-menu-item a{font-weight:bold;}

#mainNav li li:hover{background:#16BDCF url(images/mainnavBg.png) repeat-x 0 100%;}

#mainNav li:hover ul li:last-child{
border:0;
}
}


/* メインメニュー iPadサイズ以下から
------------------------------------------------------------*/
@media only screen and (max-width:1024px){
#mainNav{
clear:both;
width:100%;
margin:10px auto;
background:#16BDCF;
}

#mainNav a.menu{
width:100%;
display:block;
height:37px;
line-height:37px;
font-weight:bold;
text-align:left;
color:#fff;
background:url(images/menuOpen.png) no-repeat 5px 8px;
}

#mainNav a#menu span{padding-left:35px;}

#mainNav a.menuOpen{
background:url(images/menuOpen.png) no-repeat 5px -34px;
}

#mainNav a#menu:hover{cursor:pointer;}

nav .panel{
display:none;
width:100%;
position:relative;
right:0;
top:0;
z-index:1;
}

#mainNav ul{margin:0;padding:0;}

#mainNav li{
float:none;
clear:both;
width:100%;
height:auto;
line-height:1.2;
}

#mainNav li:first-child{border-top:1px solid #d5d5d5;}
#mainNav li li:first-child{border-top:0;}

#mainNav li a,#mainNav li.current-menu-item li a{
display:block;
padding:15px 10px;
text-align:left;
border-bottom:1px dashed #ccc;
background:#fff;
}

#mainNav li:last-child a{border:0;}
#mainNav li li:last-child a{border:0;}
#mainNav li li:last-child a{border-bottom:1px dashed #ccc;}

 #mainNav li a span{display:none;}
 
#mainNav li.current-menu-item a,#mainNav li a:hover,#mainNav li.current-menu-item a,#mainNav li a:active, #mainNav li li.current-menu-item a, #mainNav li.current-menu-item li a:hover, #mainNav li.current-menu-item li a:active{
color:#fff;
background:#16BDCF;
}

#mainNav li li{
float:left;
border:0;
}

#mainNav li li a, #mainNav li.current-menu-item li a, #mainNav li li.current-menu-item a{
padding-left:40px;
color:#16BDCF;
background:#fff url(images/sub1.png) no-repeat 20px 18px;}

#mainNav li li.current-menu-item a,#mainNav li li a:hover, #mainNav li.current-menu-item li a:hover{
color:#fff;background:#000 url(images/sub1.png) no-repeat 20px -62px;}

#mainNav li li:last-child a{background:#fff url(images/subLast.png) no-repeat 20px 20px;}
#mainNav li li:last-child.current-menu-item a,#mainNav li li:last-child a:hover,#mainNav li.current-menu-item li:last-child a:hover{
background:#16BDCF url(images/subLast.png) no-repeat 20px -65px;}

nav div.panel{float:none;}

#mainImg{margin-bottom:20px;}
}


/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width:959px){
#wrapper, #header, .inner,#footerWrapper{width:100%;}

#header .h_title, #header p{padding:5px 10px;}
#header h2{padding:20px 10px 0;}
#header ul{padding:20px 10px 10px;}


#mainNav ul, .thumbWrap{margin:0 auto;}
#mainNav ul ul{padding:0;}

nav div.panel{float:none;}

#content{
clear:both;
width:95%;
float:none;
margin:0 auto;
padding:10px 0;
}
#footer{margin:0;border:0;text-align:center;}
#footer aside{width:95%;margin:0 auto;float:none;text-align:left;}

}


/* 幅644px以下から ヘッダー等微調節
------------------------------------------------------------*/
@media only screen and (max-width:644px){
#header{text-align:center;}
#header .h_title,#header h2,#header p,#header ul{float:none;padding:5px;}
#header p{padding:0 5px;}
#headerInfo{width:250px;margin:0 auto;}
img.alignright, img.alignleft{display:block;margin:5px auto;}
.alignright,.alignleft{float:none;}
#footer ul{text-align:left;padding:15px;}
#footer ul ul{padding:0;}
}


/* SNS
------------------------------------------------------------*/
.sns_box{
	margin:40px 0px 50px 0;
	overflow:hidden;
}
.twitter_box{
	text-align:center;
	width:30%;
	float:left;
}
.youtube_box{
	text-align:center;
	width:30%;
	float:left;
}
.insta_box{
	text-align:center;
	width:30%;
	float:left;
}
@media only screen and (max-width:644px){


.twitter_box{
	text-align:center;
	width:90%;
	float:none;
	margin:0 0 20px 0;
}
.youtube_box{
	text-align:center;
	width:90%;
	float:none;
	margin:0 0 20px 0;
}
.insta_box{
	text-align:center;
	width:90%;
	float:none;
}
}


.gototwitter{
	margin:20px 20px 20px 0;
	text-align:right;
}

/* youtube横並び
------------------------------------------------------------*/
.yb_box{
	width:48%;
	float:left;
	margin:0 1%;
}
@media only screen and (max-width:768px){
.yb_box{
	width:96%;
	float:none;
	margin:0 1%;
}
}

.yb_boxmargin{
	margin:10px;
	overflow:hidden;
	clear:both;
}
@media only screen and (max-width:768px){
.yb_boxmargin{
	margin:0px;
	overflow:hidden;
	clear:both;
}
}


.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}










































/* 共通見出し上書き設定
----------------------------------*/
.post h1.custom-h1 {
    color: #063F45 !important;
    border: none !important;
    font-size: 160%;
    margin-bottom: 15px;
    padding: 0;
    font-weight:bold;
}
.post h2.custom-h2 {
    color: #19BDE1 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    text-align: center;
    font-size: 140%;
    margin: 30px 0 20px;
    padding: 0;
}
@media screen and (min-width: 768px) {
    .post h2.custom-h2 {
        margin-top: 60px !important;
    }
}
.post h3.custom-h3 {
    color: #117E88 !important;
    background: transparent !important;
    border: none !important;
    width: auto !important;
    padding: 0 !important;
    margin: 10px 0;
    font-size: 110%;
    text-align: center;
}
.page_index_link{
    color:#06C !important;
    font-weight:bold;
    font-size:1.1rem;
}


/* セクション1
----------------------------------*/
.section1 {
    display: flex;
    flex-direction: column;
    margin-bottom: 40px;
}
.section1 .sec-text {
    order: 1;
}
.section1 .sec-img {
    order: 2; 
    margin: 0 auto 15px;
    text-align: center;
}
@media screen and (min-width: 961px) {
    .section1 {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
    }
    .section1 .sec-text {
        order: 1;
        width: 55%;
    }
    .section1 .sec-img {
        order: 2;
        width: 40%;
        margin: 0 0 0 auto;
    }
}

/* セクション2
----------------------------------*/
.section2 {
    margin-bottom: 40px;
}
.section2 .custom-h2 {
    text-align: left;
}
.section2 .sec2-bg {
    background: url(images/banners/2_photo.jpg) center/cover no-repeat;
    padding: 20px;
}
@media screen and (min-width: 961px) {
    .section2 .sec2-bg {
        padding: 40px;
    }
}

/* セクション3
----------------------------------*/
.section3 {
    margin-bottom: 40px;
}
.section3 .check-list {
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}
.section3 .check-list li {
    list-style: none !important;
    margin: 0 !important;
    padding: 10px;
    border: 1px solid #e2e2e2;
    border-radius: 5px;
    display: flex;
    align-items: center;
}
.section3 .check-icon {
    color: #30a64a;
    font-weight: bold;
    margin-right: 10px;
    font-size: 120%;
}
@media screen and (min-width: 961px) {
    .section3 .check-list {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* セクション4
----------------------------------*/
.section4 {
    margin-bottom: 40px;
}
.section4 .sec-inner {
    display: flex;
    flex-direction: column;
}
.section4 .sec-img {
    margin-bottom: 15px;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .section4 .sec-inner {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
    }
    .section4 .sec-img {
        width: 40%;
        margin-bottom: 0;
        text-align: left;
    }
    .section4 .sec-text {
        width: 55%;
    }
}

/* セクション5
----------------------------------*/
.section5 {
    margin-bottom: 40px;
}
.section5 .card-wrap {
    display: flex;
    flex-direction: column;
    gap: 15px;
}
.section5 .card {
    border: 1px solid #e2e2e2;
    padding: 15px;
    border-radius: 5px;
    text-align: center;
}
.section5 .card p {
    text-align: left;
}
.section5 .card-icon img {
    width: 50px;
    height: 40px;
    object-fit: contain;
    margin: 0 auto;
}
@media screen and (min-width: 961px) {
    .section5 .card-wrap {
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
    }
    .section5 .card {
        width: 19%;
        padding: 10px;
    }
}

/* セクション6
----------------------------------*/
.section6 {
    margin-bottom: 40px;
}
.section6 .sec-inner {
    display: flex;
    flex-direction: column;
}
.section6 .sec-img {
    order: 1;
    margin-bottom: 15px;
    text-align: center;
}
.section6 .sec-text {
    order: 2;
}
@media screen and (min-width: 768px) {
    .section6 .sec-inner {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
    }
    .section6 .sec-text {
        order: 1;
        width: 55%;
    }
    .section6 .sec-img {
        order: 2;
        width: 40%;
        margin-bottom: 0;
        text-align: left;
    }
}

/* セクション7
----------------------------------*/
.section7 {
    margin-bottom: 40px;
}
.section7 .sec-inner {
    display: flex;
    flex-direction: column;
}
.section7 .sec-img {
    margin-bottom: 15px;
    text-align: center;
}
@media screen and (min-width: 768px) {
    .section7 .sec-inner {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
    }
    .section7 .sec-img {
        width: 40%;
        margin-bottom: 0;
        text-align: left;
    }
    .section7 .sec-text {
        width: 55%;
    }
}

/* セクション8
----------------------------------*/
.section8 {
    margin-bottom: 40px;
}
.section8 .sec-desc {
    margin-bottom: 20px;
}
.section8 .card-wrap {
    display: flex;
    flex-direction: column;
    gap: 40px;
    margin-bottom: 20px;
}
.section8 .card {
    border: 1px solid #117E88;
}
.section8 .card-head {
    background-color: #117E88;
    color: #fff;
    text-align: center;
    padding: 10px;
    font-weight: bold;
}
.section8 .card-img img {
    width: 100%;
    height: auto;
    display: block;
}
.section8 .card-body {
    padding: 15px;
}
.post .section8 h3.card-h3 {
    color: #117E88 !important;
    background: transparent !important;
    border: none !important;
    width: auto !important;
    padding: 0 !important;
    margin: 0 0 10px 0 !important;
    font-size: 110%;
    font-weight: bold;
    text-align: left;
}
.section8 .link-wrap {
    text-align: center;
    margin-top: 20px;
}
.section8 .link-wrap a {
    color: #19BDE1;
    text-decoration: underline;
}
@media screen and (min-width: 961px) {
    .section8 .card-wrap {
        flex-direction: row;
        justify-content: space-between;
        gap: 20px;
    }
    .section8 .card {
        width: 32%;
    }
}

/* セクション9
----------------------------------*/
.section9 {
    margin-bottom: 40px;
}
.section9 .card-wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.section9 .card {
    border: 1px solid #e2e2e2;
    border-radius: 8px;
    padding: 20px;
}
.section9 .card p {
    margin-bottom: 10px;
}
.section9 .card p:last-child {
    margin-bottom: 0;
}
@media screen and (min-width: 768px) {
    .section9 .card-wrap {
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
    }
    .section9 .card {
        width: 48%;
    }
}

/* セクション10
----------------------------------*/
.section10 {
    margin-bottom: 40px;
}
.section10 .card-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    margin-bottom: 20px;
}
.section10 .card .custom-h3 {
    text-align: left;
    font-size: 100%;
    margin-top: 0;
}
.section10 .card-img {
    margin-bottom: 10px;
}
.section10 .card p {
    font-size: 90%;
}
.section10 .sec-bottom-text {
    margin-top: 20px;
}
@media screen and (min-width: 961px) {
    .section10 .card-wrap {
        grid-template-columns: repeat(4, 1fr);
        gap: 20px;
    }
}

/* セクション11
----------------------------------*/
.section11 {
    margin-bottom: 40px;
}
.section11 .card-wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}
.section11 .card {
    background-color: #F8FDF5;
    border: 1px solid #e2e2e2;
    border-radius: 5px;
    padding: 15px;
}
.section11 .card-icon img {
    width: 50px;
    height: 40px;
    object-fit: contain;
    margin: 0 auto 10px;
    display: block;
}
.section11 .card p {
    font-size: 90%;
}
@media screen and (min-width: 768px) {
    .section11 .card-wrap {
        grid-template-columns: repeat(4, 1fr);
        gap: 20px;
    }
}

/* セクション12
----------------------------------*/
.section12 {
    margin-bottom: 40px;
}
.section12 .table-wrap table {
    width: 100%;
    margin: 0 auto 20px;
}
.section12 .link-wrap {
    text-align: center;
    margin-bottom: 20px;
}
.section12 .link-wrap a {
    color: #19BDE1;
    text-decoration: underline;
}
@media screen and (min-width: 768px) {
    .section12 .table-wrap table {
        width: 80%;
    }
}

/* セクション13
----------------------------------*/
.section13 {
    margin-bottom: 40px;
}
.section13 .card-wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 20px;
}
.section13 .card {
    border-radius: 8px;
    padding: 20px;
}
.section13 .card-good {
    border: 2px solid #5c9f80;
    background-color: #F8FDF5;
}
.section13 .card-bad {
    border: 2px solid #4a90e2;
    background-color: #F4F9FD;
}
.section13 .card-bad h3.custom-h3 {
    color: #1963CC !important;
}
.section13 .card ul {
    margin: 0;
}
.section13 .card li {
    list-style: none !important;
    margin: 0 0 10px 0 !important;
    display: flex;
    align-items: flex-start;
}
.section13 .icon-good {
    color: #30a64a;
    font-weight: bold;
    margin-right: 10px;
}
.section13 .icon-bad {
    color: #4a90e2;
    font-weight: bold;
    margin-right: 10px;
}
@media screen and (min-width: 768px) {
    .section13 .card-wrap {
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
    }
    .section13 .card {
        width: 48%;
    }
}

/* セクション14
----------------------------------*/
.section14 {
    margin-bottom: 40px;
}
.section14 .qa-wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.section14 .qa-item dt {
    font-weight: bold;
    color: #117E88;
    margin-bottom: 10px;
    display: flex;
}
.section14 .qa-item dt span {
    margin-right: 10px;
}
.section14 .qa-item dd {
    display: flex;
    margin-bottom: 0;
    margin-left: 2em;
}
.section14 .qa-item dd span {
    margin-right: 10px;
    font-weight: bold;
}
@media screen and (min-width: 768px) {
    .section14 .qa-wrap {
        padding: 0 20px;
    }
}

/* セクション15
----------------------------------*/
.section15 {
    margin-bottom: 40px;
}
.section15 .contact-banner {
    background-color: #f2f2f2;
    border: 1px solid #e2e2e2;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}
.section15 .contact-info {
    display: flex;
    align-items: center;
    gap: 15px;
    width: 100%;
}
.section15 .contact-icon img {
    width: 60px;
    height: auto;
}
.section15 .contact-btn {
    display: inline-block;
    background-color: #117E88;
    color: #fff;
    padding: 15px 30px;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
    transition: opacity 0.3s;
}
.section15 .contact-btn:hover {
    opacity: 0.8;
}
@media screen and (min-width: 768px) {
    .section15 .contact-banner {
        flex-direction: row;
        justify-content: space-between;
    }
    .section15 .contact-info {
        width: auto;
    }
    .section15 .contact-btn-wrap {
        width: 350px;
    }
}