@charset "utf-8";


@import url('https://fonts.googleapis.com/css2?family=Lobster&display=swap');



body {
	margin-left: 20px;
	margin-right: 20px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.green {
	color: #693;
	font-size: 100%;
	font-weight: bold;
}
.blue {
	color: #369;
	font-size: 24px;
	font-weight: bold;
}


.obisilver {
	background-image: url(http://www.reform-carpenters.com/wp/wp-content/uploads/2024/11/test/obisilver.png);
	background-repeat: no-repeat;
	background-attachment: scroll;
	font-weight: bold;
	
}

.obisilver700-30 {
	background-attachment: scroll;
	background-image: url(http://www.reform-carpenters.com/wp/wp-content/uploads/2024/11/obisilver700-30.png);
	background-repeat: no-repeat;
	background-attachment: scroll;
	width: 100%; /* 横幅を100% */
	height: 30px; /* 高さを30pxに指定 */
	display: flex; /* Flexboxを使用 */
	align-items: center; /* 垂直中央に配置 */
	color: black; /* 文字色 */
	font-size: 16px; /* 文字サイズ */
	line-height: 30px; /* 行間を帯の高さに合わせて調整 */
	padding: 0 20px; /* 左右に10pxのスペースを追加 */
	font-weight: bold;
}
.obisilver700-45 {
	font-weight: bold;
	background-attachment: scroll;
	background-image: url(http://www.reform-carpenters.com/wp/wp-content/uploads/2024/11/obisilver700-45.png);
	background-repeat: no-repeat;
	width: 100%; /* 横幅を100% */
    height: 45px; /* 高さを100pxに指定 */
    display: flex; /* Flexboxを使用 */
    align-items: center; /* 垂直中央に配置 */
    color: black; /* 文字色 */
    font-size: 18px; /* 文字サイズ */
    line-height: 45px; /* 行間を帯の高さに合わせて調整 */
	padding: 0 30px; /* 左右に10pxのスペースを追加 */
}



/* 下線に色をつけるスタイル */
.underline-text {
    text-decoration: underline;
    text-decoration-color: red; /* 下線の色を赤に設定 */
}

/* 背景に色をつけるスタイル */
.highlight-text {
    background-color: yellow; /* 背景色を黄色に設定 */
}

/* 下線風に背景色をつけるスタイル */
.underline-background {
    display: inline-block;
    position: relative;
}

.underline-background::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0.3em; /* 下線の太さを設定 */
    background-color: lightblue; /* 下線の色を設定 */
    z-index: -1; /* テキストの下に配置 */
    transition: background-color 0.3s; /* 色変化のアニメーション */
}

/* テキスト全体に色をつけるスタイル */
.text-color {
    color: green; /* テキスト色を緑に設定 */
}

/* 下線に色をつけるスタイル */
.underline-text {
    text-decoration: underline;
    text-decoration-color: red; /* 下線の色を赤に設定 */
}

/* 背景に色をつけるスタイル */
.highlight-text {
    background-color: yellow; /* 背景色を黄色に設定 */
}

/* 下線風に背景色をつけるスタイル */
.underline-background {
    display: inline-block;
    position: relative;
}

.underline-background::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0.3em; /* 下線の太さを設定 */
    background-color: lightblue; /* 下線の色を設定 */
    z-index: -1; /* テキストの下に配置 */
}

/* スタイリッシュな下線背景色をつけるスタイル */
.stylish-underline {
    display: inline-block;
    position: relative;
    padding-bottom: 0.2em;
}

.stylish-underline::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 100%;
    height: 0.1em; /* 下線の太さを設定 */
    background-color: lightcoral; /* 下線の色を設定 */
    transition: width 0.3s; /* アニメーション効果を追加 */
}

.stylish-underline:hover::after {
    width: 120%; /* ホバー時の下線の幅を拡大 */
}

/* カードスタイル */
.card {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
    transition: 0.3s;
    width: 300px;
    border-radius: 5px;
    margin: 20px auto;
    overflow: hidden;
}

.card img {
    width: 100%;
    border-bottom: 1px solid #ddd;
}

.card .container {
    padding: 16px;
}

.card:hover {
    box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.2);
}

/* ナビゲーションメニュー */
.navbar {
    list-style-type: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background-color: #333;
}

