/* スマートフォン用のスタイル記述 */
@media screen and (max-width : 900px) {

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

    /*#container*/
    #outline {
        width: 100%;
    }


    /*～以下、画面の横幅が750pxまでの場合のスタイル記入～*/

    * {
        margin: 0;
        padding: 0;
    }

    h2 {
        font-size: 2.5rem;
        margin-top: 2rem;
    }

    h3 {
        font-size: 1.9rem;
        margin-top: 1.5em
    }
	h5 {
  font-size: 1.5rem;
	border-bottom: solid 3px #cce4ff;
  position: relative;
}

h5:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #5472cd;
  bottom: -3px;
  width: 20%;
}

    h6 {
        padding: 0.3em 1em;
        /*文字の上下 左右の余白*/
        color: #494949;
        /*文字色*/
        background: #f4f4f4;
        /*背景色*/
        border-left: solid 5px #7db4e6;
        /*左線*/
        border-bottom: solid 3px #d7d7d7;
        /*下線*/
        font-size: 1.5em;
        margin: 1em auto;
    }

    h7 {
        background: linear-gradient(transparent 70%, #a7d6ff 70%);
        font-size: 1.5em;
    }

    p.msg {
        font-size: 1.5rem;
        width: 82%;
    }

    p,
    th,
    td,
    input {
        font-size: 1.3rem;
    }

    dt,
    dd {
        font-size: 1.4rem;
    }

    .inner {
        width: 100%;
        margin: auto;
    }

	.btnA {
  width: 70%;
  
}
    .btnB {
        font-size: 1.5rem;
    }

    section {
        margin-top: 5rem auto;
    }

    .first_section {
        margin-top: 0
            /*5rem*/
            !important;
    }

    .second_section,
    .type2 {
        margin: auto !important;
    }

    .type2 dl {
        width: 100%;
        margin: 0 0 2em 0;
        /*←横向き対応に変更*/
        /*width:120%;margin:0 -10% 2em -10%;*/
        float: none !important;
        clear: both;
    }

    .type2 dt {
        width: 100%;
        float: none !important;
        padding: 0;
    }

    .type2 dt img {
        width: 100%;
    }

    .type2 dd.title {
        border-bottom: 1px solid #000;
        float: left;
        width: 100%;
        float: none !important;
        padding: 0;
    }

    /*header*/
    header {
        width: 100%;
        border: none;
        background: #2A3C59;
    }

    header .inner {
        height: 70px;
        border-top: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
        padding-top: 0;
    }

    header h1 {
        width: 100%;
        float: none;
        /*height:auto;*/
    }

    header h1 a {
        /*height:70px;*/
    }

    h1 img {
        height: 50px;
        top: 20px;
        left: 0.5em;
        z-index: 999999;
        position: fixed;
    }

    nav ul {
        display: none;
        flex-wrap: wrap;
    }

    nav2 ul {
        flex-wrap: wrap;
        padding: 0.5em;
        position: relative;
        display: none;
    }


    header nav ul li {
        border: 1px solid #ccc;
        width: 50%;
        height: 3em;
        box-sizing: border-box;
        text-align: center;
        background: rgb(207, 169, 114);
        background: linear-gradient(0deg, rgb(246, 226, 198) 0%, rgb(255, 255, 255) 100%);
    }

    header nav ul li:hover {
        background: #cbbda9;
    }

    header nav ul li:nth-child(even) {}

    header nav ul li a {
        color: #666;
    }

    section {
        margin: 5rem auto;
    }

    /*スマホ用スライドショーを表示してPC用スライドショー非表示*/
    #slide {
        display: none !important;
    }

    #slide_sp {
        width: 100vw;
        height: 166vw;
        /*←スライドショー画像が100:49の場合*/
        margin: 0;
        position: relative;
        z-index: 9;
        display: block !important;
    }

    #slide_sp img {
        width: 100vw;
        height: 166vw;
        /*←スライドショー画像が100:49の場合*/
        margin: 0;
        position: absolute;
        left: 0;
        top: 0;
    }

    /*pcとスマホで画像切り替え*/
    .sp_img {
        display: block !important;
    }

    .pc_img {
        display: none !important;
    }

    .kirikae {
        height: 500px;
    }

    /*main*/
    main {
        width: 100%;
        /*padding:0 4em;*/
        margin: auto;
    }

    #slide {
        width: 100%;
        height: auto;
    }

    #slide img {
        margin: 70px 0 0 0;
    }

    .col3 {
        display: block;
    }

    .col3 dl {
        width: 100%;
        margin: 2em 0;
    }

    .col3 .list {
        width: 100%;
        margin: 2em 0;
    }

    .col3a {
        display: block;
        margin-top: 0em
    }

    .col3a dl {
        width: 100%;
        margin: 2em 0;
    }

    .col3a .list {
        width: 100%;
        margin: 2em 0;
    }

    .col3b {
        width: 100%;
        margin: 0;
        /*←横向き対応に変更*/
        /*width:120%;margin:0 -10%;*/
    }

    .col3b dl {
        width: 48%;
        margin: 0em 1%;
        padding: 0.5em
    }

    /*2021.10.26追加*/
    .col3b .list {
        width: 50%;
        margin: 1em 0 1em 0;
        /*margin:0 0.25%;*/
        /*padding:1em;*/
    }

    .col3b .list:nth-child(odd) {
        margin: 1em 2% 1em 0;
    }


    #example .col3 {
        display: flex;
    }

    #example .col3 dl {
        width: 49%;
        margin: 1em 0 1em 0;
    }

    #example .col3 dl:nth-child(odd) {
        margin: 1em 2% 1em 0;
    }

    .col2 {
        display: block;
    }

    .col2 .list,
    .col2b .list {
        width: 100%;
        margin: 0 0 1em 0;
    }

    .col2b {
        width: 100%;
        margin: 0;
        /*←横向き対応に変更*/
        /*width:120%;margin:0 -10%;*/
    }

    .col2c .list {
        width: 100%;
    }

    .col2c {
        width: 100%;
        margin: 0;
        /*←横向き対応に変更*/
        /*width:120%;margin:0 -10%;*/
    }

    .col2d .list {
        width: 100%;
    }

    .col2d {
        width: 100%;
        margin: 0;
        /*←横向き対応に変更*/
        /*width:120%;margin:0 -10%;*/
    }

    .col2e {
        width: 100%;
        margin: 0;
        /*←横向き対応に変更*/
        /*width:120%;margin:0 -10%;*/
    }

    .col2e .list {
        width: 49%;
        margin: 0;
        padding: 1em 0;
    }

    .col2e .list:first-child {
        margin: 0 2% 0 0;
        /*padding:1em;*/
    }

    .col2e .list {
        font-size: 0.8em;
    }
	


    .p2 {
        font-size: 1.3em;
    }

    .p2 {
        width: 100%;
    }

    .p2 {
        margin-top: 1em;
    }

    .p3 {
        font-size: 1.6em;
    }

    .p3 {
        width: 100%;
    }

    .p3 {
        margin-top: 1em;
    }

    .p_small {
        font-size: 1.1rem;

    }

    .design {
        font-size: 1.6rem;
        font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
        margin: 0 0 2em 0;
        line-height: 32px;
    }

    .design {
        width:100%;
        text-align: center
    }

    .design {
        margin-left: auto;
        margin-right: auto;
    }

    .big {
        font-size: 2.5rem;
    }
	
	.middle {
font-size: 2.2rem;

　 　}
	
	.center {
	margin-left: auto;
    margin-right: auto;
	width: 70%;
	font-size: 1rem;
	text-align: center;	
	margin-top: -2em;
}
　 
	.col2g p{
        font-size: 1.3rem;
    }
   
    .col2f p{
        font-size: 1.3rem;
    }
    .slider p {
        font-size: 1.3rem;
    }

    .col2g h4,
    .col2f h4,
    .slider h4 {
        font-size: 1.6rem;
    }

    .gabion {
        padding: 2em;
    }

    .bgimage {
        background-image: url(../img/bgimage-sp.jpg);
        background-size: cover;
    }

    .about {}

    #about table {
        float: none;
        width: 100%;
    }

    #about iframe {
        width: 100%;
    }


    h2.msg2 {
        font-family: sans-serif;
        color: #000;
        font-size: 2.3rem;
        border: none;
    }

    p.msg3 {
        width: 100%;
        margin: 2em auto;
        text-align: left;
        border-left: none;
        border-top: none;
        padding: 0;
    }

    .tel {
        width: 90%;
        margin: 1em auto;
        border-radius: 1em;
        background: #fff;
        text-align: center;
        padding: 0.5em;
        border: 2px solid #000;
    }

    .tel a {
        text-decoration: none;
        color: #000;
        font-size: 2rem;
    }

    .tel strong {
        font-size: 2.7rem;
    }

    #inquiry table {
        margin: 0;
    }

    .small {
        font-size: 1.3em;
        margin-top: 1.5em
    }
	.design2 {
  width: 82%;
  text-align: center;
 margin-top: -1em;	  
}