.navbar li {
    float: left;
}

.navbar li a {
    display: block;
    color: white;
    text-align: center;
    padding: 14px 16px;
    text-decoration: none;
}

.navbar li a:hover {
    background-color: #111;
}

/* モーダルスタイル */
.modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0, 0, 0);
    background-color: rgba(0, 0, 0, 0.4);
    padding-top: 60px;
}

.modal-content {
    background-color: #fefefe;
    margin: 5% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
    border-radius: 5px;
}

.close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}


#section1 {
    margin-left: 20px;
    margin-right: 20px;
    font-size: 16px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

#section1 img {
    display: block;  /* 画像をブロック要素として扱う */
    margin-left: auto;  /* 左右のマージンを自動に設定 */
    margin-right: auto; /* 左右のマージンを自動に設定 */
	padding: 0; !important;
}

#section1 .text-content {
    padding-left: 50px;  /* 左のパディングを15pxに設定 */
    padding-right: 50px; /* 右のパディングを15pxに設定 */
    text-align: left;    /* テキストを左揃え */
}

#section1 h2 {
    color: #39C;
}

.redsankaku {
	color: #F00;
}	
h2{
    color:#ffffff;
    font-size:35px;
    font-weight:bold;
    line-height:1.2;
    text-shadow:3px 3px 0 rgba(0,0,0,0.25);
	margin-top:5px;
    margin-bottom:5px;
}
h1 {
	color: #0CF;
	font-weight: bold;
	font-size: 35px;
}	
/* コンテナ全体のスタイル */
.container{
 width:100%;
 max-width:700px;
 margin:auto;
 padding:0 15px;
 box-sizing:border-box;
}


/* 画像を左側に配置 */
.image-container {
  flex-shrink: 0;         /* 画像が縮まないように */
  margin-right: 20px;     /* 画像とテキストの間にスペース */
}

/* 画像のサイズ調整 */
.image-container img {
  object-fit: cover;
}



/* 小さい文字のスタイル */
.smallmoji {
  font-size: 13px;
}

.smallmoji80 {
	font-size: 80%;
	
}

.moji150 {
	font-size: 150%;
	font-weight: bold;
}
	
	
	
.green-b {
  color: #096;           /* 緑色に設定 */
  font-weight: bold;     /* 太字に設定 */
  font-size: 110%;
}

.green-s-b {
	color: #399;
	font-weight: bold;
}

.green-b-s-b {
	color: #099;
	font-weight: bold;
}

.pink-b {
	font-weight: bold;
	color: #F6F;
	font-size: 110%
}

.pink-s-b {
	font-weight: bold;
	color: #F3C;
}

.black-b {
	font-weight: bold;
	color: #000;
	font-size: 110%
}

.brown-b {
	color: #900;
	font-weight: bold;
	font-size: 110%
}

.brown-s-b {
	color: #900;
	font-weight: bold;
}


.red-b {
	color: #F00;
	font-weight: bold;
	font-size: 110%
}

.red-s-b {
	color: #F00;
	font-weight: bold;
}

.red-s-s {
	color: #F00;
}

.blue-s-b {
	color: #069;
	font-weight: bold;
	
}

.blue-b {
	color: #069;
	font-weight: bold;
	font-size: 110%
}

.moji120 {
	font-weight: bold;
	font-size: 120%
}

.blue-main {
    color: #369 !important;
    font-size: 150% !important;
    font-weight: bold !important;
}
	
.orange-futoi {
	color: #F63 !important;
	font-weight: bold; !important;
	font-size: 110% !important;
}

.orange-s-b {
	color: #F63 !important;
	font-weight: bold !important;
}

.orange-s-s {
	color: #F63; !important;
	
}



.bule2 {
	color: #09C;
	font-size: 18px;
	font-weight: bold;
}
.blackfuto {
	font-weight: bold;
}

.blue-link {
	color: #00F;
}


/* コンテナ全体のスタイル */
.container2 {
  display: flex;          /* 子要素（画像とテキスト）を横並びに配置 */
  width: 650px;
  margin: 0 auto;
  padding: 10px;
  box-sizing: border-box;
  align-items: flex-start; /* 画像とテキストを上揃えに */
}