.design2 {
  margin-left: auto;
  margin-right: auto;

}

    /*20221208 追記*/
    nav .meanmenu-btn {
        display: inline-block;

    }

    nav .meanmenu-btn img {
        width: 300px;
    }

    /*slider用*/
    .slideshow-wrap {
        display: flex;
        align-items: center;
        overflow: hidden;
    }

    .slider {
        display: flex !important;
        flex-wrap: nowrap;
		margin-bottom: -12em;
        animation: loop-slide 50s infinite linear .1s both;
    }

    @keyframes loop-slide {
        from {
            transform: translateX(0);
        }

        to {
            transform: translateX(-100%);
        }
    }

    .slider .list {
        width: 500px;
    }

    /*矢印の設定*/

    /*戻る、次へ矢印の位置*/
    .slick-prev,
    .slick-next {
        position: absolute;
        /*絶対配置にする*/
        top: 42%;
        cursor: pointer;
        /*マウスカーソルを指マークに*/
        outline: none;
        /*クリックをしたら出てくる枠線を消す*/
        border-top: 2px solid #666;
        /*矢印の色*/
        border-right: 2px solid #666;
        /*矢印の色*/
        height: 15px;
        width: 15px;
    }

    .slick-prev {
        /*戻る矢印の位置と形状*/
        left: -1.5%;
        transform: rotate(-135deg);
    }

    .slick-next {
        /*次へ矢印の位置と形状*/
        right: -1.5%;
        transform: rotate(45deg);
    }

    /*ドットナビゲーションの設定*/

    .slick-dots {
        text-align: center;
        margin: 20px 0 0 0;
    }

    .slick-dots li {
        display: inline-block;
        margin: 0 5px;
    }

    .slick-dots button {
        color: transparent;
        outline: none;
        width: 8px;
        /*ドットボタンのサイズ*/
        height: 8px;
        /*ドットボタンのサイズ*/
        display: block;
        border-radius: 50%;
        background: #ccc;
        /*ドットボタンの色*/
    }

    .slick-dots .slick-active button {
        background: #333;
        /*ドットボタンの現在地表示の色*/
    }


    /*フッター固定*/
    #footer-fix {
        display: block;
        position: fixed;
        bottom: 0;
        text-align: center;
        background: #eee;
        padding: 0;
        font-size: 2.5rem;
    }

    #footer-fix #footer-fix-menu {
        height: 50px;
        font-size: 1.2rem;
    }

    .fortop {
        width: 50px !important;
    }

    /*footer*/
    footer {
        background: #2A3C59;
        /*←ベースカラー（濃）変更はここ*/
        padding-bottom: 50px;
    }

    footer ul li {
        padding-top: 1rem;
        text-align: left;
    }

    .footer_logo {
        text-align: left;
        width: 100%;
        display: block;
    }

    .footer_logo img {
        width: 60%;
    }

    .box_footer>div {
        width: 100%;
        padding: 0 2rem;
    }

    .box_footer,
    .footer_nav {
        margin-bottom: 1rem;
    }

    /*2ページ目用*/
    #service h3 {
        font-size: 1.6rem;
        color: #fff;
        width: 80%;
        margin: 4em auto 2em auto;
        ;
        background: #00ced1;
        text-align: center;
        padding: 0.5em;
    }

    /*画面横幅100％*/
    .fullwide {
        display: block;
        margin-right: calc(50% - 50vw);
        margin-left: calc(50% - 50vw);
    }


.col2g img.pc-view {
	display: none;
	}

.col2g img.sp-view {
	display: flex;
	text-align: left;
	}