/* 画像を左側に配置 */
.image-container2 {
  flex-shrink: 0;         /* 画像が縮まないように */
  margin-right: 20px;     /* 画像とテキストの間にスペース */
}

/* 画像のサイズ調整 */
.image-container2 img {
  object-fit: cover;
}

/* 説明文のスタイル */
.description {
  font-size: 14px;
  line-height: 1.6;
  flex-grow: 1;           /* 残りのスペースをテキストが占める */
}

.image-container8 {
  display: flex !important;  /* 強制的にflexにする */
  gap: 10px !important;
  justify-content: flex-start !important;
  overflow-x: auto !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.image-container8 img {
  width: 300px !important;
  height: 228px !important;
  object-fit: cover !important;
}


.黒太 {
	font-weight: bold;
}

  table {
    border-collapse: collapse; /* 線を重ねず1本にする */
    width: 700px;
  }

  table, th, td {
    border: 1px solid #000; /* 黒の実線 */
  }

  td {
    padding: 10px;
    vertical-align: top;
  }
  .blue-light {
	color: #0CF;
	font-weight: bold;
	font-size: 36px;
}
h1 {
	color: #0CF;
	font-weight: bold;
	font-size: 36px;
}
.text-area {
  padding: 0 20px;
}
.soshiki,
.soshiki tbody,
.soshiki tr,
.soshiki td{
    border:none !important;
}

.soshiki{
    border-collapse: separate;
    border-spacing: 10px 0;
}

.soshiki td{
    vertical-align: top;
}

/* もし余白を追加したいなら別で */
.soshiki2{
    border-collapse: separate;
    border-spacing: 20px 20px;
}

.soshiki2 td{
    vertical-align: top;
    padding:20px;
}

.lightblue {
	color: #0FF;
}
.qa-section{
    max-width:700px;
    margin:0 auto;
    background:#11a4e6;
    padding:30px;
    box-sizing:border-box;
}

/* タイトル */
.qa-title{
    font-size:32px;
    font-weight:bold;
    color:#fff;
    margin-bottom:40px;
}

/* 各QAブロック */
.qa-item{
    position:relative;
    margin-bottom:40px;
    padding-left:90px;
}

/* Qアイコン */
.qa-q{
    width:65px;
    height:65px;
    background:#005fa3;
    color:#fff;
    border-radius:50%;
    text-align:center;
    line-height:65px;
    font-size:36px;
    font-weight:bold;
    position:absolute;
    left:0;
    top:0;
}

/* Aアイコン */
.qa-a{
    width:65px;
    height:65px;
    background:#ffe600;
    color:#000;
    border-radius:50%;
    text-align:center;
    line-height:65px;
    font-size:36px;
    font-weight:bold;
    position:absolute;
    left:35px;
    top:55px;
    z-index:2;
}

/* 縦ライン */
.qa-line{
    position:absolute;
    left:66px;
    top:60px;
    width:6px;
    height:100%;
    background:#ffe600;
}

/* 質問 */
.question-text{
    color:#fff;
    font-size:24px;
    font-weight:bold;
    margin-bottom:25px;
    padding-top:15px;
}

/* 回答 */
.answer-text{
    background:#fff;
    padding:20px;
    border-radius:8px;
    line-height:1.8;
    font-size:16px;
}
.reason-banner{
    max-width:700px;
    margin:0 auto;
    background:#0aa4e8;
    padding:25px 30px;
    box-sizing:border-box;
    position:relative;
    font-family: Arial, sans-serif;
}

/* 右上の小さい文字 */
.reason-sub{
    position:absolute;
    top:15px;
    right:20px;
    font-size:14px;
    color:#fff;
    font-weight:bold;
}

.reason-sub span{
    font-size:28px;
    font-style:italic;
    margin-left:5px;
}

/* メインタイトル */
.reason-title{
    color:#fff;
    font-size:35px;
    font-weight:bold;
    line-height:1.2;
    text-shadow:3px 3px 0 rgba(0,0,0,0.25);
    margin-bottom:10px;
}

/* サブ説明 */
.reason-text{
    color:#fff;
    font-size:24px;
    margin-bottom:10px;
}

/* 強調文 */
.reason-highlight{
    font-size:22px;
    font-weight:bold;
    line-height:1.3;
}

.reason-highlight .white{
    color:#fff;
    font-style:italic;
}

.reason-highlight .yellow{
    color:#ffe600;
}

.bousai-wrap{
    position:relative;
    width:700px;
    margin:0 auto;
}

.bousai-wrap img{
    width:100%;
    display:block;
}

/* 左上吹き出し */
.fukidashi-top{
    position:absolute;
    top:112px;
    left:35px;
    width:210px;
    height:50px;
    padding:20px;
    box-sizing:border-box;
    color:#858585;
    font-size:16px;
    font-weight:bold;
    line-height:1.3;
}

.fukidashi-middle{
    position:absolute;
    top:112px;
    left:245px;
    width:250px;
    height:50px;
    padding:20px;
    box-sizing:border-box;
    color:#858585;
    font-size:16px;
    font-weight:bold;
    line-height:1.3;
}

/* 下吹き出し */
.fukidashi-bottom{
    position:absolute;
    top:112px;
    left:500px;
    width:200px;
	height:50px;
    padding:20px;
    box-sizing:border-box;
    color:#858585;
    font-size:16px;
    font-weight:bold;
    line-height:1.3;
}
.fukidashi-blue{
	position:absolute;
	top:18px;
	left:217px;
	width:470px;
	height:50px;
	box-sizing:border-box;
	color:#00a0e9;
	font-size:38px;
	font-weight:bold;
	line-height:1.3;
}
.fukidashi-glay{
	position:absolute;
	top:121px;
	left:218px;
	width:470px;
	height:50px;
	box-sizing:border-box;
	color:#858585;
	font-size:30px;
	line-height:1.1;
}
.fukidashi-glay2{
	position:absolute;
	top:245px;
	left:34px;
	width:200px;
	height:50px;
	box-sizing:border-box;
	color:#231815;
	font-size:15px;
	line-height:1.2;
}
.fukidashi-glay3{
	position:absolute;
	top:245px;
	left:469px;
	width:200px;
	height:50px;
	box-sizing:border-box;
	color:#231815;
	font-size:15px;
	line-height:1.2;
}
.fukidashi-glay4{
	position:absolute;
	top:385px;
	left:34px;
	width:200px;
	height:50px;
	box-sizing:border-box;
	color:#231815;
	font-size:15px;
	line-height:1.2;
}
.fukidashi-glay5{
	position:absolute;
	top:385px;
	left:469px;
	width:200px;
	height:50px;
	box-sizing:border-box;
	color:#231815;
	font-size:15px;
	line-height:1.2;
}
.fukidashi-glay6{
	position:absolute;
	top:385px;
	left:63px;
	width:600px;
	height:50px;
	box-sizing:border-box;
	color:#231815;
	font-size:24px;
	line-height:1.2;
}
.fukidashi-glay7{
	position:absolute;
	top:580px;
	left:66px;
	width:600px;
	height:50px;
	box-sizing:border-box;
	color:#231815;
	font-size:24px;
	line-height:1.2;
}
.fukidashi-white{
	position:absolute;
	top:303px;
	left:50px;
	width:600px;
	height:50px;
	box-sizing:border-box;
	color:#ffffff;
	font-size:35px;
	font-weight:bold;
	line-height:1.2;
}
.fukidashi-white2{
	position:absolute;
	top:493px;
	left:50px;
	width:600px;
	height:50px;
	box-sizing:border-box;
	color:#ffffff;
	font-size:35px;
	font-weight:bold;
	line-height:1.2;
}
.fukidashi-blue2{
	position:absolute;
	top:52px;
	left:294px;
	width:400px;
	height:50px;
	box-sizing:border-box;
	color:#00a0e9;
	font-size:40px;
	font-weight:bold;
	line-height:1.2;
}
.yellow{
    color:#fff100;
}
.fukidashi-blue3{
	position:absolute;
	top:15px;
	left:138px;
	width:550px;
	height:50px;
	box-sizing:border-box;
	color:#00a0e9;
	font-size:22px;
	font-weight:bold;
	line-height:1.2;
}
.small-sub{
    font-size:66%;
}

/* スマホ */
@media screen and (max-width:768px){
    .qa-item{
        padding-left:75px;
    }

    .qa-q,
    .qa-a{
        width:55px;
        height:55px;
        line-height:55px;
        font-size:28px;
    }

    .question-text{
        font-size:20px;
    }
}